EDBT 2026 Demo / reviewers in the wild / expert
J. Bradley Chen
dblp:40/5996
· DBLP profile ↗
11ranked-venue papers
5as first author
0since 2021 · last 2009
—ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 8 · 3 first-authorSystems, architecture and hardware · 5 · 3 first-authorArtificial intelligence and machine learning · 1 · 1 first-authorSecurity and privacy · 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.
| Network and information security
1 paper |
Systems and software security · 67% Web and mobile security · 33% | |
| Computer architecture, parallel and distributed computing, and storage systems
10 papers |
Performance modeling and evaluation · 43% Memory systems · 40% Processor architecture and microarchitecture · 17% | |
| Software engineering, system software, and programming languages
6 papers |
Runtime systems and virtual machines · 56% Compilers and program optimization · 21% Operating systems · 13% |
Topics — the 24 heaviest of 29, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Web and mobile security
browser security |
0.1 | 1 | 2009 | Native Client: A Sandbox for Portable, Untrusted x86 Native Code · SP 2009 |
Systems and software security › operating system security
sandboxing |
0.1 | 1 | 2009 | Native Client: A Sandbox for Portable, Untrusted x86 Native Code · SP 2009 |
Systems and software security › isolation
software fault isolation |
0.1 | 1 | 2009 | Native Client: A Sandbox for Portable, Untrusted x86 Native Code · SP 2009 |
Runtime systems and virtual machines
binary translation |
0.1 | 1 | 2009 | Native Client: A Sandbox for Portable, Untrusted x86 Native Code · SP 2009 |
Performance modeling and evaluation
workload characterization |
0.0 | 3 | 1997 | The Measured Performance of Personal Computer Operating Systems · ACM Trans. Comput. Syst. 1996 System Support for Automated Profiling and Optimization · SOSP 1997 An Analysis of Dynamic Branch Prediction Schemes on System Workloads · ISCA 1996 |
Memory systems
cache |
0.0 | 2 | 1994 | Dynamic Page Mapping Policies for Cache Conflict Resolution on Standard Hardware · OSDI 1994 Avoiding Conflict Misses Dynamically in Large Direct-Mapped Caches · ASPLOS 1994 |
Memory systems › memory management
virtual memory |
0.0 | 2 | 1994 | Avoiding Conflict Misses Dynamically in Large Direct-Mapped Caches · ASPLOS 1994 A Simulation Based Study of TLB Performance · ISCA 1992 |
Compilers and program optimization
code layout optimization |
0.0 | 1 | 1997 | System Support for Automated Profiling and Optimization · SOSP 1997 |
Compilers and program optimization › dynamic optimization
profile-guided optimization |
0.0 | 1 | 1997 | System Support for Automated Profiling and Optimization · SOSP 1997 |
Program analysis › dynamic analysis
profiling |
0.0 | 1 | 1997 | System Support for Automated Profiling and Optimization · SOSP 1997 |
Processor architecture and microarchitecture
branch prediction |
0.0 | 1 | 1996 | An Analysis of Dynamic Branch Prediction Schemes on System Workloads · ISCA 1996 |
Processor architecture and microarchitecture › branch prediction
dynamic branch prediction |
0.0 | 1 | 1996 | An Analysis of Dynamic Branch Prediction Schemes on System Workloads · ISCA 1996 |
Performance modeling and evaluation
latency measurement |
0.0 | 1 | 1996 | Using Latency to Evaluate Interactive System Performance · OSDI 1996 |
Performance modeling and evaluation › benchmarking
microbenchmarking |
0.0 | 1 | 1996 | The Measured Performance of Personal Computer Operating Systems · ACM Trans. Comput. Syst. 1996 |
Performance modeling and evaluation › performance monitoring
operating system performance measurement |
0.0 | 1 | 1996 | The Measured Performance of Personal Computer Operating Systems · ACM Trans. Comput. Syst. 1996 |
Operating systems
operating system performance |
0.0 | 1 | 1995 | The Measured Performance of Personal Computer Operating Systems · SOSP 1995 |
Performance modeling and evaluation
benchmarking |
0.0 | 1 | 1995 | The Measured Performance of Personal Computer Operating Systems · SOSP 1995 |
Memory systems › cache › cache miss
cache conflict misses |
0.0 | 1 | 1994 | Avoiding Conflict Misses Dynamically in Large Direct-Mapped Caches · ASPLOS 1994 |
Memory systems › cache
conflict miss reduction |
0.0 | 1 | 1994 | Avoiding Conflict Misses Dynamically in Large Direct-Mapped Caches · ASPLOS 1994 |
Memory systems › virtual memory management
page mapping |
0.0 | 1 | 1994 | Dynamic Page Mapping Policies for Cache Conflict Resolution on Standard Hardware · OSDI 1994 |
Memory systems › memory management › virtual memory › address translation
TLB |
0.0 | 1 | 1992 | A Simulation Based Study of TLB Performance · ISCA 1992 |
Processor architecture and microarchitecture › multiprocessor architecture
bus-based multiprocessor |
0.0 | 1 | 1986 | NYMPH: A multiprocessor for manipulation applications · ICRA 1986 |
Operating systems › resource management › memory management
virtual memory |
0.0 | 1 | 1994 | Avoiding Conflict Misses Dynamically in Large Direct-Mapped Caches · ASPLOS 1994 |
Processor architecture and microarchitecture › instruction set architecture › RISC
RISC processor |
0.0 | 1 | 1992 | A Simulation Based Study of TLB Performance · ISCA 1992 |
Methods — techniques the papers use, named apart from their topics
software fault isolation · 0.2secure runtime · 0.2hardware performance counters · 0.1statistical profiling · 0.0profile-driven optimization · 0.0trace-driven simulation · 0.0microbenchmarks · 0.0application workloads · 0.0cache miss lookaside buffer · 0.0hardware counters · 0.0simulation · 0.0memory reference tracing · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2009 | Native Client: A Sandbox for Portable, Untrusted x86 Native CodeabstractThis paper describes the design, implementation and evaluation of Native Client, a sandbox for untrusted x86 native code. Native Client aims to give browser-based applications the computational performance of native applications without compromising safety. Native Client uses software fault isolation and a secure runtime to direct system interaction and side effects through interfaces managed by Native Client. Native Client provides operating system portability for binary code while supporting performance-oriented features generally absent from Web application programming environments, such as thread support, instruction set extensions such as SSE, and use of compiler intrinsics and hand-coded assembler. We combine these properties in an open architecture that encourages community review and 3rd-party tools. Bennet Yee, David Sehr, Gregory Dardyk, J. Bradley Chen, Robert Muth, Tavis Ormandy, Shiki Okasaka, Neha Narula, Nicholas Fullagar |
SP | 4 |
| 1997 | System Support for Automated Profiling and OptimizationabstractThe Morph system provides a framework for automatic collection and management of profile information and application of profile-driven optimizations. In this paper, we focus on the operating system support that is required to collect and manage profile information on an end-user's workstation in an automatic, continuous, and transparent manner. Our implementation for a Digital Alpha machine running Digital UNIX 4.0 achieves run-time overheads of less than 0.3% during profile collection. Through the application of three code layout optimizations, we further show that Morph can use statistical profiles to improve application performance. With appropriate system support, automatic profiling and optimization is both possible and effective. 1. Introduction Morph is a combination of operating system and compiler technology that provides a practical framework for the advanced compiler optimizations needed to support continued improvements in application performance. Morph is practical becau... Xiaolan Zhang 0001, Nicholas C. Gloy, J. Bradley Chen, Michael D. Smith 0001 |
SOSP | 4 |
| 1996 | An Analysis of Dynamic Branch Prediction Schemes on System WorkloadsabstractRecent studies of dynamic branch prediction schemes rely almost exclusively on user-only simulations to evaluate performance. We find that an evaluation of these schemes with user and kernel refer-ences often leads to different conclusions. By analyzing our own Atom-generated system traces and the system traces from the Instruction Benchmark Suite, we quantify the effects of kernel and user interactions on branch prediction accuracy. We find that user-only traces yield accurate prediction results only when the kernel accounts for less than 5~o of the total executed instructions. Schemes that appear to predict well under user-only traces are not always the most effective on full-system traces: the recently-pro-posed two-level adaptive schemes can suffer from higher aliasing than the original per-branch 2-bit counter scheme. We also find that flushing the branch history state at fixed intervals does not accu-rately model the true effects of user/kernel interaction. Nicholas C. Gloy, Cliff Young, J. Bradley Chen, Michael D. Smith 0001 |
ISCA | 3 |
| 1996 | Using Latency to Evaluate Interactive System PerformanceabstractNo abstract available. Yasuhiro Endo, J. Bradley Chen, Margo I. Seltzer |
OSDI | 3 |
| 1996 | The Measured Performance of Personal Computer Operating SystemsabstractThis article presents a comparative study of the performance of three operating systems that run on the personal computer architecture derived form the IBM-PC. The operating systems, Windows for Workgroups, Windows NT, and NetBSD (a freely available variant of the UNIX operating system), cover a broad range of system functionality and user requirements, from a single-address-space model to full protection with preemptive multitasking. Our measurements are enable by hardware counters in Intel's Pentium processor that permit measurement of a broad range of processor events including instruction counts and on-chip cache miss counts. We use both microbenchmarks, which expose specific difference between the systems, and application workloads, which provide an indication of expected end-to-end performance. Our microbenchmark results show that accessing system functionality is often more expensive in Windows for Workgroups than in the other two systems due to frequent changes in machine mode and the use of system call hooks. When running native applications, Windows NT is more efficient than Windows, but it incurs overhead similar to that of a microkernel, since its application interface (the Win32 API) is implemented as a user-level server. Overall, system functionality can be accessed most efficiently in NetBSD; we attribute this to its monolithic structure and to the absence of the complications created by hardware backward-compatibility requirements in the other systems. Measurements of application performance show that although the impact of these differences is significant in terms of instruction counts and other hardware events (often a factor of 2 to 7 difference between the systems), overall performance is sometimes determined by the functionality provided by specific subsystems, such as the graphics subsystem or the file system buffer cache. J. Bradley Chen, Yasuhiro Endo, Kee Chan, David Mazières, Antonio Dias, Margo I. Seltzer, Michael D. Smith 0001 |
ACM Trans. Comput. Syst. | 1 |
| 1995 | The Measured Performance of Personal Computer Operating SystemsabstractThis paper presents a comparative study of the performance of three operating systems that run on the personal computer architecture derived from the IBM-PC, The operating systems, Windows for Workgroups, Windows NT, and NetBSD (a freely available variant of the UNIX operating system), cover a broad range ofs ystem functionalist y and user requirements, from a single address space model to full protection with preemptive multi-tasking.Our measurements were enabled by hardware counters in Intel's Pentium processor that permit measurement of a broad range of processor events including instruction counts and on-chip cache miss counts.We used both microbenchmarks, which expose specific differences between the systems, and application workloads, which provide an indication of expected end-to-end performance.Our microbenchmark results show that accessing system functionality is often more expensive in Windows for Workgroups than in the other two systems due to frequent changes in machine mode and the use of system call hooks.When running native applications, Windows NT is more efficient than Windows, but it incurs overhead similar to that of a microkemel since its application interface (the Wln32 API) is implemented as a user-level server.Overall, system functionality can be accessed most efficiently in NetBSD; we attribute this to its monolithic structure, and to the absence of the complications created by hardware backwards compatibility requirements in the other systems.Measurements of application performance show that although the impact of these differences is significant in terms of instruction counts and other hardware events (often a factor of 2 to 7 difference between the systems), overall performance is sometimes determined by the functionality provided by specific subsystems, such as the graphics subsystem or the file system buffer cache. J. Bradley Chen, Yasuhiro Endo, Kee Chan, David Mazières, Antonio Dias, Margo I. Seltzer, Michael D. Smith 0001 |
SOSP | 1 |
| 1994 | Avoiding Conflict Misses Dynamically in Large Direct-Mapped CachesabstractThis paper describes a method for improving the performance of a large direct-mapped cache by reducing the number of conflict misses. Our solution consists of two components: an inexpensive hardware device called a Cache Miss Lookaside (CML) buffer that detects conflicts by recording and summarizing a history of cache misses, and a software policy within the operating system's virtual memory system that removes conflicts by dynamically remapping pages whenever large numbers of conflict misses are detected. Using trace-driven simulation of applications and the operating system, we show that a CML buffer enables a large direct-mapped cache to perform nearly as well as a two-way set associative cache of equivalent size and speed, although with lower hardware cost and complexity. Brian N. Bershad, Dennis Lee 0001, Theodore H. Romer, J. Bradley Chen |
ASPLOS | 4 |
| 1994 | Dynamic Page Mapping Policies for Cache Conflict Resolution on Standard Hardware
Theodore H. Romer, Dennis Lee 0001, Brian N. Bershad, J. Bradley Chen |
OSDI | 4 |
| 1993 | The Impact of Operating System Structure on Memory System PerformanceabstractIn this paper we evaluate the memory system behavior of two distinctly different implementations of the UNIX operating system: DEC's Ultrix, a monolithic system, and Mach 3.0 with CMU's UNIX server, a microkernel-based system. In our evaluation we use combined system and user memory reference traces of thirteen industry-standard workloads. We show that the microkernel-based system executes substantially more non-idle system instructions for an equivalent workload than the monolithic system. Furthermore, the average instruction for programs running on Mach has a higher cost, in terms of memory cycles per instruction, than on Ultrix. In the context of our traces, we explore a number of popular assertions about the memory system behavior of modern operating systems, paying special attention to the effect that Mach's microkernel architecture has on system performance. Our results indicate that many, but not all of the assertions are true, and that a few, while true, have only negligible impact on real system performance. J. Bradley Chen, Brian N. Bershad |
SOSP | 1 |
| 1992 | A Simulation Based Study of TLB PerformanceabstractThis paper presents the results of a simulation-based study of various translation lookaside buffer (TLB) architectures, in the context of a modern VLSI RISC processor. The simulators used address traces, generated by instrumented versions of the SPEC marks and several other programs running on a DECstation 5000. The performance of two-level TLBs and fully-associative TLBs were investigated. The amount of memory mapped was found to be the dominant factor in TLB performance. Small first-level FIFO instruction TLBs can be effective in two level TLB configurations. For some applications, the cyles-per-instruction (CPI) loss due to TLB misses can be reduced from as much as 5CPI to negligible levels with typical TLB parameters through the use of variable-sized pages. J. Bradley Chen, Anita Borg, Norman P. Jouppi |
ISCA | 1 |
| 1986 | NYMPH: A multiprocessor for manipulation applicationsabstractThe robotics group of the Stanford Artificial Intelligence Laboratory is currently developing a new computational system for robotics applications. Stanford's NYMPH system uses multiple NSC 32016 processors and one MC68010 based processor, sharing a common Intel Multibus. The 32K processors provide the raw computational power needed for advanced robotics applications, and the 68K provides a pleasant interface with the rest of the world. Software has been developed to provide useful communications and synchronization primitives, without consuming excessive processor resources or bus bandwidth. NYMPH provides both large amounts of computing power and a good programming environment, making it an effective research tool. J. Bradley Chen, Ronald S. Fearing, Brian Armstrong 0002, Joel W. Burdick |
ICRA | 1 |