University of Maryland Site Index
Brought to you by The Memory-Systems Research Consortium |
Computational Artifacts
Our research group has developed and released two simulation frameworks, one of which has become very widely used (see www.ece.umd.edu/DRAMsim for our public-domain DRAM-system simulator, now used within Intel, IBM, Cray, and numerous academic research groups; our SimBed embedded-system simulator is used by other groups within Maryland). Several other tools are in development and will be made publicly available soon; for example we re-built CACTI (see our 2006 ISLPED paper for details), the most widely used SRAM-design tool in the field but in dire need of update. In addition, we developed a full-system simulator that boots Linux and performs a full performance and power characterization of the entire memory system from cache to DRAM to disk, capturing all application and operating system activity. We have built one of the fastest cache-simulation tools in the world, which measures cache activity out into the tens of billions of instructions. And we have built a simulation framework for modeling power and heat in highly integrated systems on chip.The following artifacts are described herein:
DRAMsim: A memory-system simulator
SimBed: A test-bed for embedded systems
Artifacts developed and planned for public release
vCACTI (pronounced "nu-CACTI") is an update to CACTI that provides a significant
increase in accuracy in terms of power dissipation and circuit delay.
The tool is described in Sam Rodriguez's Ph.D. thesis:
In these articles, we describe the simulation environment and present a study that
compares three RTOSs: uC/OS-II, a popular public-domain embedded real-time
operating system; Echidna, a sophisticated, industrial-strength (commercial) RTOS; and
NOS, a bare-bones multi-rate task scheduler reminiscent of typical
"roll-your-own" RTOSs found in many commercial embedded systems. The
microcontroller simulated in this study is the Motorola M-CORE processor: a low-power,
32-bit CPU core with 16-bit instructions, running at 20MHz.
SYSim is a full-system execution-based simulator that combines Bochs, Wattch, CACTI,
DRAMsim, and DiskSim. It boots the RedHat Linux 6.0 kernel, which enables us to capture
all application behavior and all operating-system behavior including I/O activity,
disk-block buffering, system-call overhead, and virtual memory overhead such as
translation, table walking, and page swapping. The tool is described in Nuengwong
Tuaycharoen's Ph.D. thesis:
This dissertation shows that both CACTI and eCACTI still contain major limitations and
even flaws in their design, making them unsuitable for use in very-deep submicron and
nanometer caches, especially pipelined designs. These limitations and flaws are discussed
in detail. This dissertation then introduces a new tool, called myCACTI, that addresses
all these limitations and, in addition, introduces major enhancements to the simulation
framework.
EmPower emulates the performance, power dissipation, and thermal behavior of full
SoCs, including heterogenerous technologies such as analog and/or MEMS components. The
accuracy is high, and the imulation peed is in the range of MIPS, which enables early
characterization of a full system.
The tool is described in Ankush Varma's papers and Ph.D. thesis:
SYSim is a full-system simulator that integrates Bochs, Wattch, DRAMsim, and DiskSim, boots Linux,
and enables complete memory hierarchy studies in both performance and power consumption domains.
With it, we investigate the system-level impacts of disk- and DRAM-system technologies
such as DRAM capacity, disk caching, disk speed, etc.
(Intel)
These tools have not been released into the public domain yet, but we intend to do just that. We expect that, in general, our computational artifacts will have more impact on the community than the rest of our work---such tends to be the nature of simulators and the like.
Interested? Talk to us.
Contact Information
Prof. Bruce Jacob - - http://www.ece.umd.edu/~blj/Traditional correspondence can be sent to
Prof. Bruce Jacob
Dept. of Electrical & Computer Engineering
University of Maryland
College Park, MD 20742