Sort By:

Chipping Away at Moore's Law

Modern CPUs are just chiplets connected together.

by Jessie Frazelle | March 13, 2020


NUMA (Non-Uniform Memory Access): An Overview

NUMA becomes more common because memory controllers get close to execution units on microprocessors.

by Christoph Lameter | August 9, 2013


Realtime GPU Audio

Finite difference-based sound synthesis using graphics processors

by Bill Hsu, Marc Sosnick-Pérez | May 8, 2013


FPGA Programming for the Masses

The programmability of FPGAs must improve if they are to be part of mainstream computing.

by David Bacon, Rodric Rabbah, Sunil Shukla | February 23, 2013


CPU DB: Recording Microprocessor History

With this open database, you can mine microprocessor trends over the past 40 years.

by Andrew Danowitz, Kyle Kelley, James Mao, John P. Stevenson, Mark Horowitz | April 6, 2012


Managing Contention for Shared Resources on Multicore Processors

Contention for caches, memory controllers, and interconnects can be alleviated by contention-aware scheduling algorithms.

by Alexandra Fedorova, Sergey Blagodurov, Sergey Zhuravlev | January 20, 2010


Reconfigurable Future

The Ability to Produce Cheaper, More Compact Chips is a Double-edged Sword.

by Mark Horowitz | July 14, 2008


Repurposing Consumer Hardware

New uses for small form-factor, low-power machines

by Mache Creeger | March 9, 2007

CACM This article appears in print in Communications of the ACM, Volume 5 Issue 2


The Price of Performance

In the late 1990s, our research group at DEC was one of a growing number of teams advocating the CMP (chip multiprocessor) as an alternative to highly complex single-threaded CPUs. We were designing the Piranha system,1 which was a radical point in the CMP design space in that we used very simple cores (similar to the early RISC designs of the late ’80s) to provide a higher level of thread-level parallelism. Our main goal was to achieve the best commercial workload performance for a given silicon budget.

by Luiz André Barroso | October 18, 2005


Extreme Software Scaling

The advent of SMP (symmetric multiprocessing) added a new degree of scalability to computer systems. Rather than deriving additional performance from an incrementally faster microprocessor, an SMP system leverages multiple processors to obtain large gains in total system performance. Parallelism in software allows multiple jobs to execute concurrently on the system, increasing system throughput accordingly. Given sufficient software parallelism, these systems have proved to scale to several hundred processors.

by Richard McDougall | October 18, 2005


The Future of Microprocessors

The performance of microprocessors that power modern computers has continued to increase exponentially over the years for two main reasons. First, the transistors that are the heart of the circuits in all processors and memory chips have simply become faster over time on a course described by Moore’s law,1 and this directly affects the performance of processors built with those transistors. Moreover, actual processor performance has increased faster than Moore’s law would predict,2 because processor designers have been able to harness the increasing numbers of transistors available on modern chips to extract more parallelism from software.

by Kunle Olukotun, Lance Hammond | October 18, 2005


Digitally Assisted Analog Integrated Circuits

In past decades, "Moore's law" has governed the revolution in microelectronics. Through continuous advancements in device and fabrication technology, the industry has maintained exponential progress rates in transistor miniaturization and integration density. As a result, microchips have become cheaper, faster, more complex, and more power efficient.

by Boris Murmann, Bernhard Boser | April 16, 2004


Getting Gigascale Chips:
Challenges and Opportunities in Continuing Moore's Law

Processor performance has increased by five orders of magnitude in the last three decades, made possible by following Moore's law - that is, continued technology scaling, improved transistor performance to increase frequency, additional (to avoid repetition) integration capacity to realize complex architectures, and reduced energy consumed per logic operation to keep power dissipation within limits. Advances in software technology, such as rich multimedia applications and runtime systems, exploited this performance explosion, delivering to end users higher productivity, seamless Internet connectivity, and even multimedia and entertainment.

by Shekhar Borkar | December 5, 2003