acm-header
Sign In

Communications of the ACM

Latest Research



From Communications of the ACM

Technical Perspective: Machine Learning For Complex Predictions

Interest in machine learning can be traced back to the early days of computer science. Alan Turing himself conjectured that...

From Communications of the ACM

Declarative Networking

Declarative Networking is a programming methodology that enables developers to concisely specify network protocols and services, which are directly compiled to...

From Communications of the ACM

Technical Perspective: Narrowing the Semantic Gap in Distributed Programming

In science, significant advances are often made when researchers from different communities join forces.

Finding the Frequent Items in Streams of Data
From Communications of the ACM

Finding the Frequent Items in Streams of Data

Many data generation processes can be modeled as data streams. While this data may be archived and indexed within a data warehouse, it is also important to process...

From Communications of the ACM

Technical Perspective: Data Stream Processing - When You Only Get One Look

The database and systems communities have made great progress in developing database systems that allow us to store and query huge amounts of data. Real-time analysis...

Distinct-Value Synopses For Multiset Operations
From Communications of the ACM

Distinct-Value Synopses For Multiset Operations

The task of estimating the number of distinct values (DVs) in a large dataset arises in a wide variety of settings in computer science and elsewhere. We provide...

From Communications of the ACM

Technical Perspective: Relational Query Optimization: Data Management Meets Statistical Estimation

Relational systems have made it possible to query large collections of data in a declarative style through languages such as SQL. There is a key component that...

Optimistic Parallelism Requires Abstractions
From Communications of the ACM

Optimistic Parallelism Requires Abstractions

Writing software for multicore processors is greatly simplified if we could automatically parallelize sequential programs. Although auto-parallelization has been...

From Communications of the ACM

Technical Perspective: Abstraction For Parallelism

Looking for some new insight into an old problem? The  familiar problem of writing parallel applications and a...

Does Distributed Development Affect Software Quality?
From Communications of the ACM

Does Distributed Development Affect Software Quality?: An Empirical Case Study of Windows Vista

Existing literature on distributed development in software engineering and other fields discusses various challenges,...

From Communications of the ACM

Technical Perspective: Maintaining Quality in the Face of Distributed Development

It was a problem that should not have taken three weeks to solve. The documentation claimed that if a function was called...

From Communications of the ACM

Formal Verification of a Realistic Compiler

This paper reports on the development and formal verification of CompCert, a compiler from Clight (a large subset of the C programming language) to PowerPC assembly...

From Communications of the ACM

Technical Perspective: A Compiler's Story

In the early 1970s, pioneers like Floyd, Dijkstra, and Hoare argued that programs should be formally specified and proven...

Scalable Synchronous Queues
From Communications of the ACM

Scalable Synchronous Queues

In a thread-safe concurrent queue, consumers typically wait for producers to make data available. In a synchronous queue, producers similarly wait for consumers...

From Communications of the ACM

Technical Perspective: Highly Concurrent Data Structures

The advent of multicore architectures has produced a Renaissance in the study of highly concurrent data structures.

Lest We Remember
From Communications of the ACM

Lest We Remember: Cold-Boot Attacks on Encryption Keys

DRAM retains its contents for several seconds after power is lost. Although DRAM becomes less reliable when it is not refreshed, it is not immediately erased, and...

From Communications of the ACM

Technical Perspective: A Chilly Sense of Security

Many systems rely on keeping a master key secret. But technological progress can undermine old assumptions.

Integrating Nand Flash Devices Onto Servers
From Communications of the ACM

Integrating Nand Flash Devices Onto Servers

In this paper, we examine the use of Flash storage in the server domain. Wear-out has the potential to limit the use of Flash in this domain. To seriously consider...

From Communications of the ACM

Technical Perspective: Integrating Flash Devices

Flash memory nowadays seems to be in every discussion about system architecture. Sure enough, flash memory boasts...

From Communications of the ACM

Relative Fitness Modeling

Relative fitness is a new approach to modeling the performance of storage devices. In contrast to a conventional model, which predicts the performance of an application's...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account