VLDB 2026 Research / reviewers in the wild / expert
Li Zhao 0002
dblp:97/4708-2
· DBLP profile ↗
32ranked-venue papers
7as first author
1since 2021 · last 2021
—ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 26 · 5 first-author · 1 since 2021Software engineering, systems software and programming languages · 5 · 1 first-authorComputer networks · 2 · 1 first-authorSecurity and privacy · 1Applied, interdisciplinary, general and emerging computing · 1
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
11 papers |
Memory systems · 36% Cloud and datacenter computing · 18% Processor architecture and microarchitecture · 16% | |
| Network and information security
1 paper |
Cyber-physical and IoT security · 50% Network security · 50% |
Topics — the 30 heaviest of 36, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Network security › intrusion detection and prevention › intrusion detection
intrusion detection system |
0.3 | 1 | 2017 | POSTER: Intrusion Detection System for In-vehicle Networks using Sensor Correlation and Integration · CCS 2017 |
Cyber-physical and IoT security
in-vehicle network security |
0.3 | 1 | 2017 | POSTER: Intrusion Detection System for In-vehicle Networks using Sensor Correlation and Integration · CCS 2017 |
Processor architecture and microarchitecture
chip multiprocessor |
0.3 | 4 | 2012 | Dynamic QoS management for chip multiprocessors · ACM Trans. Archit. Code Optim. 2012 A Framework for Providing Quality of Service in Chip Multi-Processors · MICRO 2007 Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 |
Memory systems
cache management |
0.2 | 2 | 2010 | Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 CHOP: Adaptive filter-based DRAM caching for CMP server platforms · HPCA 2010 |
Cloud and datacenter computing
quality of service |
0.2 | 2 | 2010 | Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 A Framework for Providing Quality of Service in Chip Multi-Processors · MICRO 2007 |
Processor architecture and microarchitecture › multicore design › heterogeneous multicore
asymmetric multicore |
0.1 | 1 | 2012 | QuickIA: Exploring heterogeneous architectures on real prototypes · HPCA 2012 |
Electronic design automation
design space exploration |
0.1 | 1 | 2012 | QuickIA: Exploring heterogeneous architectures on real prototypes · HPCA 2012 |
GPUs and heterogeneous computing
heterogeneous architecture |
0.1 | 1 | 2012 | QuickIA: Exploring heterogeneous architectures on real prototypes · HPCA 2012 |
Embedded and real-time systems
quality-of-service management |
0.1 | 1 | 2012 | Dynamic QoS management for chip multiprocessors · ACM Trans. Archit. Code Optim. 2012 |
Cloud and datacenter computing › resource management
shared resource management |
0.1 | 1 | 2012 | Dynamic QoS management for chip multiprocessors · ACM Trans. Archit. Code Optim. 2012 |
Hardware accelerators and domain-specific architectures › accelerator architecture
accelerator local memory |
0.1 | 1 | 2011 | Buffer-integrated-Cache: a cost-effective SRAM architecture for handheld and embedded platforms · DAC 2011 |
Memory systems
cache |
0.1 | 1 | 2011 | ACCESS: Smart scheduling for asymmetric cache CMPs · HPCA 2011 |
Parallel and multicore computing › task scheduling › memory-aware scheduling
cache-aware task scheduling |
0.1 | 1 | 2011 | ACCESS: Smart scheduling for asymmetric cache CMPs · HPCA 2011 |
Memory systems
cache design |
0.1 | 1 | 2011 | Buffer-integrated-Cache: a cost-effective SRAM architecture for handheld and embedded platforms · DAC 2011 |
Processor architecture and microarchitecture › chip multiprocessor
heterogeneous chip multiprocessor |
0.1 | 1 | 2011 | HeteroScouts: hardware assist for OS scheduling in heterogeneous CMPs · SIGMETRICS 2011 |
Electronic design automation › high-level synthesis
scheduling |
0.1 | 1 | 2011 | ACCESS: Smart scheduling for asymmetric cache CMPs · HPCA 2011 |
Memory systems › cache management
cache partitioning |
0.1 | 1 | 2010 | Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 |
Memory systems › cache
DRAM cache |
0.1 | 1 | 2010 | CHOP: Adaptive filter-based DRAM caching for CMP server platforms · HPCA 2010 |
Memory systems › cache management
shared cache management |
0.1 | 1 | 2010 | Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 |
Memory systems › memory hierarchy › cache hierarchy
3d stacked cache |
0.1 | 1 | 2009 | Optimizing communication and capacity in a 3D stacked reconfigurable cache hierarchy · HPCA 2009 |
Memory systems › memory hierarchy
cache hierarchy |
0.1 | 1 | 2009 | Optimizing communication and capacity in a 3D stacked reconfigurable cache hierarchy · HPCA 2009 |
Memory systems › cache design
reconfigurable cache |
0.1 | 1 | 2009 | Optimizing communication and capacity in a 3D stacked reconfigurable cache hierarchy · HPCA 2009 |
Cloud and datacenter computing › virtualization › virtual machine management
server consolidation |
0.1 | 3 | 2010 | Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 QoS policies and architecture for cache/memory in CMP platforms · SIGMETRICS 2007 A Framework for Providing Quality of Service in Chip Multi-Processors · MICRO 2007 |
High-performance computing › data transfer
bulk data transfer |
0.1 | 1 | 2007 | Hardware Support for Accelerating Data Movement in Server Platform · IEEE Trans. Computers 2007 |
Cloud and datacenter computing
data movement acceleration |
0.1 | 1 | 2007 | Hardware Support for Accelerating Data Movement in Server Platform · IEEE Trans. Computers 2007 |
Cloud and datacenter computing › resource allocation › resource allocation policy
resource partitioning |
0.1 | 1 | 2007 | A Framework for Providing Quality of Service in Chip Multi-Processors · MICRO 2007 |
Operating systems › resource management › process management › CPU scheduling
thread scheduling |
0.0 | 1 | 2011 | HeteroScouts: hardware assist for OS scheduling in heterogeneous CMPs · SIGMETRICS 2011 |
Memory systems › cache management
cache resource management |
0.0 | 1 | 2010 | Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 |
Cloud and datacenter computing
performance isolation |
0.0 | 1 | 2010 | Quality of service shared cache management in chip multiprocessor architecture · ACM Trans. Archit. Code Optim. 2010 |
Interconnection networks and networks-on-chip › network topology
tree networks |
0.0 | 1 | 2009 | Optimizing communication and capacity in a 3D stacked reconfigurable cache hierarchy · HPCA 2009 |
Methods — techniques the papers use, named apart from their topics
regression learning · 0.3hardware performance prediction · 0.2full-system simulation · 0.2simulation · 0.2prototyping · 0.1dynamic resource management · 0.1case study · 0.1PI feedback controller · 0.1cache performance prediction · 0.1SRAM partitioning · 0.1OS scheduler support · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | Cache Compression with Efficient in-SRAM Data ComparisonabstractWe present a novel cache compression method that leverages the fine-grained data duplication across cache lines. We leverage the XOR operation of the in-SRAM bit-line computing peripherals, to search for compressible data over a wide range of data locations on cache, reducing the data movement requirements. To reduce the decompression latency, we design specialized compression schemes by fetching the data with the same parallelism as the original cache, according to the architecture of the last-level cache slice. The proposed compression method achieves a 2.05× compression ratio on average (up to 67×), and 4.73% of speedup on average (up to 29%), over the SPEC2006 benchmarks. Xiaowei Wang 0005, Charles Augustine, Eriko Nurvitadhi, Ravi R. Iyer 0001, Li Zhao 0002, Reetuparna Das |
NAS | 5 |
| 2017 | POSTER: Intrusion Detection System for In-vehicle Networks using Sensor Correlation and IntegrationabstractThe increasing utilization of Electronic Control Units (ECUs) and wireless connectivity in modern vehicles has favored the emergence of security issues. Recently, several attacks have been demonstrated against in-vehicle networks therefore drawing significant attention. This paper presents an Intrusion Detection System (IDS) based on a regression learning approach which estimates certain parameters by using correlated/redundant data. The estimated values are compared to observed ones to identify abnormal contexts that would indicate intrusion. Experiments performed with real-world vehicular data have shown that more than 90% of vehicle speed data can be precisely estimated within the error bound of 3 kph. The proposed IDS is capable of detecting and localizing attacks in real-time, which is fundamental to achieve automotive security. Huaxin Li, Li Zhao 0002, Marcio Juliato, Manoj R. Sastry, Lily L. Yang |
CCS | 2 |
| 2014 | QoS management on heterogeneous architecture for parallel applicationsabstractQuality of service (QoS) management is widely employed to provide differentiable performance to programs with distinctive priorities on conventional chip multi-processor (CMP) platforms. Recently, heterogeneous architecture integrating diverse processor cores on the same silicon has been proposed to better serve various application domains and it is expected to be an important design paradigm of future processors. Therefore, the QoS management on emerging heterogeneous systems will be of great significance. On the other hand, parallel applications are becoming increasingly important in modern computing community in order to explore the benefit of thread-level parallelism on CMPs. However, considering the diverse characteristics of thread synchronization, data sharing, and parallelization pattern, governing the execution of multiple parallel programs with different performance requirements becomes a complicated yet significant problem. In this paper, we study QoS management for parallel applications running on heterogeneous CMP systems. We comprehensively assess a series of task-to-core mapping policies on a real heterogeneous hardware (QuickIA) by characterizing their impacts on performance of individual applications. Our evaluation results show that the proposed QoS policies are effective to improve the performance of programs with highest priority while striking good tradeoff with system fairness. Ying Zhang 0016, Li Zhao 0002, Ramesh Illikkal, Ravi R. Iyer 0001, Andrew Herdrich, Lu Peng 0001 |
ICCD | 2 |
| 2013 | EMERALD: Characterization of emerging applications and algorithms for low-power devicesabstractCompute-intensive applications are emerging in intelligent home, retail store and automotive industries. These applications are becoming more sophisticated with new features rich in audio, video, image, and machine learning capabilities that demand heavy computations. We present the EMERALD (EMERging Applications and algorithms for Low power Device) workload suite. We profile the workloads to show the hotspot functions that are candidates for hardware accelerators. Chuanjun Zhang, Glenn G. Ko, Jungwook Choi, Shang-nien Tsai, Minje Kim 0001, Abner Guzmán-Rivera, Rob A. Rutenbar, Paris Smaragdis, Mi Sun Park, Narayanan Vijaykrishnan, Hongyi Xin, Onur Mutlu, Bin Li 0018, Li Zhao 0002 |
ISPASS | 14 |
| 2013 | Reducing cache and TLB power by exploiting memory region and privilege level semantics
Zhen Fang 0002, Li Zhao 0002, Xiaowei Jiang, Shih-Lien Lu, Ravi R. Iyer 0001, Tong Li 0003 |
J. Syst. Archit. | 2 |
| 2012 | Exploiting Semantics of Virtual Memory to Improve the Efficiency of the On-Chip Memory System
Bin Li 0018, Zhen Fang 0002, Li Zhao 0002, Xiaowei Jiang, Andrew Herdrich, Ravi R. Iyer 0001, Srihari Makineni |
Euro-Par | 3 |
| 2012 | QuickIA: Exploring heterogeneous architectures on real prototypesabstractOver the last decade, homogeneous multi-core processors emerged and became the de-facto approach for offering high parallelism, high performance and scalability for a wide range of platforms. We are now at an interesting juncture where several critical factors (smaller form factor devices, power challenges, need for specialization, etc) are guiding architects to consider heterogeneous chips and platforms for the next decade and beyond. Exploring heterogeneous architectures is challenging since it involves re-evaluating architecture options, OS implications and application development. In this paper, we describe these research challenges and then introduce a heterogeneous prototype platform called QuickIA that enables rapid exploration of heterogeneous architectures employing multiple generations of Intel processors for evaluating the implications of asymmetry and FPGAs to experiment with specialized processors or accelerators. We also show example case studies using the QuickIA research prototype to highlight its value in conducting heterogeneous architecture, OS and applications research. Bhushan Chitlur, Ganapati Srinivasa, Scott Hahn, Dheeraj Reddy, David A. Koufaty, Paul Brett, Abirami Prabhakaran, Li Zhao 0002, Nelson Ijih, Suchit Subhaschandra, Sabina Grover, Xiaowei Jiang, Ravi R. Iyer 0001 |
HPCA | 9 |
| 2012 | Reducing L1 caches power by exploiting software semanticsabstractTo access a set-associative L1 cache in a high-performance processor, all ways of the selected set are searched and fetched in parallel using physical address bits. Such a cache is oblivious of memory references' software semantics such as stack-heap bifurcation of the memory space, and user-kernel ring levels. This constitutes a waste of energy since e.g., a user-mode instruction fetch will never hit a cache block that contains kernel code. Similarly, a stack access will not hit a cacheline that contains heap data. Zhen Fang 0002, Li Zhao 0002, Xiaowei Jiang, Shih-Lien Lu, Ravi R. Iyer 0001, Tong Li 0003 |
ISLPED | 2 |
| 2012 | Dynamic QoS management for chip multiprocessorsabstractWith the continuing scaling of semiconductor technologies, chip multiprocessor (CMP) has become the de facto design for modern high performance computer architectures. It is expected that more and more applications with diverse requirements will run simultaneously on the CMP platform. However, this will exert contention on shared resources such as the last level cache, network-on-chip bandwidth and off-chip memory bandwidth, thus affecting the performance and quality-of-service (QoS) significantly. In this environment, efficient resource sharing and a guarantee of a certain level of performance is highly desirable. Researchers have proposed different frameworks for providing QoS. Most of these frameworks focus on individual resource for QoS management. Coordinated management of multiple QoS-aware shared resources at runtime remains an open problem. Recently, there has been work that proposed a class-of-serviced based framework to jointly managing cache, NoC and memory resources simultaneously. However, the work allocates shared resources statically at the beginning of application runtime, and do not dynamically track, manage and share shared resources across applications. In this article, we address this limitation by proposing dynamic resource management policies that monitor the resource usage of applications at runtime, then steals resources from the high-priority applications for lower-priority ones. The goal is to maintain the targeted level of performance for high-priority applications while improving the performance of lower-priority applications. We use a PI (Proportional-Integral gain) feedback controller based technique to maintain stability in our framework. Our evaluation results show that our policy can improve performance for lower-priority applications significantly while maintaining the performance for high-priority application, thus demonstrating the effectiveness of our dynamic QoS resource management policy. Bin Li 0018, Li-Shiuan Peh, Li Zhao 0002, Ravi R. Iyer 0001 |
ACM Trans. Archit. Code Optim. | 3 |
| 2011 | Buffer-integrated-Cache: a cost-effective SRAM architecture for handheld and embedded platformsabstractIn an SoC, building local storage in each accelerator is area inefficient due to the low average utilization. In this paper, we present design and implementation of Buffer-integrated-Caching (BiC), which allows many buffers to be instantiated simultaneously in caches. BiC enables cores to view portions of the SRAM as cache while accelerators access other portions of the SRAM as private buffers. Carlos Flores Fajardo, Zhen Fang 0002, Ravi R. Iyer 0001, German Fabila Garcia, Li Zhao 0002 |
DAC | 6 |
| 2011 | ACCESS: Smart scheduling for asymmetric cache CMPsabstractIn current Chip-multiprocessors (CMPs), a significant portion of the die is consumed by the last-level cache. Until recently, the balance of cache and core space has been primarily guided by the needs of single applications. However, as multiple applications or virtual machines (VMs) are consolidated on such a platform, researchers have observed that not all VMs or applications require significant amount of cache space. In order to take advantage of this phenomenon, we explore the use of asymmetric last-level caches in a CMP platform. While asymmetric cache CMPs provide the benefit of reduced power and area, it is important to build in hardware/software support to appropriately schedule applications on to cores with suitable cache capacity. In this paper, we address this problem with our ACCESS architecture comprising of: (a) asymmetric caches across a group of cores, (b) hardware support that enables prediction of cache performance on the different sized caches and (c) OS scheduler support to make use of the prediction capability and appropriately schedule applications on to core with suitable cache capacity. Measurements on a working prototype using SPEC2006 benchmarks show that our ACCESS architecture can effectively schedule jobs in an asymmetric cache CMP and provide 23% performance improvement compared to a naive scheduler, and is 97% close to an oracle scheduler in making schedules. Xiaowei Jiang, Asit K. Mishra, Li Zhao 0002, Ravi R. Iyer 0001, Zhen Fang 0002, Sadagopan Srinivasan, Srihari Makineni, Paul Brett, Chita R. Das |
HPCA | 3 |
| 2011 | Cost-effectively offering private buffers in SoCs and CMPsabstractHigh performance SoCs and CMPs integrate multiple cores and hardware accelerators such as network interface devices and speech recognition engines. Cores make use of SRAM organized as a cache. Accelerators make use of SRAM as special-purpose storage such as FIFOs, scratchpad memory, or other forms of private buffers. Dedicated private buffers provide benefits such as deterministic access, but are highly area inefficient due to the lower average utilization of the total available storage. Zhen Fang 0002, Li Zhao 0002, Ravi R. Iyer 0001, Carlos Flores Fajardo, German Fabila Garcia, Bin Li 0018, Steve R. King, Xiaowei Jiang, Srihari Makineni |
ICS | 2 |
| 2011 | HeteroScouts: hardware assist for OS scheduling in heterogeneous CMPsabstractDesigning heterogeneous chip multiprocessors (CMPs) with a mix of big cores (complex superscalar out-of-order pipelines) and small cores (simple in-order pipeline) is emerging as an attractive option for future architectures. Such architectures have the potential to deliver both high performance and power efficiency but this requires operating systems (OS) or virtual machine monitors (VMMs) to efficiently schedule each software thread on the type of core that is best suited for it. In this paper, we highlight the need for architectural support for OS scheduling in a heterogeneous CMP. We propose HeteroScouts, a hardware mechanism to assist the OS to efficiently predict the performance of a task on different cores in the platform. Sadagopan Srinivasan, Ravi R. Iyer 0001, Li Zhao 0002, Ramesh Illikkal |
SIGMETRICS | 3 |
| 2011 | CoQoS: Coordinating QoS-aware shared resources in NoC-based SoCs
Bin Li 0018, Li Zhao 0002, Ravi R. Iyer 0001, Li-Shiuan Peh, Michael Leddige, Michael Espig, Donald Newell |
J. Parallel Distributed Comput. | 2 |
| 2010 | CHOP: Adaptive filter-based DRAM caching for CMP server platformsabstractAs manycore architectures enable a large number of cores on the die, a key challenge that emerges is the availability of memory bandwidth with conventional DRAM solutions. To address this challenge, integration of large DRAM caches that provide as much as 5× higher bandwidth and as low as 1/3rd of the latency (as compared to conventional DRAM) is very promising. However, organizing and implementing a large DRAM cache is challenging because of two primary tradeoffs: (a) DRAM caches at cache line granularity require too large an on-chip tag area that makes it undesirable and (b) DRAM caches with larger page granularity require too much bandwidth because the miss rate does not reduce enough to overcome the bandwidth increase. In this paper, we propose CHOP (Caching HOt Pages) in DRAM caches to address these challenges. We study several filter-based DRAM caching techniques: (a) a filter cache (CHOP-FC) that profiles pages and determines the hot subset of pages to allocate into the DRAM cache, (b) a memory-based filter cache (CHOP-MFC) that spills and fills filter state to improve the accuracy and reduce the size of the filter cache and (c) an adaptive DRAM caching technique (CHOP-AFC) to determine when the filter cache should be enabled and disabled for DRAM caching. We conduct detailed simulations with server workloads to show that our filter-based DRAM caching techniques achieve the following: (a) on average over 30% performance improvement over previous solutions, (b) several magnitudes lower area overhead in tag space required for cache-line based DRAM caches, (c) significantly lower memory bandwidth consumption as compared to page-granular DRAM caches. Xiaowei Jiang, Niti Madan, Li Zhao 0002, Mike Upton, Ravi R. Iyer 0001, Srihari Makineni, Donald Newell, Yan Solihin, Rajeev Balasubramonian |
HPCA | 3 |
| 2010 | Quality of service shared cache management in chip multiprocessor architectureabstractThe trends in enterprise IT toward service-oriented computing, server consolidation, and virtual computing point to a future in which workloads are becoming increasingly diverse in terms of performance, reliability, and availability requirements. It can be expected that more and more applications with diverse requirements will run on a Chip Multi-Processor (CMP) and share platform resources such as the lowest level cache and off-chip bandwidth. In this environment, it is desirable to have microarchitecture and software support that can provide a guarantee of a certain level of performance, which we refer to as performance Quality of Service . In this article, we investigated a framework would be needed to manage the shared cache resource for fully providing QoS in a CMP. We found in order to fully provide QoS, we need to specify an appropriate QoS target for each job and apply an admission control policy to accept jobs only when their QoS targets can be satisfied. We also found that providing strict QoS often leads to a significant reduction in throughput due to resource fragmentation. We proposed throughput optimization techniques that include: (1) exploiting various QoS execution modes, and (2) a microarchitecture technique, which we refer to as resource stealing, that detects and reallocates excess cache capacity from a job while preserving its QoS target. We designed and evaluated three algorithms for performing resource stealing, which differ in how aggressive they are in stealing excess cache capacity, and in the degree of confidence in meeting QoS targets. In addition, we proposed a mechanism to dynamically enable or disable resource stealing depending on whether other jobs can benefit from additional cache capacity. We evaluated our QoS framework with a full system simulation of a 4-core CMP and a recent version of the Linux Operating System. We found that compared to an unoptimized scheme, the throughput can be improved by up to 47%, making the throughput significantly closer to a non-QoS CMP. Yan Solihin, Li Zhao 0002, Ravi R. Iyer 0001 |
ACM Trans. Archit. Code Optim. | 3 |
| 2009 | Architecture Support for Improving Bulk Memory Copying and Initialization PerformanceabstractBulk memory copying and initialization is one of the most ubiquitous operations performed in current computer systems by both user applications and Operating Systems. While many current systems rely on a loop of loads and stores, there are proposals to introduce a single instruction to perform bulk memory copying. While such an instruction can improve performance due to generating fewer TLB and cache accesses, and requiring fewer pipeline resources, in this paper we show that the key to significantly improving the performance is removing pipeline and cache bottlenecks of the code that follows the instructions. We show that the bottlenecks arise due to (1) the pipeline clogged by the copying instruction, (2) lengthened critical path due to dependent instructions stalling while waiting for the copying to complete, and (3) the inability to specify (separately) the cacheability of the source and destination regions. We propose FastBCI, an architecture support that achieves the granularity efficiency of a bulk copying/ initialization instruction, but without its pipeline and cache bottlenecks. When applied to OS kernel buffer management, we show that on average FastBCI achieves anywhere between 23% to 32% speedup ratios, which is roughly 3x-4x of an alternative scheme, and 1.5x-2x of a highly optimistic DMA with zero setup and interrupt overheads. Xiaowei Jiang, Yan Solihin, Li Zhao 0002, Ravi R. Iyer 0001 |
PACT | 3 |
| 2009 | Frequent value compression in packet-based NoC architecturesabstractThe proliferation of chip multiprocessors (CMPs) has led to the integration of large on-chip caches. For scalability reasons, a large on-chip cache is often divided into smaller banks that are interconnected through packet-based network-on-chip (NoC). With increasing number of cores and cache banks integrated on a single die, the on-chip network introduces significant communication latency and power consumption. In this paper, we propose a novel scheme that exploitsfrequentvaluecompression to optimize the power and performance of NoC. Our experimental results show that the proposed scheme reduces the router power by up to 16.7%, with CPI reduction as much as 23.5% in our setting. Comparing to the recent zero pattern compression scheme, thefrequentvaluescheme saves up to 11.0% more router power and has up to 14.5% more CPI reduction. Hardware design of the FV table and its overhead are also presented. Bo Zhao 0007, Yu Du 0002, Yi Xu 0010, Youtao Zhang, Jun Yang 0002, Li Zhao 0002 |
ASP-DAC | 7 |
| 2009 | Optimizing communication and capacity in a 3D stacked reconfigurable cache hierarchyabstractCache hierarchies in future many-core processors are expected to grow in size and contribute a large fraction of overall processor power and performance. In this paper, we postulate a 3D chip design that stacks SRAM and DRAM upon processing cores and employs OS-based page coloring to minimize horizontal communication of cache data. We then propose a heterogeneous reconfigurable cache design that takes advantage of the high density of DRAM and the superior power/delay characteristics of SRAM to efficiently meet the working set demands of each individual core. Finally, we analyze the communication patterns for such a processor and show that a tree topology is an ideal fit that significantly reduces the power and latency requirements of the on-chip network. The above proposals are synergistic: each proposal is made more compelling because of its combination with the other innovations described in this paper. The proposed reconfigurable cache model improves performance by up to 19% along with 48% savings in network power. Niti Madan, Li Zhao 0002, Naveen Muralimanohar, Aniruddha N. Udipi, Rajeev Balasubramonian, Ravi R. Iyer 0001, Srihari Makineni, Donald Newell |
HPCA | 2 |
| 2009 | Hardware/Software Co-Simulation for Last Level Cache ExplorationabstractLarger last level caches are being considered for bridging the performance gap between the processors and the memory subsystem. It requires much longer simulation time to exercise the whole cache and get accurate evaluation results. In this paper, we motivate the need for a trace-driven hardware/software co-simulation approach to solve this problem. We describe the components of the hardware/software co-simulation: (a) a hardware approach for FSB (front side bus) cycle accurate long trace extraction and (b) a software simulation infrastructure to simulate arbitrary length of traces limited only by the storage system. We compare this hardware/software co-simulation approach to previous approaches (software-only and hardware FPGA-cache simulation) and articulate why our proposed approach is more flexible, more repeatable and sufficiently fast for last-level cache exploration. Evaluation results based on our hardware/software co-simulation infrastructure shows that our approach provides accurate results and shows the importance of timing information in accurate trace-driven simulations. We also demonstrate that it is not adequate to use short traces to get accurate results. Instead, the whole trace for the whole lifecycle of the workload, or at least a long trace (~5 minutes) should be used to capture the real behavior of the workloads. Tao Wang 0004, Qigang Wang, Michael Liao, Li Zhao 0002, Ravi R. Iyer 0001, Ramesh Illikkal, John Du |
NAS | 7 |
| 2009 | VM3: Measuring, modeling and managing VM shared resources
Ravi R. Iyer 0001, Ramesh Illikkal, Omesh Tickoo, Li Zhao 0002, Padma Apparao, Donald Newell |
Comput. Networks | 4 |
| 2007 | CacheScouts: Fine-Grain Monitoring of Shared Caches in CMP Platforms
Li Zhao 0002, Ravi R. Iyer 0001, Ramesh Illikkal, Jaideep Moses, Srihari Makineni, Donald Newell |
PACT | 1 |
| 2007 | Constraint-Aware Large-Scale CMP Cache Design
Li Zhao 0002, Ravi R. Iyer 0001, Srihari Makineni, Ramesh Illikkal, Jaideep Moses, Donald Newell |
HiPC | 1 |
| 2007 | Exploring DRAM cache architectures for CMP server platformsabstractAs dual-core and quad-core processors arrive in the marketplace, the momentum behind CMP architectures continues to grow strong. As more and more cores/threads are placed on-die, the pressure on the memory subsystem is rapidly increasing. To address this issue, we explore DRAM cache architectures for CMP platforms. In this paper, we investigate the impact of introducing a low latency, large capacity and high bandwidth DRAM-based cache between the last level SRAM cache and memory subsystem. We first show the potential benefits of large DRAM caches for key commercial server workloads. As the primary hurdle to achieving these benefits with DRAM caches is the tag space overheads associated with them, we identify the most efficient DRAM cache organization and investigate various options. Our results show that the combination of 8-bit partial tags and 2-way sectoring achieves the highest performance (20% to 70%) with the lowest tag space (<25%) overhead. Li Zhao 0002, Ravi R. Iyer 0001, Ramesh Illikkal, Donald Newell |
ICCD | 1 |
| 2007 | Accelerating Full-System Simulation through Characterizing and Predicting Operating System PerformanceabstractThe ongoing trend of increasing computer hardware and software complexity has resulted in the increase in complexity and overheads of cycle-accurate processor system simulation, especially in full-system simulation which not only simulates user applications, but also the operating system (OS) and system libraries. This paper seeks to address how to accelerate full-system simulation through studying, characterizing, and predicting the performance behavior of OS services. Through studying the performance behavior of OS services, we found that each OS service exhibits multiple but limited behavior points that are repeated frequently. OS services also exhibit application-specific performance behavior and largely irregular patterns of occurrences. We exploit the observation to speed up full system simulation. A simulation run is divided into two non-overlapping periods: a learning period in which performance behavior of instances of an OS service are characterized and recorded, and a prediction period in which detailed simulation is replaced with a much faster emulation mode. During a prediction period, the behavior signature of an instance of an OS service is obtained through emulation while performance of the instance is predicted based on its signature and records of the OS service's past performance behavior. Statistically-rigorous algorithms are used to determine when to switch between learning and prediction periods. We test our simulation acceleration method with a set of OS-intensive applications and a recent version of Linux OS running on top of a detailed processor and memory hierarchy model implemented on Simics, a popular full-system simulator. On average, the method needs the learning periods to cover only 11% of OS service invocations in order to produce highly accurate performance estimates. This leads to an estimated simulation speedup of 4.9times, with an average performance prediction error of only 3.2%, and a worst case error of 4.2% Seongbeom Kim, Yan Solihin, Ravi R. Iyer 0001, Li Zhao 0002, W. Cohen |
ISPASS | 5 |
| 2007 | A Framework for Providing Quality of Service in Chip Multi-ProcessorsabstractThe trends in enterprise IT toward service-oriented computing, server consolidation, and virtual computing point to a future in which workloads are becoming increasingly diverse in terms of performance, reliability, and availability requirements. It can be expected that more and more applications with diverse requirements will run on a CMP and share platform resources such as the lowest level cache and off-chip bandwidth. In this environment, it is desirable to have microarchitecture and software support that can provide a guarantee of a certain level of performance, which we refer to as performance Quality of Service. In this paper, we investigate a framework that would be needed for a CMP to fully provide QoS. We found that the ability of a CMP to partition platform resources alone is not sufficient for fully providing QoS. We also need an appropriate way to specify a QoS target, and an admission control policy that accepts jobs only when their QoS targets can be satisfied. We also found that providing strict QoS often leads to a significant reduction in throughput due to resource fragmentation. We propose novel throughput optimization techniques that include: (1) exploiting various QoS execution modes, and (2) a microarchitecture technique that steals excess resources from a job while still meeting its QoS target. We evaluated our QoS framework with a full system simulation of a 4-core CMP and a recent version of the Linux Operating System. We found that compared to an unoptimized scheme, the throughput can be improved by up to 47%, making the throughput significantly closer to a non-QoS CMP. Yan Solihin, Li Zhao 0002, Ravi R. Iyer 0001 |
MICRO | 3 |
| 2007 | QoS policies and architecture for cache/memory in CMP platformsabstractAs we enter the era of CMP platforms with multiple threads/cores on the die, the diversity of the simultaneous workloads running on them is expected to increase. The rapid deployment of virtualization as a means to consolidate workloads on to a single platform is a prime example of this trend. In such scenarios, the quality of service (QoS) that each individual workload gets from the platform can widely vary depending on the behavior of the simultaneously running workloads. While the number of cores assigned to each workload can be controlled, there is no hardware or software support in today's platforms to control allocation of platform resources such as cache space and memory bandwidth to individual workloads. In this paper, we propose a QoS-enabled memory architecture for CMP platforms that addresses this problem. The QoS-enabled memory architecture enables more cache resources (i.e. space) and memory resources (i.e. bandwidth) for high priority applications based on guidance from the operating environment. The architecture also allows dynamic resource reassignment during run-time to further optimize the performance of the high priority application with minimal degradation to low priority. To achieve these goals, we will describe the hardware/software support required in the platform as well as the operating environment (O/S and virtual machine monitor). Our evaluation framework consists of detailed platform simulation models and a QoS-enabled version of Linux. Based on evaluation experiments, we show the effectiveness of a QoS-enabled architecture and summarize key findings/trade-offs. Ravi R. Iyer 0001, Li Zhao 0002, Ramesh Illikkal, Srihari Makineni, Donald Newell, Yan Solihin, Lisa R. Hsu, Steven K. Reinhardt |
SIGMETRICS | 2 |
| 2007 | Hardware Support for Accelerating Data Movement in Server PlatformabstractData movement (memory copies) is a very common operation during network processing and application execution on servers. The performance of this operation is rather poor on today's microprocessors due to the following aspects: 1) Several long-latency memory accesses are involved because the source and/or the destination are typically in memory, 2) latency hiding techniques, such as out-of-order execution, hardware threading, and prefetching, are not very effective for bulk data movement, and 3) microprocessors move data at register (small) granularity. In this paper, we show this overhead of bulk data movement and propose the use of dedicated copy engines to minimize it. We present a detailed analysis of copy engine architectures along two dimensions: 1) on-die versus off-die and 2) synchronous versus asynchronous. These copy engine architectures are superior to traditional direct memory access (DMA) engines because they are tightly coupled to the core architecture and enable lower overhead communication and signaling. We describe the hardware support required to implement these copy engines and integrate them into server platforms. We perform a detailed case study to evaluate the performance of these copy engines. The evaluation is based on an execution-driven simulator, which was extended with detailed models of copy engines. Our simulation results show that copy engines are effective in reducing the bulk data movement overhead and, hence, hold significant promise for high-performance server platforms Li Zhao 0002, Laxmi N. Bhuyan, Ravi R. Iyer 0001, Srihari Makineni, Donald Newell |
IEEE Trans. Computers | 1 |
| 2006 | Receive Side Coalescing for Accelerating TCP/IP Processing
Srihari Makineni, Ravi R. Iyer 0001, Partha Sarangam, Donald Newell, Li Zhao 0002, Ramesh Illikkal, Jaideep Moses |
HiPC | 5 |
| 2005 | SpliceNP: a TCP splicer using a network processorabstractTCP Splicing can be used in content-aware switches to tremendously reduce overall request latency. In order to reduce the processing latency further, we propose to offload the protocol processing onto network processors (NPs). An NP consists of a multithreaded multiprocessor architecture that can provide high throughput for packet processing or forwarding. However, offloading any protocol software to an NP needs to be carefully designed due to its low-level programming and limited control memory size.In this paper, we first analyze the operation of TCP Splicing in detail and evaluate its performance through measurements on a Linux-based switch. Then various possibilities of workload allocation among different computation resources in an NP are presented, and the design tradeoffs are discussed. A content aware switch is implemented using IXP 2400 NP and evaluated for performance comparison. The measurement results demonstrate that our NP-based switch can reduce the http processing latency by an average of 83.3% for a 1K byte web page. The amount of reduction increases with larger file sizes. It is also shown that the packet throughput can be improved by up to 5.7x across a range of files by taking advantage of multithreading and multiprocessing, available in the NP. Li Zhao 0002, Yan Luo 0001, Laxmi N. Bhuyan, Ravi R. Iyer 0001 |
ANCS | 1 |
| 2005 | Hardware Support for Bulk Data Movement in Server PlatformsabstractBulk data movement occurs commonly in server work-loads and their performance is rather poor on today's microprocessors. We propose the use of small dedicated copy engines, and present a detailed analysis of a bulk data copy engine architecture. We describe the hardware support required to implement the copy engine and to tightly integrate it into server platforms. Our evaluation is based on an execution driven simulator that was extended with detailed models of bulk data movement engines. The simulation results show that dedicated engines are quite effective in eliminating the data movement overhead and are an attractive choice for handling bulk data in future high performance server platforms. Li Zhao 0002, Ravi R. Iyer 0001, Srihari Makineni, Laxmi N. Bhuyan, Donald Newell |
ICCD | 1 |
| 2005 | Anatomy and Performance of SSL ProcessingabstractA wide spectrum of e-commerce (B2B/B2C), banking, financial trading and other business applications require the exchange of data to be highly secure. The Secure Sockets Layer (SSL) protocol provides the essential ingredients of secure communications - privacy, integrity and authentication. Though it is well-understood that security always comes at the cost of performance, these costs depend on the cryptographic algorithms. In this paper, we present a detailed description of the anatomy of a secure session. We analyze the time spent on the various cryptographic operations (symmetric, asymmetric and hashing) during the session negotiation and data transfer. We then analyze the most frequently used cryptographic algorithms (RSA, AES, DES, 3DES, RC4, MD5 and SHA-1). We determine the key components of these algorithms (setting up key schedules, encryption rounds, substitutions, permutations, etc) and determine where most of the time is spent. We also provide an architectural analysis of these algorithms, show the frequently executed instructions and discuss the ISA/hardware support that may be beneficial to improving SSL performance. We believe that the performance data presented in this paper is useful to performance analysts and processor architects to help accelerate SSL performance in future processors Li Zhao 0002, Ravi R. Iyer 0001, Srihari Makineni, Laxmi N. Bhuyan |
ISPASS | 1 |