Demo Data from EDBT 2026 / reviewers in the wild / expert
Chun Xia
dblp:59/3463
· DBLP profile ↗
5ranked-venue papers
3as first author
0since 2021 · last 1999
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 5 · 3 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-author
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
5 papers |
Memory systems · 64% Processor architecture and microarchitecture · 15% Embedded and real-time systems · 13% | |
| Software engineering, system software, and programming languages
5 papers |
Operating systems · 57% Compilers and program optimization · 43% |
Topics — the 14 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Memory systems › memory hierarchy
cache hierarchy |
0.0 | 2 | 1999 | Comprehensive Hardware and Software Support for Operating Systems to Exploit · IEEE Trans. Computers 1999 Improving the Data Cache Performance of Multiprocessor Operating Systems · HPCA 1996 |
Processor architecture and microarchitecture › instruction fetch
instruction prefetching |
0.0 | 2 | 1999 | Comprehensive Hardware and Software Support for Operating Systems to Exploit · IEEE Trans. Computers 1999 Instruction Prefetching of Systems Codes with Layout Optimized for Reduced Cache Misses · ISCA 1996 |
Memory systems
cache |
0.0 | 2 | 1998 | Optimizing the Instruction Cache Performance of the Operating System · IEEE Trans. Computers 1998 Optimizing Instruction Cache Performance for Operating System Intensive Workloads · HPCA 1995 |
Embedded and real-time systems
code layout optimization |
0.0 | 2 | 1998 | Optimizing the Instruction Cache Performance of the Operating System · IEEE Trans. Computers 1998 Optimizing Instruction Cache Performance for Operating System Intensive Workloads · HPCA 1995 |
Memory systems › cache › CPU cache
instruction cache |
0.0 | 2 | 1998 | Optimizing the Instruction Cache Performance of the Operating System · IEEE Trans. Computers 1998 Optimizing Instruction Cache Performance for Operating System Intensive Workloads · HPCA 1995 |
Distributed systems
operating system support |
0.0 | 1 | 1999 | Comprehensive Hardware and Software Support for Operating Systems to Exploit · IEEE Trans. Computers 1999 |
Compilers and program optimization › memory optimization
cache optimization |
0.0 | 1 | 1996 | Improving the Data Cache Performance of Multiprocessor Operating Systems · HPCA 1996 |
Operating systems › multiprocessing
multiprocessor operating system |
0.0 | 1 | 1996 | Improving the Data Cache Performance of Multiprocessor Operating Systems · HPCA 1996 |
Memory systems
cache coherence |
0.0 | 1 | 1996 | Improving the Data Cache Performance of Multiprocessor Operating Systems · HPCA 1996 |
Memory systems
cache management |
0.0 | 1 | 1996 | Instruction Prefetching of Systems Codes with Layout Optimized for Reduced Cache Misses · ISCA 1996 |
Memory systems › cache coherence
coherence miss reduction |
0.0 | 1 | 1996 | Improving the Data Cache Performance of Multiprocessor Operating Systems · HPCA 1996 |
Memory systems › cache management › instruction cache management
instruction cache miss reduction |
0.0 | 1 | 1996 | Instruction Prefetching of Systems Codes with Layout Optimized for Reduced Cache Misses · ISCA 1996 |
Operating systems
operating system performance |
0.0 | 1 | 1999 | Comprehensive Hardware and Software Support for Operating Systems to Exploit · IEEE Trans. Computers 1999 |
Compilers and program optimization
code layout optimization |
0.0 | 1 | 1996 | Instruction Prefetching of Systems Codes with Layout Optimized for Reduced Cache Misses · ISCA 1996 |
Methods — techniques the papers use, named apart from their topics
simulation · 0.0code layout optimization · 0.0block operation support · 0.0locality characterization · 0.0cache interference reduction · 0.0trace-driven simulation · 0.0prefetching · 0.0data privatization · 0.0cache bypassing · 0.0DMA-like transfer · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 1999 | Comprehensive Hardware and Software Support for Operating Systems to ExploitabstractHigh-performance multiprocessor workstations are becoming increasingly popular. Since many of the workloads running on these machines are operating-system intensive, we are interested in exploring the types of support for the operating system that the memory hierarchy of these machines should provide. In this paper, we evaluate a comprehensive set of hardware and software supports that minimize the performance losses for the operating system in a sophisticated cache hierarchy. These supports, selected from recent papers, are code layout optimization, guarded sequential instruction prefetching, instruction stream buffers, support for block operations, support for coherence activity, and software data prefetching. We evaluate these supports under a simulated environment. We show that they have a largely complementary impact and that, when combined, speed up the operating system by an average of 40 percent. Finally, a cost-performance comparison of these schemes suggests that the most cost-effective ones are code layout optimization and block operation support, while the least cost-effective one is software data prefetching. Chun Xia, Josep Torrellas |
IEEE Trans. Computers | 1 |
| 1998 | Optimizing the Instruction Cache Performance of the Operating SystemabstractHigh instruction cache hit rates are key to high performance. One known technique to improve the hit rate of caches is to minimize cache interference by improving the layout of the basic blocks of the code. However, the performance impact of this technique has been reported for application code only, even though there is evidence that the operating system often uses the cache heavily and with less uniform patterns than applications. It is unknown how well existing optimizations perform for systems code acid whether better optimizations can be found. We address this problem in this paper. This paper characterizes, in detail, the locality patterns of the operating system code and shows that there is substantial locality Unfortunately, caches are not able to extract much of it: Rarely-executed special-case code disrupts spatial locality loops with few iterations that call routines make loop locality hard to exploit, and plenty of loop-less code hampers temporal locality. Based on our observations, we propose an algorithm to expose these localities and reduce interference in the cache. For a range of cache sizes, associativities, lines sizes, and organizations, we show that we reduce total instruction miss rates by 31-86 percent, or up to 2.9 absolute points. Using a simple model, this corresponds to execution time reductions of the order of 10-25 percent. In addition, our optimized operating system combines well with optimized and unoptimized applications. Josep Torrellas, Chun Xia, Russell L. Daigle |
IEEE Trans. Computers | 2 |
| 1996 | Improving the Data Cache Performance of Multiprocessor Operating SystemsabstractBus-based shared-memory multiprocessors with coherent caches have recently become very popular. To achieve high performance, these systems rely on increasingly sophisticated cache hierarchies. However, while these machines often run loads with substantial operating system activity, performance measurements have consistently indicated that the operating system uses the data cache hierarchy poorly. In this paper, we address the issue of how to eliminate most of the data cache misses in a multiprocessor operating system while still using off-the-shelf processors. We use a performance monitor to examine traces of a 4-processor machine running four system-intensive loads under UNIX. Based on our observations, we propose hardware and software support that targets block operations, coherence activity, and cache conflicts. For block operations, simple cache bypassing or prefetching schemes are undesirable. Instead, it is best to use a DMA-like scheme that pipelines the data transfer in the bus without involving the processor. Coherence misses are handled with data, privatization and relocation, and the use of updates for a small core of shared variables. Finally, the remaining miss hot spots are handled with data prefetching. Overall, our simulations show that all these optimizations combined eliminate or hide 75% of the operating system data misses in 32-Kbyte primary caches. Furthermore, they speed up the operating system by 19%. Chun Xia, Josep Torrellas |
HPCA | 1 |
| 1996 | Instruction Prefetching of Systems Codes with Layout Optimized for Reduced Cache MissesabstractHigh-performing on-chip instruction caches are crucial to keep fast processors busy. Unfortunately, while on-chip caches are usually successful at intercepting instruction fetches in loop-intensive engineering codes, they are less able to do so in large systems codes. To improve the performance of the latter codes, the compiler can be used to lay out the code in memory for reduced cache conflicts. Interestingly, such an operation leaves the code in a state that can be exploited by a new type of instruction prefetching: guarded sequential prefetching.The idea is that the compiler leaves hints in the code as to how the code was laid out. Then, at run time, the prefetching hardware detects these hints and uses them to prefetch more effectively. This scheme can be implemented very cheaply: one bit encoded in control transfer instructions and a prefetch module that requires minor extensions to existing next-line sequential prefetchers. Furthermore, the scheme can be turned off and on at run time with the toggling of a bit in the TLB. The scheme is evaluated with simulations using complete traces from a 4-processor machine. Overall, for 16-Kbyte primary instruction caches, guarded sequential prefetching removes, on average, 66% of the instruction misses remaining in an operating system with an optimized layout, speeding up the operating system by 10%. Moreover, the scheme is more cost-effective and robust than existing sequential prefetching techniques. Chun Xia, Josep Torrellas |
ISCA | 1 |
| 1995 | Optimizing Instruction Cache Performance for Operating System Intensive WorkloadsabstractHigh instruction cache hit rates are key to high performance. One known technique to improve the hit rate of caches is to use an optimizing compiler to minimize cache interference via an improved layout of the code. This technique, however, has been applied to application code only, even though there is evidence that the operating system often uses the cache heavily and with less uniform patterns than applications. Therefore, it is unknown how well existing optimizations perform for systems code and whether better optimizations can be found. We address this problem in this paper. This paper characterizes in detail the locality patterns of the operating system code and shows that there is substantial locality. Unfortunately, caches are not able to extract much of it: rarely-executed special-case code disrupts spatial locality, loops with few iterations that call routines make loop locality hard to exploit, and plenty of loop-less code hampers temporal locality. As a result, interference within popular execution paths dominates instruction cache misses. Based on our observations, we propose an algorithm to expose these localities and reduce interference. For a range of cache sizes, associativities, lines sizes, and other organizations we show that we reduce total instruction miss rates by 31-86% (up to 2.9 absolute points). Using a simple model this corresponds to execution time reductions in the order of 12-26%. In addition, our optimized operating system combines well with optimized or unoptimized applications.> Josep Torrellas, Chun Xia, Russell L. Daigle |
HPCA | 2 |