acm-header
Sign In

Communications of the ACM

Latest Research



Looking Back and Looking Forward
From Communications of the ACM

Looking Back and Looking Forward: Power, Performance, and Upheaval

The past 10 years have delivered two significant revolutions. Microprocessor design has been transformed — leading to multicore processors. And an entirely new...

Lightweight Modular Staging
From Communications of the ACM

Lightweight Modular Staging: A Pragmatic Approach to Runtime Code Generation and Compiled DSLs

Good software engineering practice demands generalization and abstraction, whereas high performance demands specialization and concretization. These goals are at...

From Communications of the ACM

Technical Perspective: The Fox and the Hedgehog

"The fox knows many things, but the hedgehog knows one big thing." Philosophers have used this line, attributed to the ancient Greek poet Archilochus, to capture...

From Communications of the ACM

Technical Perspective: An Experiment in Determinism

It is widely held that parallel programming is far more difficult and error prone than writing sequential code. In particular, the myriad allowable interleavings...

Efficient System-Enforced Deterministic Parallelism
From Communications of the ACM

Efficient System-Enforced Deterministic Parallelism

We introduce a new parallel programming model addressing the issues facing current methods of executing parallel programs deterministically, and use Determinator...

From Communications of the ACM

Technical Perspective: Best Algorithms + Best Computers = Powerful Match

Say you want to simulate the motion over time of the stars in a galaxy to learn about how galaxies formed and why the universe appears as it does. Is it feasible...

A Massively Parallel Adaptive Fast Multipole Method on Heterogeneous Architectures
From Communications of the ACM

A Massively Parallel Adaptive Fast Multipole Method on Heterogeneous Architectures

We describe a parallel fast multipole method for highly nonuniform distributions of particles. We employ both distributed memory parallelism and shared memory parallelism...

From Communications of the ACM

Technical Perspective: The Benefits of Capability-Based Protection

Affordable personal computing hardware and the usable GUI-based PC operating systems made the vision of "a computer on every desktop and in every home" a reality...

A Taste of Capsicum
From Communications of the ACM

A Taste of Capsicum: Practical Capabilities For Unix

Capsicum is a lightweight operating system capability and sandbox framework planned for inclusion in FreeBSD 9. Capsicum extends, rather than replaces, UNIX APIs...

From Communications of the ACM

Technical Perspective: Compiling What to How

The following paper by Viktor Kuncak et al. integrates declarative programming into a general-purpose language, allowing one to escape the host language when...

Software Synthesis Procedures
From Communications of the ACM

Software Synthesis Procedures

Automated synthesis of program fragments from specifications can make programs easier to write and easier to reason about. To integrate synthesis into programming...

From Communications of the ACM

Technical Perspective: Content-Centric Networking

Much has changed in the 50 years since the invention of packet switching and the early network designs and deployments that...

Networking Named Content
From Communications of the ACM

Networking Named Content

Current network use is dominated by content distribution and retrieval yet current networking protocols are designed for conversations between hosts. We present...

From Communications of the ACM

Technical Perspective: Safety First!

Software misbehaves all too often. This is a truism, but also the driving force behind many computing techniques intended to increase software reliability, safety...

Safe to the Last Instruction
From Communications of the ACM

Safe to the Last Instruction: Automated Verification of a Type-Safe Operating System

High-level computer applications build on services provided by lower-level software layers. Unfortunately, today's low-level software still suffers from a steady...

From Communications of the ACM

Technical Perspective: Making Untrusted Code Useful

The following paper combines two important themes in secure computing: assurance and information flow control. For high assurance, a system's Trusted Computing...

Making Information Flow Explicit in HiStar
From Communications of the ACM

Making Information Flow Explicit in HiStar

Features of the new HiStar operating system permit several novel applications, including privacy-preserving, untrusted virus scanners and a dynamic Web server with...

From Communications of the ACM

Technical Perspective: Power Efficiency as the #1 Design Constraint

Moore's Law, and associated observations by Bob Dennard, describe key technical...

Understanding Sources of Ineffciency in General-Purpose Chips
From Communications of the ACM

Understanding Sources of Ineffciency in General-Purpose Chips

To better understand what improvement in processor efficiency is possible, we quantify the performance and energy overheads of a 720p HD H.264 encoder running on...

From Communications of the ACM

Technical Perspective: Making Browser Extensions Secure

Vulnerabilities in browsers and their extensions have become the primary venue through which cyber criminals compromise the security...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account