acm-header
Sign In

Communications of the ACM

Latest Research



Phase Change Memory Architecture and the Quest For Scalability
From Communications of the ACM

Phase Change Memory Architecture and the Quest For Scalability

Memory scaling is in jeopardy as charge storage and sensing mechanisms become less reliable for prevalent memory technologies. In contrast, phase change memory...

From Communications of the ACM

Technical Perspective: Technology Scaling Redirects Main Memories

As predicted by Intel's Gordon Moore in 1965, the number of transistors that can be integrated on one die continues to double approximately...

X86-TSO: A Rigorous and Usable Programmer's Model For X86 Multiprocessors
From Communications of the ACM

X86-TSO: A Rigorous and Usable Programmer's Model For X86 Multiprocessors

Exploiting the multiprocessors that have recently become ubiquitous requires high-performance and reliable concurrent systems code. However, concurrent programming...

From Communications of the ACM

Technical Perspective: A Solid Foundation For X86 Shared Memory

Multithreaded programs that communicate through shared memory are pervasive. Today they are the most obvious...

seL4: Formal Verification of an Operating-System Kernel
From Communications of the ACM

seL4: Formal Verification of an Operating-System Kernel

We report on the formal, machine-checked verification of the seL4 microkernel from an abstract specification down to its C implementation. We assume correctness...

From Communications of the ACM

Technical Perspective: Learning To Do Program Verification

When you decide to use a piece of software, how do you know it will do what you need it to do? Will it be safe to run? Will it interfere...

Asserting and Checking Determinism For Multithreaded Programs
From Communications of the ACM

Asserting and Checking Determinism For Multithreaded Programs

The trend towards processors with more and more parallel cores is increasing the need for software that can take advantage of...

From Communications of the ACM

Technical Perspective: Building Confidence in Multicore Software

Surprises may be fun in real life, but not so in software. One approach to avoiding surprises in software is to establish its...

Automatic Program Repair With Evolutionary Computation
From Communications of the ACM

Automatic Program Repair With Evolutionary Computation

There are many methods for detecting and mitigating software errors but few generic methods for automatically repairing errors once they are discovered. Recent...

From Communications of the ACM

Technical Perspective: Automated Patching Techniques: The Fix Is In

Finding bugs is technically demanding and yet economically vital. How much more difficult yet valuable would it be to...

Censored Exploration and the Dark Pool Problem
From Communications of the ACM

Censored Exploration and the Dark Pool Problem

The success and proliferation of dark pool stock exchanges have created challenging and interesting problems in algorithmic trading—in particular, the problem of...

From Communications of the ACM

Technical Perspective: Learning to Act in Uncertain Environments

The problem of decision making in an uncertain environment arises in many diverse contexts. The key issue in effectively solving problems like this is known as...

Toward Robotic Cars
From Communications of the ACM

Toward Robotic Cars

Recent challenges organized by DARPA have induced a significant advance in technology for autopilots for cars; similar to those already used in aircraft and marine...

From Communications of the ACM

Technical Perspective: New Bar Set For Intelligent Vehicles

Sebastian Thrun gives us a glimpse into the design and implementation of two winning DARPA grand challenge entries...

Collaborative Filtering with Temporal Dynamics
From Communications of the ACM

Collaborative Filtering with Temporal Dynamics

Customer preferences for products are drifting over time. Product perception and popularity are constantly changing as new selection emerges. Similarly, customer...

From Communications of the ACM

Creativity Helps Influence Prediction Precision

The past decade has seen an explosion of interest in machine learning and data mining, with significant advances in terms of...

Using the Forest to See the Trees
From Communications of the ACM

Using the Forest to See the Trees: Exploiting Context For Visual Object Detection and Localization

Recognizing objects in images is an active area of research in computer vision. However, most of the algorithms for detecting objects perform an exhaustive search...

From Communications of the ACM

Technical Perspective: Seeing the Trees, the Forest, and Much More

Bristling with cameras, microphones, and other sensors, today's portable phones are nevertheless essentially deaf and...

Computing Arbitrary Functions of Encrypted Data
From Communications of the ACM

Computing Arbitrary Functions of Encrypted Data

Suppose that you want to delegate the ability to process your data, without giving away access to it. This separation is possible: we describe a "fully homomorphic"...

From Communications of the ACM

Technical Perspective: A First Glimpse of Cryptography's Holy Grail

We all know how to protect our private or most valuable data from unauthorized access: encrypt it. Still, the use of encryption to protect...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account