Demo Data from EDBT 2026 / reviewers in the wild / expert
Bruce L. Jacob
dblp:94/4067
· DBLP profile ↗
37ranked-venue papers
7as first author
2since 2021 · last 2021
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 36 · 7 first-author · 2 since 2021Software engineering, systems software and programming languages · 8 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 2
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Computer architecture, parallel and distributed computing, and storage systems
21 papers |
Memory systems · 61% Storage systems · 13% Cloud and datacenter computing · 7% | |
| Network and information security
1 paper |
Hardware security and side channels · 100% |
Topics — the 30 heaviest of 67, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Memory systems › memory hierarchy › cache hierarchy
last-level cache |
0.7 | 3 | 2021 | Monolithically Integrating Non-Volatile Main Memory over the Last-Level Cache · ACM Trans. Archit. Code Optim. 2021 Technology comparison for large last-level caches (L3Cs): Low-leakage SRAM, low write-energy STT-RAM, and refresh-optimized eDRAM · HPCA 2013 Last level cache (LLC) performance of data mining workloads on a CMP - a case study of parallel bioinformatics workloads · HPCA 2006 |
Memory systems
DRAM |
0.7 | 5 | 2016 | DRAM Refresh Mechanisms, Penalties, and Trade-Offs · IEEE Trans. Computers 2016 Flexible auto-refresh: enabling scalable and energy-efficient DRAM refresh reductions · ISCA 2015 Buffer-on-board memory systems · ISCA 2012 |
Memory systems
cache |
0.6 | 3 | 2021 | Monolithically Integrating Non-Volatile Main Memory over the Last-Level Cache · ACM Trans. Archit. Code Optim. 2021 Last level cache (LLC) performance of data mining workloads on a CMP - a case study of parallel bioinformatics workloads · HPCA 2006 Using Virtual Load/Store Queues (VLSQs) to Reduce the Negative Effects of Reordered Memory Instructions · HPCA 2005 |
Hardware security and side channels
trusted execution environments |
0.5 | 1 | 2021 | IceClave: A Trusted Execution Environment for In-Storage Computing · MICRO 2021 |
Storage systems › computational storage
in-storage computing |
0.5 | 1 | 2021 | IceClave: A Trusted Execution Environment for In-Storage Computing · MICRO 2021 |
Integrated circuit design
monolithic integration |
0.5 | 1 | 2021 | Monolithically Integrating Non-Volatile Main Memory over the Last-Level Cache · ACM Trans. Archit. Code Optim. 2021 |
Memory systems › non-volatile memory
non-volatile main memory |
0.5 | 1 | 2021 | Monolithically Integrating Non-Volatile Main Memory over the Last-Level Cache · ACM Trans. Archit. Code Optim. 2021 |
Memory systems
non-volatile memory |
0.5 | 1 | 2021 | Monolithically Integrating Non-Volatile Main Memory over the Last-Level Cache · ACM Trans. Archit. Code Optim. 2021 |
Cloud and datacenter computing › cloud security
trusted execution environment |
0.5 | 1 | 2021 | IceClave: A Trusted Execution Environment for In-Storage Computing · MICRO 2021 |
Memory systems › DRAM
DRAM refresh |
0.2 | 1 | 2015 | Flexible auto-refresh: enabling scalable and energy-efficient DRAM refresh reductions · ISCA 2015 |
Memory systems › DRAM › DRAM architecture
embedded DRAM |
0.2 | 1 | 2013 | Technology comparison for large last-level caches (L3Cs): Low-leakage SRAM, low write-energy STT-RAM, and refresh-optimized eDRAM · HPCA 2013 |
Memory systems › DRAM › DRAM refresh
refresh energy reduction |
0.2 | 1 | 2013 | Technology comparison for large last-level caches (L3Cs): Low-leakage SRAM, low write-energy STT-RAM, and refresh-optimized eDRAM · HPCA 2013 |
Memory systems
processing-in-memory |
0.1 | 1 | 2021 | Monolithically Integrating Non-Volatile Main Memory over the Last-Level Cache · ACM Trans. Archit. Code Optim. 2021 |
Storage systems › flash and SSD
solid-state drive |
0.1 | 1 | 2021 | IceClave: A Trusted Execution Environment for In-Storage Computing · MICRO 2021 |
Memory systems
memory architecture |
0.1 | 1 | 2012 | Buffer-on-board memory systems · ISCA 2012 |
Memory systems › memory management
virtual memory |
0.1 | 4 | 2006 | In-Line Interrupt Handling and Lock-Up Free Translation Lookaside Buffers (TLBs) · IEEE Trans. Computers 2006 Uniprocessor Virtual Memory without TLBs · IEEE Trans. Computers 2001 A Look at Several Memory Management Units, TLB-Refill Mechanisms, and Page Table Organizations · ASPLOS 1998 |
Storage systems
flash and SSD |
0.1 | 1 | 2009 | The performance of PC solid-state disks (SSDs) as a function of bandwidth, concurrency, device architecture, and system organization · ISCA 2009 |
Storage systems › flash and SSD
SSD architecture |
0.1 | 1 | 2009 | The performance of PC solid-state disks (SSDs) as a function of bandwidth, concurrency, device architecture, and system organization · ISCA 2009 |
Storage systems › flash and SSD › SSD performance
SSD performance characterization |
0.1 | 1 | 2009 | The performance of PC solid-state disks (SSDs) as a function of bandwidth, concurrency, device architecture, and system organization · ISCA 2009 |
Energy-efficient computing › power management › memory power management
DRAM power reduction |
0.1 | 1 | 2016 | DRAM Refresh Mechanisms, Penalties, and Trade-Offs · IEEE Trans. Computers 2016 |
Energy-efficient computing
power management |
0.1 | 1 | 2016 | DRAM Refresh Mechanisms, Penalties, and Trade-Offs · IEEE Trans. Computers 2016 |
Memory systems › DRAM
DRAM power management |
0.1 | 1 | 2015 | Flexible auto-refresh: enabling scalable and energy-efficient DRAM refresh reductions · ISCA 2015 |
Memory systems › cache management
cache sharing |
0.1 | 1 | 2006 | Last level cache (LLC) performance of data mining workloads on a CMP - a case study of parallel bioinformatics workloads · HPCA 2006 |
Processor architecture and microarchitecture › out-of-order execution
out-of-order processor |
0.1 | 1 | 2006 | In-Line Interrupt Handling and Lock-Up Free Translation Lookaside Buffers (TLBs) · IEEE Trans. Computers 2006 |
Processor architecture and microarchitecture › exception handling
precise interrupts |
0.1 | 1 | 2006 | In-Line Interrupt Handling and Lock-Up Free Translation Lookaside Buffers (TLBs) · IEEE Trans. Computers 2006 |
Memory systems › memory management › virtual memory › address translation
TLB |
0.1 | 1 | 2006 | In-Line Interrupt Handling and Lock-Up Free Translation Lookaside Buffers (TLBs) · IEEE Trans. Computers 2006 |
Memory systems › DRAM
DRAM architecture |
0.1 | 2 | 2001 | Concurrency, latency, or system overhead: which has the largest impact on uniprocessor DRAM-system performance? · ISCA 2001 A Performance Comparison of Contemporary DRAM Architectures · ISCA 1999 |
Processor architecture and microarchitecture
load/store queue |
0.1 | 1 | 2005 | Using Virtual Load/Store Queues (VLSQs) to Reduce the Negative Effects of Reordered Memory Instructions · HPCA 2005 |
Processor architecture and microarchitecture
out-of-order execution |
0.1 | 1 | 2005 | Using Virtual Load/Store Queues (VLSQs) to Reduce the Negative Effects of Reordered Memory Instructions · HPCA 2005 |
Processor architecture and microarchitecture
instruction set architecture |
0.1 | 2 | 2004 | Extended Split-Issue: Enabling Flexibility in the Hardware Implementation of NUAL VLIW DSPs · ISCA 2004 Software-Managed Address Translation · HPCA 1997 |
Methods — techniques the papers use, named apart from their topics
program offloading · 1.0simulation · 0.8mechanism categorization · 0.2experimental characterization · 0.2trace-driven simulation · 0.2technology modeling · 0.2full-system simulation · 0.2hardware-verified simulation · 0.1performance modeling · 0.1comparative simulation study · 0.0software-managed translation · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | IceClave: A Trusted Execution Environment for In-Storage ComputingabstractIn-storage computing with modern solid-state drives (SSDs) enables developers to offload programs from the host to the SSD. It has been proven to be an effective approach to alleviate the I/O bottleneck. To facilitate in-storage computing, many frameworks have been proposed. However, few of them treat the in-storage security as the first citizen. Specifically, since modern SSD controllers do not have a trusted execution environment, an offloaded (malicious) program could steal, modify, and even destroy the data stored in the SSD. Luyi Kang, Yuqi Xue, Weiwei Jia 0001, Xiaohao Wang, Jongryool Kim, Changhwan Youn, Myeong Joon Kang, Hyung Jin Lim, Bruce L. Jacob, Jian Huang 0006 |
MICRO | 9 |
| 2021 | Monolithically Integrating Non-Volatile Main Memory over the Last-Level CacheabstractMany emerging non-volatile memories are compatible with CMOS logic, potentially enabling their integration into a CPU’s die. This article investigates such monolithically integrated CPU–main memory chips. We exploit non-volatile memories employing 3D crosspoint subarrays, such as resistive RAM (ReRAM), and integrate them over the CPU’s last-level cache (LLC). The regular structure of cache arrays enables co-design of the LLC and ReRAM main memory for area efficiency. We also develop a streamlined LLC/main memory interface that employs a single shared internal interconnect for both the cache and main memory arrays, and uses a unified controller to service both LLC and main memory requests. We apply our monolithic design ideas to a many-core CPU by integrating 3D ReRAM over each core’s LLC slice. We find that co-design of the LLC and ReRAM saves 27% of the total LLC–main memory area at the expense of slight increases in delay and energy. The streamlined LLC/main memory interface saves an additional 12% in area. Our simulation results show monolithic integration of CPU and main memory improves performance by 5.3× and 1.7× over HBM2 DRAM for several graph and streaming kernels, respectively. It also reduces the memory system’s energy by 6.0× and 1.7×, respectively. Moreover, we show that the area savings of co-design permits the CPU to have 23% more cores and main memory, and that streamlining the LLC/main memory interface incurs a small 4% performance penalty. Candace Walden, Devesh Singh, Meenatchi Jagasivamani, Shang Li 0001, Luyi Kang, Mehdi Asnaashari, Sylvain Dubois, Bruce L. Jacob, Donald Yeung |
ACM Trans. Archit. Code Optim. | 8 |
| 2016 | DRAM Refresh Mechanisms, Penalties, and Trade-OffsabstractEver-growing application data footprints demand faster main memory with larger capacity. DRAM has been the technology choice for main memory due to its low latency and high density. However, DRAM cells must be refreshed periodically to preserve their content. Refresh operations negatively affect performance and power. Traditionally, the performance and power overhead of refresh have been insignificant. But as the size and speed of DRAM chips continue to increase, refresh becomes a dominating factor of DRAM performance and power dissipation. In this paper, we conduct a comprehensive study of the issues related to refresh operations in modern DRAMs. Specifically, we describe the difference in refresh operations between modern synchronous DRAM and traditional asynchronous DRAM; the refresh modes and timings; and variations in data retention time. Moreover, we quantify refresh penalties versus device speed, size, and total memory capacity. We also categorize refresh mechanisms based on command granularity, and summarize refresh techniques proposed in research papers. Finally, based on our experiments and observations, we propose guidelines for mitigating DRAM refresh penalties. Ishwar Bhati, Mu-Tien Chang, Zeshan Chishti, Shih-Lien Lu, Bruce L. Jacob |
IEEE Trans. Computers | 5 |
| 2015 | Flexible auto-refresh: enabling scalable and energy-efficient DRAM refresh reductionsabstractDRAM cells require periodic refreshing to preserve data. In JEDEC DDRx devices, a refresh operation is performed via an auto-refresh command, which refreshes multiple rows in multiple banks simultaneously. The internal implementation of auto-refresh is completely opaque outside the DRAM --- all the memory controller can do is to instruct the DRAM to refresh itself --- the DRAM handles all else, in particular determining which rows in which banks are to be refreshed. This is in conflict with a large body of research on reducing the refresh overhead, in which the memory controller needs fine-grained control over which regions of the memory are refreshed. For example, prior works exploit the fact that a subset of DRAM rows can be refreshed at a slower rate than other rows due to access rate or retention period variations. However, such row-granularity approaches cannot use the standard auto-refresh command, which refreshes an entire batch of rows at once and does not permit skipping of rows. Consequently, prior schemes are forced to use explicit sequences of activate (ACT) and precharge (PRE) operations to mimic row-level refreshing. The drawback is that, compared to using JEDEC's auto-refresh mechanism, using explicit ACT and PRE commands is inefficient, both in terms of performance and power. Ishwar Bhati, Zeshan Chishti, Shih-Lien Lu, Bruce L. Jacob |
ISCA | 4 |
| 2013 | Technology comparison for large last-level caches (L3Cs): Low-leakage SRAM, low write-energy STT-RAM, and refresh-optimized eDRAMabstractLarge last-level caches (L3Cs) are frequently used to bridge the performance and power gap between processor and memory. Although traditional processors implement caches as SRAMs, technologies such as STT-RAM (MRAM), and eDRAM have been used and/or considered for the implementation of L3Cs. Each of these technologies has inherent weaknesses: SRAM is relatively low density and has high leakage current; STT-RAM has high write latency and write energy consumption; and eDRAM requires refresh operations. As future processors are expected to have larger last-level caches, the goal of this paper is to study the trade-offs associated with using each of these technologies to implement L3Cs. In order to make useful comparisons between SRAM, STTRAM, and eDRAM L3Cs, we model them in detail and apply low power techniques to each of these technologies to address their respective weaknesses. We optimize SRAM for low leakage and optimize STT-RAM for low write energy. Moreover, we classify eDRAM refresh-reduction schemes into two categories and demonstrate the effectiveness of using dead-line prediction to eliminate unnecessary refreshes. A comparison of these technologies through full-system simulation shows that the proposed refresh-reduction method makes eDRAM a viable, energy-efficient technology for implementing L3Cs. Mu-Tien Chang, Paul Rosenfeld, Shih-Lien Lu, Bruce L. Jacob |
HPCA | 4 |
| 2013 | Coordinated refresh: Energy efficient techniques for DRAM refresh schedulingabstractAs the size and speed of DRAM devices increase, the performance and energy overheads due to refresh become more significant. To reduce refresh penalty we propose techniques referred collectively as “Coordinated Refresh”, in which scheduling of low power modes and refresh commands are coordinated so that most of the required refreshes are issued when the DRAM device is in the deepest low power Self Refresh (SR) mode. Our approach saves DRAM background power because the peripheral circuitry and clocks are turned off in the SR mode. Our proposed solutions improve DRAM energy efficiency by 10% as compared to baseline, averaged across all the SPEC CPU 2006 benchmarks. Ishwar Bhati, Zeshan Chishti, Bruce L. Jacob |
ISLPED | 3 |
| 2012 | Buffer-on-board memory systemsabstractThe design and implementation of the commodity memory architecture has resulted in significant performance and capacity limitations. To circumvent these limitations, designers and vendors have begun to place intermediate logic between the CPU and DRAM. This additional logic has two functions: to control the DRAM and to communicate with the CPU over a fast and narrow bus. The benefit provided by this logic is a reduction in pin-out to the memory system and increased signal integrity to the DRAM, allowing faster clock rates while maintaining capacity. While the few vendors utilizing this design have used the same general approach, their implementations vary greatly in their non-trivial details. A hardware-verified simulation suite is developed to accurately model and evaluate the behavior of this buffer-on-board memory system. A study of this design space is used to determine optimal use of the resources involved. This includes DRAM and bus organization, queue storage, and mapping schemes. Various constraints based on implementation costs are placed on simulated configurations to confirm that these optimizations apply to viable systems. Finally, full system simulations are performed to better understand how this memory system interacts with an operating system executing an application with the goal of uncovering behaviors not present in simple limit case simulations. When applying insights gleaned from these simulations, optimal performance can be achieved while still considering outside constraints (i.e., pin-out, power, and fabrication costs). Elliott Cooper-Balis, Paul Rosenfeld, Bruce L. Jacob |
ISCA | 3 |
| 2012 | Energy-Efficient Cached DIMM ArchitectureabstractThis paper presents a cached DIMM architecture - a low-latency and energy-efficient memory system. Two techniques are proposed: the on-DIMM cache and the on-DIMM cache-aware address mapping scheme. These two techniques work together to reduce the memory access latency. Based on the benchmarks considered, our experiments show that compared to a conventional DRAM main memory, the proposed architecture reduces memory access latency by up to 30% (25% on average), reduces system execution time by up to 25% (10% on average), achieves up to 12% energy savings (5% on average), and improves the energy delay product by up to 27% (14% on average). Mu-Tien Chang, Joe Gross, Bruce L. Jacob |
MASCOTS | 3 |
| 2009 | The performance of PC solid-state disks (SSDs) as a function of bandwidth, concurrency, device architecture, and system organizationabstractAs their prices decline, their storage capacities increase, and their endurance improves, NAND Flash Solid State Disks (SSD) provide an increasingly attractive alternative to Hard Disk Drives (HDD) for portable computing systems and PCs. This paper presents a study of NAND Flash SSD architectures and their management techniques, quantifying SSD performance under user-driven/PC applications in a multi-tasked environment; user activity represents typical PC workloads and includes browsing files and folders, emailing, text editing and document creation, surfing the web, listening to music and playing movies, editing large pictures, and running office applications. Cagdas Dirik, Bruce L. Jacob |
ISCA | 2 |
| 2008 | Accurate and fast system-level power modeling: An XScale-based case studyabstractAccurate and fast system modeling is central to the rapid design space exploration needed for embedded-system design. With fast, complex SoCs playing a central role in such systems, system designers have come to require MIPS-range simulation speeds and near-cycle accuracy. The sophisticated simulation frameworks that have been developed for high-speed system performance modeling do not address power consumption, although it is a key design constraint. In this paper, we define a simulation-based methodology for extending system performance modeling frameworks to also include power modeling. We demonstrate the use of this methodology with a case study of a real, complex embedded system, comprising the Intel XScale embedded microprocessor, its WMMX SIMD co processor, L1 caches, SDRAM, and the on-board address and data buses. We describe detailed power models for each of these components and validate them against physical measurements from hardware, demonstrating that such frameworks enable designers to model both power and performance at high speeds without sacrificing accuracy. Our results indicate that the power estimates obtained are accurate within 5% of physical measurements from hardware, while simulation speeds consistently exceed a million instructions per second (MIPS). Ankush Varma, Eric Debes, Igor Kozintsev, Paul Klein, Bruce L. Jacob |
ACM Trans. Embed. Comput. Syst. | 5 |
| 2007 | Fully-Buffered DIMM Memory Architectures: Understanding Mechanisms, Overheads and ScalingabstractPerformance gains in memory have traditionally been obtained by increasing memory bus widths and speeds. The diminishing returns of such techniques have led to the proposal of an alternate architecture, the fully-buffered DIMM. This new standard replaces the conventional memory bus with a narrow, high-speed interface between the memory controller and the DIMMs. This paper examines how traditional DDRx based memory controller policies for scheduling and row buffer management perform on a fully-buffered DIMM memory architecture. The split-bus architecture used by FBDIMM systems results in an average improvement of 7% in latency and 10% in bandwidth at higher utilizations. On the other hand, at lower utilizations, the increased cost of serialization resulted in a degradation in latency and bandwidth of 25% and 10% respectively. The split-bus architecture also makes the system performance sensitive to the ratio of read and write traffic in the workload. In larger configurations, we found that the FBDIMM system performance was more sensitive to usage of the FBDIMM links than to DRAM bank availability. In general, FBDIMM performance is similar to that of DDRx systems, and provides better performance characteristics at higher utilization, making it a relatively inexpensive mechanism for scaling capacity at higher bandwidth requirements. The mechanism is also largely insensitive to scheduling policies, provided certain ground rules are obeyed Brinda Ganesh, Aamer Jaleel, David Wang 0003, Bruce L. Jacob |
HPCA | 4 |
| 2007 | Accurate and fast system-level power modeling: An XScale-based case studyabstractAccurate and fast system modeling is central to the rapid design space exploration needed for embedded-system design. With fast, complex SoCs playing a central role in such systems, system designers have come to require MIPS-range simulation speeds and near-cycle accuracy. The sophisticated simulation frameworks that have been developed for high-speed system performance modeling do not address power consumption, although it is a key design constraint. In this paper, we define a simulation-based methodology for extending system performance-modeling frameworks to also include power modeling. We demonstrate the use of this methodology with a case study of a real, complex embedded system, comprising the Intel XScale®g embedded microprocessor, its WMMX™ SIMD coprocessor, L1 caches, SDRAM and the on-board address and data buses. We describe detailed power models for each of these components and validate them against physical measurements from hardware, demonstrating that such frameworks enable designers to model both power and performance at high speeds without sacrificing accuracy. Our results indicate that the power estimates obtained are accurate within 5% of physical measurements from hardware, while simulation speeds consistently exceed a million instructions per second (MIPS). Ankush Varma, Bruce L. Jacob, Eric Debes, Igor Kozintsev, Paul Klein |
ACM Trans. Embed. Comput. Syst. | 2 |
| 2006 | Modeling heterogeneous SoCs with SystemC: a digital/MEMS case studyabstractDesigners of SoCs with non-digital components, such as analog or MEMS devices, can currently use high-level system design languages, such as SystemC, to model only the digital parts of a system. This is a significant limitation, making it difficult to perform key system design tasks -- design space exploration, hardware-software co-design and system verification -- at an early stage. This paper describes lumped analytical models of a class of complex non-digital devices -- MEMS microhotplates -- and presents techniques to integrate them into a SystemC simulation of a heterogeneous System-on-a-Chip (SoC). This approach makes the MEMS component behavior visible to a full-system simulation at higher levels, enabling realistic system design and testing. The contributions made in this work include the first SystemC models of a MEMS-based SoC, the first modeling of MEMS thermal behavior in SystemC, and a detailed case study of the application of these techniques to a real system. In addition, this work provides insights into how MEMS device-level design decisions can significantly impact system-level behavior; it also describes how full-system modeling can help detect such phenomena and help to address detected problems early in the design flow. Ankush Varma, Muhammad Yaqub Afridi, Akin Akturk, Paul Klein, Allen R. Hefner, Bruce L. Jacob |
CASES | 6 |
| 2006 | Last level cache (LLC) performance of data mining workloads on a CMP - a case study of parallel bioinformatics workloadsabstractWith the continuing growth in the amount of genetic data, members of the bioinformatics community are developing a variety of data-mining applications to understand the data and discover meaningful information. These applications are important in defining the design and performance decisions of future high performance microprocessors. This paper presents a detailed data-sharing analysis and chip-multiprocessor (CMP) cache study of several multithreaded data-mining bioinformatics workloads. For a CMP with a three-level cache hierarchy, we model the last-level of the cache hierarchy as either multiple private caches or a single cache shared amongst different cores of the CMP. Our experiments show that the bioinformatics workloads exhibit significant data-sharing - 50-95% of the data cache is shared by the different threads of the workload. Furthermore, regardless of the amount of data cache shared, for some workloads, as many as 98% of the accesses to the last-level cache are to shared data cache lines. Additionally, the amount of data-sharing exhibited by the workloads is a function of the total cache size available - the larger the data cache the better the sharing behavior. Thus, partitioning the available last-level cache silicon area into multiple private caches can cause applications to lose their inherent data-sharing behavior. For the workloads in this study, a shared 32 MB last-level cache is able to capture a tremendous amount of data-sharing and outperform a 32 MB private cache configuration by several orders of magnitude. Specifically, with shared last-level caches, the bandwidth demands beyond the last-level cache can be reduced by factors of 3-625 when compared to private last-level caches. Aamer Jaleel, Matthew Mattina, Bruce L. Jacob |
HPCA | 3 |
| 2006 | Energy/power breakdown of pipelined nanometer caches (90nm/65nm/45nm/32nm)abstractAs transistors continue to scale down into the nanometer regime, device leakage currents are becoming the dominant cause of power dissipation in nanometer caches, making it essential to model these leakage effects properly. Moreover, typical microprocessor caches are pipelined to keep up with the speed of the processor, and the effects of pipelining overhead need to be properly accounted for.In this paper, we present a detailed study of pipelined nanometer caches with detailed energy/power dissipation breakdowns showing where and how the power is dissipated within a nanometer cache. We explore a three-dimensional pipelined cache design space that includes cache size (16kB to 512kB), cache associativity (direct-mapped to 16-way) and process technology (90nm, 65nm, 45nm and 32nm).Among our findings, we show that cache bitline leakage is increasingly becoming the dominant cause of power dissipation in nanometer technology nodes. We show that subthreshold leakage is the main cause of static power dissipation, and that gate leakage is, surprisingly, not a significant contributor to total cache power, even for 32nm caches. We also show that accounting for cache pipelining overhead is necessary, as power dissipated by the pipeline elements is a significant part of cache power. Samuel Rodríguez, Bruce L. Jacob |
ISLPED | 2 |
| 2006 | In-Line Interrupt Handling and Lock-Up Free Translation Lookaside Buffers (TLBs)abstractThe effects of the general-purpose precise interrupt mechanisms in use for the past few decades have received very little attention. When modern out-of-order processors handle interrupts precisely, they typically begin by flushing the pipeline to make the CPU available to execute handler instructions. In doing so, the CPU ends up flushing many instructions that have been brought in to the reorder buffer. In particular, these instructions may have reached a very deep stage in the pipeline - representing significant work that is wasted. In addition, an overhead of several cycles and wastage of energy (per exception detected) can be expected in refetching and reexecuting the instructions flushed. This paper concentrates on improving the performance of precisely handling software managed translation look-aside buffer (TLB) interrupts, one of the most frequently occurring interrupts. The paper presents a novel method of in-lining the interrupt handler within the reorder buffer. Since the first level interrupt-handlers of TLBs are usually small, they could potentially fit in the reorder buffer along with the user-level code already there. In doing so, the instructions that would otherwise be flushed from the pipe need not be refetched and reexecuted. Additionally, it allows for instructions independent of the exceptional instruction to continue to execute in parallel with the handler code. By in-lining the TLB interrupt handler, this provides lock-up free TLBs. This paper proposes the prepend and append schemes of in-lining the interrupt handler into the available reorder buffer space. The two schemes are implemented on a performance model of the Alpha 21264 processor built by Alpha designers at the Palo Alto Design Center (PADC), California. We compare the overhead and performance impact of handling TLB interrupts by the traditional scheme, the append in-lined scheme, and the prepend in-lined scheme. For small, medium, and large memory footprints, the overhead is quantified by comparing the number and pipeline state of instructions flushed, the energy savings, and the performance improvements. We find that lock-up free TLBs reduce the overhead of refetching and reexecuting the instructions flushed by 30-95 percent, reduce the execution time by 5-25 percent, and also reduce the energy wasted by 30-90 percent. Aamer Jaleel, Bruce L. Jacob |
IEEE Trans. Computers | 2 |
| 2005 | TERPS: the embedded reliable processing systemabstractTERPS is a fault-tolerant computer design that significantly reduces the threat of electromagnetic interference (EMI), using hardware checkpoint/rollback-recovery. TERPS tolerates EMI by periodically checkpointing processor state into a special safe-storage device. The detection of EMI invokes rollback, which recovers processor state from a previously check-pointed state and resumes normal execution. Rollback results in loss of performance dictated by the EMI duration; TERPS ensures forward progress of the system provided EMI events are separated by some minimum time interval (e.g., at least 5.12μs for our prototype processor running at 100MHz). The performance overhead of our mechanism is reasonable: 5-6% overhead when check-pointing every 128 processor cycles. Samuel Rodríguez, Cagdas Dirik, Amol Gole, Bruce L. Jacob |
ASP-DAC | 6 |
| 2005 | Using Virtual Load/Store Queues (VLSQs) to Reduce the Negative Effects of Reordered Memory InstructionsabstractThe use of large instruction windows coupled with aggressive out-of-order and prefetching capabilities has provided significant improvements in processor performance. In this paper, we quantify the effects of increased out-of-order aggressiveness on a processor's memory ordering/consistency model as well as an application's cache behavior. We observe that increasing reorder buffer sizes cause less than one third of issued memory instructions to be executed in actual program order. We show that increasing the reorder buffer size from 80 to 512 entries results in an increase in the frequency of memory traps by a factor of six and an increase in total execution overhead by 10-40%. Additionally, we observe that the reordering of memory instructions increases the L1 data cache accesses by 10-60% and the L1 data cache misses by 10-20%. These findings reveal that increased out-of-order capability can waste energy in two ways. First, re-fetching and re-executing instructions flushed due to traps require the fetch, map, and execution units to dissipate energy on work that has already been done before. Second, an increase in the number of cache accesses and cache misses needlessly dissipates energy. Both these side effects can be related to the reordering of memory instructions. Thus, to avoid wasting both energy and performance, we propose a virtual load/store queue (VLSQ) within the existing physical load/store queue. The VLSQ reduces the reordering of memory instructions by limiting the number of memory instructions visible to the select and issue logic. We show that VLSQs can reduce trap overhead, cache accesses, and cache misses by as much as 45%, 50%, and 15% respectively when compared to traditional load/store queues. We observe that these reductions yield net power savings of 10-50% with degradation in performance by 1-5%. Aamer Jaleel, Bruce L. Jacob |
HPCA | 2 |
| 2005 | BioBench: A Benchmark Suite of Bioinformatics ApplicationsabstractRecent advances in bioinformatics and the significant increase in computational power available to researchers have made it possible to make better use of the vast amounts of genetic data that has been collected over the last two decades. As the uses of genetic data expand to include drug discovery and development of gene-based therapies, bioinformatics is destined to take its place in the forefront of scientific computing application domains. Despite the clear importance of this field, common bioinformatics applications and their implication on microarchitectural design have received scant attention from the computer architecture community so far. The availability of a common set of bioinformatics benchmarks could be the first step to motivate further research in this crucial area. To this end, this paper presents BioBench, a benchmark suite that represents a diverse set of bioinformatics applications. The first version of BioBench includes applications from different application domains, with a particular emphasis on mature genomics applications. The applications in the benchmark are described briefly, and basic execution characteristics obtained on a real processor are presented. Compared to SPEC INT and SPEC FP benchmarks, applications in BioBench display a higher percentage of load/store instructions, almost negligible floating-point operation content, and higher IPC than either SPEC INT or SPEC FP applications. Our evaluation suggests that bioinformatics applications have distinctly different characteristics from the applications in both of the mentioned SPEC suites; and our findings indicate that bioinformatics workloads can benefit from architectural improvements to memory bandwidth and techniques that exploit their high levels of ILP. The entire BioBench suite and accompanying reference data will be made freely available to researchers Kursad Albayraktaroglu, Aamer Jaleel, Xue Wu 0002, Manoj Franklin, Bruce L. Jacob, Chau-Wen Tseng, Donald Yeung |
ISPASS | 5 |
| 2004 | Extended Split-Issue: Enabling Flexibility in the Hardware Implementation of NUAL VLIW DSPsabstractVLIW architecture based DSPs have become widespread due to the combined benefits of simple hardware and compiler-extracted instruction-level parallelism. However, the VLIW instruction set architecture and its hardware implementation are tightly coupled, especially so for Non-Unit Assumed Latency (NUAL) VLIWs. The problem of object code compatibility across processors having different numbers of functional units or hardware latencies has been the Achilles' heel of this otherwise powerful architecture. In this paper, we propose eXtended Split-Issue (XSI), a novel mechanism that breaks the instruction packet syntax of an NUAL VLIW compiler without violating the dataflow dependences. XSI provides a designer the freedom of disassociating the hardware implementation of the NUAL VLIW processor from the instruction set architecture. Further, we investigate fairly radical (in the context of VLIW) changes to the hardware-like removing an adder, adding a multiplier, and incorporating simultaneous multithreading (SMT) - to show that our technique works for a variety of hardware configurations without compromising on performance. The technique can be used in both single-threaded and multi-threaded architectures to achieve a level of flexibility heretofore unavailable in the VLIW arena. Bharath Iyer, Sadagopan Srinivasan, Bruce L. Jacob |
ISCA | 3 |
| 2003 | A control-theoretic approach to dynamic voltage schedulingabstractThe development of energy-conscious embedded and/or mobile systems exposes a trade-off between energy consumption and system performance. Recent microprocessors have incorporated dynamic voltage scaling as a tool that system software can use to explore this trade-off. Developing appropriate heuristics to control this feature is a non-trivial venture; as has been shown in the past, voltage-scaling heuristics that closely track perceived performance requirements do not save much energy, while those that save the most energy tend to do so at the expense of performance resulting in poor response time, for example. We note that the task of dynamically scaling processor speed and voltage to meet changing performance requirements resembles a classical control-systems problem, and so we apply a bit of control theory to the task in order to define a new voltage-scaling algorithm. We find that, using our nqPID (not quite PID) algorithm, one can improve upon the current best-of-class heuristic Pering's AVGN algorithm, based on Govil's AGED AVERAGES algorithm and Weiser's PAST algorithm in both energy consumption and performance. The study is execution-based, not-trace-based; the voltage-scaling heuristics were integrated into an embedded operating system running on a Motorola M-CORE processor model. The applications studied are all members of the MediaBench benchmark suite. Ankush Varma, Brinda Ganesh, Mainak Sen, Suchismita Roy Choudhury, Lakshmi Srinivasan, Bruce L. Jacob |
CASES | 6 |
| 2003 | The Performance and Energy Consumption of Embedded Real-Time Operating SystemsabstractWe present the modelling of embedded systems with SimBed, an execution-driven simulation testbed that measures the execution behavior and power consumption of embedded applications and RTOSs by executing them on an accurate architectural model of a microcontroller with simulated real-time stimuli. We briefly describe the simulation environment and present a study that compares three RTOSs: /spl mu/C/OS-II, a popular public-domain embedded real-time operating system; Echidna, a sophisticated, industrial-strength (commercial) RTOS; and NOS, a bare-bones multirate 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. Our simulations show what happens when RTOSs are pushed beyond their limits and they depict situations in which unexpected interrupts or unaccounted-for task invocations disrupt timing, even when the CPU is lightly loaded. In general, there appears no clear winner in timing accuracy between preemptive systems and cooperative systems. The power-consumption measurements show that RTOS overhead is a factor of two to four higher than it needs to be, compared to the energy consumption of the minimal scheduler. In addition, poorly designed idle loops can cause the system to double its energy consumption-energy that could be saved by a simple hardware sleep mechanism. Kathleen Baynes, Chris Collins, Eric Fiterman, Brinda Ganesh, Paul Kohout, Christine Smit, Tiebing Zhang, Bruce L. Jacob |
IEEE Trans. Computers | 8 |
| 2003 | Introduction to the two special issues on memoryabstractintroduction Introduction to the two special issues on memory Share on Authors: Bruce Jacob View Profile , Shuvra Bhattacharyya View Profile Authors Info & Claims ACM Transactions on Embedded Computing SystemsVolume 2Issue 1February 2003 pp 1–4https://doi.org/10.1145/605459.605460Online:01 February 2003Publication History 1citation2,104DownloadsMetricsTotal Citations1Total Downloads2,104Last 12 Months4Last 6 weeks0 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Bruce L. Jacob, Shuvra S. Bhattacharyya |
ACM Trans. Embed. Comput. Syst. | 1 |
| 2002 | Introduction to the two special issues on memoryabstractintroduction Introduction to the two special issues on memory Share on Authors: Bruce Jacob View Profile , Shuvra Bhattacharyya View Profile Authors Info & Claims ACM Transactions on Embedded Computing SystemsVolume 1Issue 1November 2002 pp 2–5https://doi.org/10.1145/581888.581890Online:01 November 2002Publication History 0citation861DownloadsMetricsTotal Citations0Total Downloads861Last 12 Months7Last 6 weeks3 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Bruce L. Jacob, Shuvra S. Bhattacharyya |
ACM Trans. Embed. Comput. Syst. | 1 |
| 2001 | The performance and energy consumption of three embedded real-time operating systemsabstractThis paper presents the modeling of embedded systems with SimBed, an execution-driven simulation testbed that measures the execution behavior and power consumption of embedded applications and RTOSs by executing them on an accurate architectural model of a microcontroller with simulated real-time stimuli. We briefly describe the simulation environment and present a study that compares three RTOSs: μC/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. Kathleen Baynes, Chris Collins, Eric Fiterman, Brinda Ganesh, Paul Kohout, Christine Smit, Tiebing Zhang, Bruce L. Jacob |
CASES | 8 |
| 2001 | Transparent data-memory organizations for digital signal processorsabstractToday's digital signal processors (DSPs), unlike general-purpose processors, use a non-uniform addressing model in which the primary components of the memory system-the DRAM and dual tagless SRAMs-are referenced through completely separate segments of the address space. The recent trend of programming DSPs in high-level languages instead of assembly code has exposed this memory model as a potential weakness, as the model makes for a poor compiler target. In many of today's high-performance DSPs this non-uniform model is being replaced by a uniform model-a transparent organization like that of most general-purpose systems, in which all memory structures share the same address space as the DRAM systemIn such a memory organization, one must replace the DSP's tagless SRAMs with something resembling a general-purpose cache. This study investigates the performance of a range of traditional and slightly non-traditional cache organizations for a high-performance DSP, the Texas Instruments 'C6000 VLIW DSP. The traditional cache organizations range from a fraction of a kilobyte to several kilobytes; they approach the SRAM performance and, for some benchmarks, beat it. In the non-traditional cache organizations, rather than simply adding tags to the large on-chip SRAM structure, we take advantage of the relatively regular memory access behavior of most DSP applications and replace the tagless SRAM with a near-traditional cache that uses a very small number of wide blocks. This performs similarly to the traditional caches but uses less storage. In general, we find that one can achieve nearly the same performance as a tagless SRAM while using a much smaller footprint. Sadagopan Srinivasan, Vinodh Cuppu, Bruce L. Jacob |
CASES | 3 |
| 2001 | Improving the Precise Interrupt Mechanism of Software-Managed TLB Miss Handlers
Aamer Jaleel, Bruce L. Jacob |
HiPC | 2 |
| 2001 | In-Line Interrupt Handling for Software-Managed TLBsabstractThe general-purpose precise interrupt mechanism, which has long been used to handle exceptional conditions that occur infrequently, is now being used increasingly often to handle conditions that are neither exceptional nor infrequent. One example is the use of interrupts to perform memory management-e.g., to handle translation lookaside buffer (TLB) misses in today's microprocessors. When modern out-of-order processors handle interrupts precisely, they typically begin by flushing the pipeline. Doing so makes the CPU available to execute handler instructions, but it wastes potentially hundreds of cycles of execution time. However, if the handler code is small, it could potentially fit in the reorder buffer along with the user-level code already there. This essentially in-lines the interrupt-handler code. One good example of where this would be both possible and useful is in the TLB-miss handler in a software-managed TLB implementation. We simulate a lockup free data-TLB facility on a processor model with a 4-way out-of-order core reminiscent of the Alpha 21264. We find that, by using lockup free TLBs, one can get the performance of a fully associative TLB with a lockup free TLB of one fourth the size. Aamer Jaleel, Bruce L. Jacob |
ICCD | 2 |
| 2001 | Concurrency, latency, or system overhead: which has the largest impact on uniprocessor DRAM-system performance?abstractGiven a fixed CPU architecture and a fixed DRAM timing specification, there is still a large design space for a DRAM system organization. Parameters include the number of memory channels, the bandwidth of each channel, burst sizes, queue sizes and organizations, turnaround overhead, memory-controller page protocol, algorithms for assigning request priorities and scheduling requests dynamically, etc. In this design space, we see a wide variation in application execution times: for example, execution times for SPEC CPU 2000 integer suite on a 2-way ganged Direct Rambus organization (32 data bits) with 64-byte bursts are 10-20% lower than execution times on an otherwise identical configuration that uses 32-byte bursts. This represents two system configurations that are relatively close to each other in the design space; performance differences become even more pronounced for designs further apart. Vinodh Cuppu, Bruce L. Jacob |
ISCA | 2 |
| 2001 | High-Performance DRAMs in Workstation EnvironmentsabstractThis paper presents a simulation-based performance study of several of the new high-performance DRAM architectures, each evaluated in a small system organization. These small-system organizations correspond to workstation-class computers and use only a handful of DRAM chips (/spl sim/10, as opposed to /spl sim/1 or /spl sim/100). The study covers Fast Page Mode, Extended Data Out, Synchronous, Enhanced Synchronous, Double Data Rate, Synchronous Link, Rambus, and Direct Rambus designs. Our simulations reveal several things: 1) Current advanced DRAM technologies are attacking the memory bandwidth problem but not the latency problem; 2) bus transmission speed will soon become a primary factor limiting memory-system performance; 3) the post-L2 address stream still contains significant locality, though it varies from application to application; 4) systems without L2 caches are feasible for low- and medium-speed CPUs (1 GHz and below); and 5) as we move to wider buses, row access time becomes more prominent, making it important to investigate techniques to exploit the available locality to decrease access time. Vinodh Cuppu, Bruce L. Jacob, Trevor N. Mudge |
IEEE Trans. Computers | 2 |
| 2001 | Uniprocessor Virtual Memory without TLBsabstractWe present a feasibility study for performing virtual address translation without specialized translation hardware. Removing address translation hardware and instead managing address translation in software has the potential to make the processor design simpler, smaller, and more energy-efficient at little or no cost in performance. The purpose of this study is to describe the design and quantify its performance impact. Trace-driven simulations show that software-managed address translation is just as efficient as hardware-managed address translation. Moreover, mechanisms to support such features as shared memory, superpages, fine-grained protection, and sparse address spaces can be defined completely in software, allowing for more flexibility than in hardware-defined mechanisms. Bruce L. Jacob, Trevor N. Mudge |
IEEE Trans. Computers | 1 |
| 1999 | Fifth Annual Workshop on Computer Education
David R. Kaeli, Bruce L. Jacob |
HPCA | 2 |
| 1999 | A Performance Comparison of Contemporary DRAM ArchitecturesabstractIn response to the growing gap between memory access time and processor speed, DRAM manufacturers have created several new DRAM architectures. This paper presents a simulation-based performance study of a representative group, each evaluated in a small system organization. These small-system organizations correspond to workstation-class computers and use on the order of IO DRAM chips. The study covers Fast Page Mode, Extended Data Out, Synchronous, Enhanced Synchronous, Synchronous Link, Rambus, and Direct Rambus designs. Our simulations reveal several things: (a) current advanced DRAM technologies are attacking the memory bandwidth problem but not the latency problem; (b) bus transmission speed will soon become a primary factor limiting memory-system performance; (c) the post-12 address stream still contains significant locality, though it varies from application to application; and (d) as we move to wider buses, row access time becomes more prominent, making it important to investigate techniques to exploit the available locality to decrease access time. Vinodh Cuppu, Bruce L. Jacob, Trevor N. Mudge |
ISCA | 2 |
| 1998 | A Look at Several Memory Management Units, TLB-Refill Mechanisms, and Page Table OrganizationsabstractVirtual memory is a staple in modem systems, though there is little agreement on how its functionality is to be implemented on either the hardware or software side of the interface. The myriad of design choices and incompatible hardware mechanisms suggests potential performance problems, especially since increasing numbers of systems (even embedded systems) are using memory management. A comparative study of the implementation choices in virtual memory should therefore aid system-level designers.This paper compares several virtual memory designs, including combinations of hierarchical and inverted page tables on hardware-managed and software-managed translation lookaside buffers (TLBs). The simulations show that systems are fairly sensitive to TLB size; that interrupts already account for a large portion of memory-management overhead and can become a significant factor as processors execute more concurrent instructions; and that if one includes the cache misses inflicted on applications by the VM system, the total VM overhead is roughly twice what was thought (10--20% rather than 5--10%). Bruce L. Jacob, Trevor N. Mudge |
ASPLOS | 1 |
| 1997 | Software-Managed Address TranslationabstractIn this paper we explore software-managed address translation. The purpose of the study is to specify the memory management design for a high clock-rate PowerPC implementation in which a simple design is a prerequisite for a fast clock and a short design cycle. We show that software-managed address translation is just as efficient as hardware-managed address translation and it is much more flexible. Operating systems such as OSF/1 and Mach charge between 0.10 and 0.28 cycles per instruction (CPI) for address translation using dedicated memory-management hardware. Software-managed translation requires 0.05 CPI. Mechanisms to support such features as shared memory, superpages, sub-page protection, and sparse address spaces can be defined completely in software, allowing much more flexibility than in hardware-defined mechanisms. Bruce L. Jacob, Trevor N. Mudge |
HPCA | 1 |
| 1997 | A Comment on "An Analytical Model for Designing Memory Hierarchies"abstractIn our paper, "An analytical model for designing memory hierarchies" (see ibid., vol. 45, no. 10, p. 180-1, 194 (1996)), we made the following statement: "Failing to apply a specific model of workload locality makes it impossible to provide an easily used, closed-form solution for the optimal cache configuration, and so the results from these papers have contained dependencies on the cache configuration-the number of levels, or the sizes and hit rates of the levels." Our description did not accurately reflect the contents of the paper by J.E. MacDonald and K.L. Sigworth (1975), and we regret any false impressions caused by the inaccuracy. Bruce L. Jacob, Peter M. Chen, Seth R. Silverman, Trevor N. Mudge |
IEEE Trans. Computers | 1 |
| 1996 | An Analytical Model for Designing Memory HierarchiesabstractMemory hierarchies have long been studied by many means: system building, trace driven simulation, and mathematical analysis. Yet little help is available for the system designer wishing to quickly size the different levels in a memory hierarchy to a first order approximation. We present a simple analysis for providing this practical help and some unexpected results and intuition that come out of the analysis. By applying a specific, parameterized model of workload locality, we are able to derive a closed form solution for the optimal size of each hierarchy level. We verify the accuracy of this solution against exhaustive simulation with two case studies: a three level I/O storage hierarchy and a three level processor cache hierarchy. In all but one case, the configuration recommended by the model performs within 5% of optimal. One result of our analysis is that the first place to spend money is the cheapest (rather than the fastest) cache level, particularly with small system budgets. Another is that money spent on an n level hierarchy is spent in a fixed proportion until another level is added. Bruce L. Jacob, Peter M. Chen, Seth R. Silverman, Trevor N. Mudge |
IEEE Trans. Computers | 1 |