Export Citations
It is our pleasure to welcome you to the Fourteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XIV). This year's symposium continues its tradition of being the premier forum for presentation of research results on leading edge issues that cross the boundaries of computer architecture, programming languages and compilers, and operating systems.
The call for papers attracted abstracts from around the world and resulted in 113 full papers being submitted to the Program Committee (PC). This year we used Borbala Online Conference Services's CyberChairPRO submission and review software. Papers were submitted for double-blind review without authors' names or identifying information. PC members were limited to no more than two paper submissions; a total of 13 papers were submitted which had a PC members as a (co)author. The Program Chair assigned each paper to three reviewers from the PC and two external reviewers. 524 of the 543 assigned reviews were submitted, giving an impressive return rate of 96%. On papers where the Program Chair had a conflict-of-interest, Prof. Margaret Martonosi from Princeton chose the reviewer assignments and also ran the discussions at the PC meeting. Prior to the PC meeting, there was an author rebuttal period during which authors could see and respond to their reviews.
The Program Committee met on Saturday, November 1, 2008 at the Chicago O'Hare Hilton. The PC discussed the most highly ranked 51 papers (including 10 PC papers) during the meeting. Each paper discussed had a PC member assigned as lead discussant. PC (co)authored papers were discussed as a group roughly midway through the meeting; these papers were held to a higher standard. The PC selected 29 papers (including 7 PC papers) for an acceptance rate of 25.7%. Seven of these papers were conditionally accepted with shepherding provided by a PC member to ensure that the final papers adequately addressed concerns expressed in the reviews. This year, for the first time, we decided to give a Best Paper Award selected by a sub-committee of the PC from papers nominated by the entire PC.
Proceeding Downloads
Saving the Planet with Systems Research: Conference Keynote
The computing industry has become so successful that almost every economic sector benefits from its advances, while also being impacted by its costs. The energy footprint of computers is one such cost. The dramatic growth of computer deployments, both ...
An evaluation of the TRIPS computer system
- Mark Gebhart,
- Bertrand A. Maher,
- Katherine E. Coons,
- Jeff Diamond,
- Paul Gratz,
- Mario Marino,
- Nitya Ranganathan,
- Behnam Robatmili,
- Aaron Smith,
- James Burrill,
- Stephen W. Keckler,
- Doug Burger,
- Kathryn S. McKinley
The TRIPS system employs a new instruction set architecture (ISA) called Explicit Data Graph Execution (EDGE) that renegotiates the boundary between hardware and software to expose and exploit concurrency. EDGE ISAs use a block-atomic execution model in ...
Architectural implications of nanoscale integrated sensing and computing
This paper explores the architectural implications of integrating computation and molecular probes to form nanoscale sensor processors (nSP). We show how nSPs may enable new computing domains and automate tasks that currently require expert scientific ...
CTrigger: exposing atomicity violation bugs from their hiding places
Multicore hardware is making concurrent programs pervasive. Unfortunately, concurrent programs are prone to bugs. Among different types of concurrency bugs, atomicity violation bugs are common and important. Existing techniques to detect atomicity ...
ASSURE: automatic software self-healing using rescue points
Software failures in server applications are a significant problem for preserving system availability. We present ASSURE, a system that introduces rescue points that recover software from unknown faults while maintaining both system integrity and ...
Recovery domains: an organizing principle for recoverable operating systems
We describe a strategy for enabling existing commodity operating systems to recover from unexpected run-time errors in nearly any part of the kernel, including core kernel components. Our approach is dynamic and request-oriented; it isolates the effects ...
Anomaly-based bug prediction, isolation, and validation: an automated approach for software debugging
Software defects, commonly known as bugs, present a serious challenge for system reliability and dependability. Once a program failure is observed, the debugging activities to locate the defects are typically nontrivial and time consuming. In this paper,...
Capo: a software-hardware interface for practical deterministic multiprocessor replay
While deterministic replay of parallel programs is a powerful technique, current proposals have shortcomings. Specifically, software-based replay systems have high overheads on multiprocessors, while hardware-based proposals focus only on basic hardware-...
DMP: deterministic shared memory multiprocessing
Current shared memory multicore and multiprocessor systems are nondeterministic. Each time these systems execute a multithreaded application, even if supplied with the same input, they can produce a different output. This frustrates debugging and limits ...
Kendo: efficient deterministic multithreading in software
Although chip-multiprocessors have become the industry standard, developing parallel applications that target them remains a daunting task. Non-determinism, inherent in threaded applications, causes significant challenges for parallel programmers by ...
Complete information flow tracking from the gates up
For many mission-critical tasks, tight guarantees on the flow of information are desirable, for example, when handling important cryptographic keys or sensitive financial data. We present a novel architecture capable of tracking all information flow ...
RapidMRC: approximating L2 miss rate curves on commodity systems for online optimizations
Miss rate curves (MRCs) are useful in a number of contexts. In our research, online L2 cache MRCs enable us to dynamically identify optimal cache sizes when cache-partitioning a shared-cache multicore processor. Obtaining L2 MRCs has generally been ...
Per-thread cycle accounting in SMT processors
This paper proposes a cycle accounting architecture for Simultaneous Multithreading (SMT) processors that estimates the execution times for each of the threads had they been executed alone, while they are running simultaneously on the SMT processor. ...
Maximum benefit from a minimal HTM
A minimal, bounded hardware transactional memory implementation significantly improves synchronization performance when used in an operating system kernel. We add HTM to Linux 2.4, a kernel with a simple, coarse-grained synchronization structure. The ...
Early experience with a commercial hardware transactional memory implementation
We report on our experience with the hardware transactional memory (HTM) feature of two pre-production revisions of a new commercial multicore processor. Our experience includes a number of promising results using HTM to improve performance in a variety ...
Mixed-mode multicore reliability
Future processors are expected to observe increasing rates of hardware faults. Using Dual-Modular Redundancy (DMR), two cores of a multicore can be loosely coupled to redundantly execute a single software thread, providing very high coverage from many ...
ISOLATOR: dynamically ensuring isolation in comcurrent programs
In this paper, we focus on concurrent programs that use locks to achieve isolation of data accessed by critical sections of code. We present ISOLATOR, an algorithm that guarantees isolation for well-behaved threads of a program that obey a locking ...
Efficient online validation with delta execution
Software systems are constantly changing. Patches to fix bugs and patches to add features are all too common. Every change risks breaking a previously working system. Hence administrators loathe change, and are willing to delay even critical security ...
PowerNap: eliminating server idle power
Data center power consumption is growing to unprecedented levels: the EPA estimates U.S. data centers will consume 100 billion kilowatt hours annually by 2011. Much of this energy is wasted in idle systems: in typical deployments, server utilization is ...
Gordon: using flash memory to build fast, power-efficient clusters for data-intensive applications
As our society becomes more information-driven, we have begun to amass data at an astounding and accelerating rate. At the same time, power concerns have made it difficult to bring the necessary processing power to bear on querying, processing, and ...
DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings
Recent technological advances in the development of flash-memory based devices have consolidated their leadership position as the preferred storage media in the embedded systems market and opened new vistas for deployment in enterprise-scale storage ...
Commutativity analysis for software parallelization: letting program transformations see the big picture
Extracting performance from many-core architectures requires software engineers to create multi-threaded applications, which significantly complicates the already daunting task of software development. One solution to this problem is automatic compile-...
Accelerating critical section execution with asymmetric multi-core architectures
To improve the performance of a single application on Chip Multiprocessors (CMPs), the application must be split into threads which execute concurrently on multiple cores. In multi-threaded applications, critical sections are used to ensure that only ...
Producing wrong data without doing anything obviously wrong!
This paper presents a surprising result: changing a seemingly innocuous aspect of an experimental setup can cause a systems researcher to draw wrong conclusions from an experiment. What appears to be an innocuous aspect in the experimental setup may in ...
Leak pruning
Managed languages improve programmer productivity with type safety and garbage collection, which eliminate memory errors such as dangling pointers, double frees, and buffer overflows. However, because garbage collection uses reachability to over-...
Dynamic prediction of collection yield for managed runtimes
The growth in complexity of modern systems makes it increasingly difficult to extract high-performance. The software stacks for such systems typically consist of multiple layers and include managed runtime environments (MREs). In this paper, we ...
TwinDrivers: semi-automatic derivation of fast and safe hypervisor network drivers from guest OS drivers
In a virtualized environment, device drivers are often run inside a virtual machine (VM) rather than in the hypervisor, for reasons of safety and reduction in software engineering effort. Unfortunately, this approach results in poor performance for I/O-...
Phantom-BTB: a virtualized branch target buffer design
Modern processors use branch target buffers (BTBs) to predict the target address of branches such that they can fetch ahead in the instruction stream increasing concurrency and performance. Ideally, BTBs would be sufficiently large to capture the entire ...
StreamRay: a stream filtering architecture for coherent ray tracing
The wide availability of commodity graphics processors has made real-time graphics an intrinsic component of the human/computer interface. These graphics cores accelerate the z-buffer algorithm and provide a highly interactive experience at a relatively ...
Architectural support for SWAR text processing with parallel bit streams: the inductive doubling principle
Parallel bit stream algorithms exploit the SWAR (SIMD within a register) capabilities of commodity processors in high-performance text processing applications such as UTF-8 to UTF-16 transcoding, XML parsing, string search and regular expression ...
Cited By
- Coppens B, De Sutter B and Volckaert S Multi-variant execution environments The Continuing Arms Race, (211-258)
- Jin Y, Sullivan D, Arias O, Sadeghi A and Davi L Hardware control flow integrity The Continuing Arms Race, (181-210)
- Schuster F and Holz T Attacking dynamic code The Continuing Arms Race, (139-180)
- Göktas E, Athanasopoulos E, Bos H and Portokalidis G Evaluating control-flow restricting defenses The Continuing Arms Race, (117-137)
- Kuznetzov V, Szekeres L, Payer M, Candea G, Sekar R and Song D Code-pointer integrity The Continuing Arms Race, (81-116)
- Crane S, Homescu A, Larsen P, Okhravi H and Franz M Diversity and information leaks The Continuing Arms Race, (61-79)
- Tan G and Niu B Protecting dynamic code The Continuing Arms Race, (25-60)
- Payer M How memory safety violations enable exploitation of programs The Continuing Arms Race, (1-23)
- Preface The Continuing Arms Race, (xi-xiii)
- Larsen P and Sadeghi A (2018). The Continuing Arms Race, 10.1145/3129743, Online publication date: 1-Mar-2018.
- Proceedings of the 14th international conference on Architectural support for programming languages and operating systems
Recommendations
Acceptance Rates
Year | Submitted | Accepted | Rate |
---|---|---|---|
ASPLOS '19 | 351 | 74 | 21% |
ASPLOS '18 | 319 | 56 | 18% |
ASPLOS '17 | 320 | 53 | 17% |
ASPLOS '16 | 232 | 53 | 23% |
ASPLOS '15 | 287 | 48 | 17% |
ASPLOS '14 | 217 | 49 | 23% |
ASPLOS XV | 181 | 32 | 18% |
ASPLOS XIII | 127 | 31 | 24% |
ASPLOS XII | 158 | 38 | 24% |
ASPLOS X | 175 | 24 | 14% |
ASPLOS IX | 114 | 24 | 21% |
ASPLOS VIII | 123 | 28 | 23% |
ASPLOS VII | 109 | 25 | 23% |
Overall | 2,713 | 535 | 20% |