acm-header
Sign In

Communications of the ACM

Latest Research



From Communications of the ACM

Technical Perspective: Programming Multicore Computers

"Can Traditional Programming Bridge the Ninja Performance Gap for Parallel Computing Applications" advocates an appealing division of labor between a developer...

Can Traditional Programming Bridge the Ninja Performance Gap For Parallel Computing Applications?
From Communications of the ACM

Can Traditional Programming Bridge the Ninja Performance Gap For Parallel Computing Applications?

Current processor trends of integrating more cores with SIMD units have made it more to extract performance from applications. It is believed that traditional...

From Communications of the ACM

Technical Perspective: The Equivalence Problem For Finite Automata

As the equivalence problem is essential in many applications, we need algorithms that avoid the worst-case complexity as often as possible. In "Hacking Nondeterminism...

Hacking Nondeterminism with Induction and Coinduction
From Communications of the ACM

Hacking Nondeterminism with Induction and Coinduction

We introduce bisimulation up to congruence as a technique for proving language equivalence of nondeterministic finite automata.

From Communications of the ACM

Technical Perspective: Rethinking Caches For Throughput Processors

As GPUs have become mainstream parallel processing engines, many applications targeting GPUs now have data locality more amenable to traditional caching. The...

Learning Your Limit
From Communications of the ACM

Learning Your Limit: Managing Massively Multithreaded Caches Through Scheduling

This paper studies the effect of accelerating highly parallel workloads with significant locality on a massively multithreaded GPU.

From Communications of the ACM

Technical Perspective: Attacking a Problem from the Middle

"Dissection: A New Paradigm for Solving Bicomposite Search Problems," by Itai Dinur, Orr Dunkelman, Nathan Keller, and Adi Shamir, presents an elegant new algorithm...

Dissection
From Communications of the ACM

Dissection: A New Paradigm For Solving Bicomposite Search Problems

In this paper, we introduce the new notion of bicomposite search problems, and show that they can be solved with improved combinations of time and space complexities...

From Communications of the ACM

Technical Perspective: Smartphone Security 'Taint' What It Used to Be

The TaintDroid project takes a runtime taint tracking approach toward analyzing Android apps.

TaintDroid
From Communications of the ACM

TaintDroid: An Information Flow Tracking System For Real-Time Privacy Monitoring on Smartphones

Today's smartphone operating systems frequently fail to provide users with adequate control over and visibility into how third-party applications use their privacy...

From Communications of the ACM

Technical Perspective: A New Spin on an Old Algorithm

A paper by Ballard, Demmel, Holtz, and Schwartz considers a fundamental problem, adopting a new perspective on an old algorithm that has for years occupied a peculiar...

Communication Costs of Strassen's Matrix Multiplication
From Communications of the ACM

Communication Costs of Strassen's Matrix Multiplication

Proving lower bounds on the communication of algorithms and finding algorithms that attain these bounds are fundamental goals. 

From Communications of the ACM

Technical Perspective: The Cleanest Garbage Collection

In quite a tour de force, the authors of the following paper have built a provably correct real-time garbage collector for reconfigurable hardware (field programmable...

And Then There Were None
From Communications of the ACM

And Then There Were None: A Stall-Free Real-Time Garbage Collector For Reconfigurable Hardware

We present a garbage collector synthesized directly to hardware, capable of collecting a heap of uniform objects completely concurrently. These heaps are composed...

From Communications of the ACM

Technical Perspective: The Ray-Tracing Engine That Could

It has been an open question whether it is possible to build GPU-targeted high-performance software systems that are themselves programmable. "GPU Ray Tracing" shows...

GPU Ray Tracing
From Communications of the ACM

GPU Ray Tracing

The NVIDIA OptiX ray tracing engine builds on the key observation that most ray tracing algorithms can be implemented using a small set of programmable operations...

From Communications of the ACM

Technical Perspective: Visualization, Understanding, and Design

Photographs capture the moment; paintings convey perception, impression, and feeling; illustrations tell stories. Computer graphics aims to enrich all these artistic...

From Communications of the ACM

Illustrating How Mechanical Assemblies Work

How-things-work visualizations use a variety of visual techniques to depict the operation of complex mechanical assemblies. We present an automated approach for...

From Communications of the ACM

Technical Perspective: High-Level Data Structures

This lifting of data structure thinking to the relational level has long inspired computer scientists. In "An Introduction to Data Representation Synthesis," the...

An Introduction to Data Representation Synthesis
From Communications of the ACM

An Introduction to Data Representation Synthesis

We consider the problem of specifying combinations of data structures with complex sharing in a manner that is declarative and results in provably correct code.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account