1995-1996 Distinguished Lectures

RICHARD L. SITES

Digital Equipment Corporation
Random Memory Access Abuse

Tuesday
November 14
1995

Abstract

As high-speed computers and operating systems get more complex, software performance no longer increases predictably. The CPU chip industry has now reached the point that instructions can be executed more quickly than the chips can be fed with code and data. Future chip design is memory design. Future software design is also memory design.

We have been studying the performance of the Windows NT operating system running on Alpha computers. The technique we use, PatchWrx, is focussed on understanding operating system performance, but may be applied to user code also. The technique involves patching all the binary executables of the operating system to record all the branching behavior, then postprocessing to reconstruct the entire dynamic instruction and data streams. Patched programs run at about 1/4 of normal speed.

Direct measurements of the SQLserver database application reveal that its memory access pattern is nearly indistinguishable from white noise, and that caches therefore don't work. Executing SQLserver and similar 2 GB/sec of main memory bandwidth, unless the software is restructured to treat main memory like disks -- accesses are very slow, and once you get one piece of data, you want to use an entire block of data.

Without extreme care in memory access patterns, pointer structures are death. This is in stark contrast to what one might "learn" about computer design by studying the SPEC benchmarks. Controlling memory access patterns will drive hardware and software designs for the foreseeable future.

CARLO H. SEQUIN

University of California, Berkeley
Interactive Virtual Building Environments

Tuesday
December 5
1995

Abstract

Real-time virtual walk-through exploration of computer graphics models of fully furnished buildings comprising millions of polygons are possible on today's high-end workstations. However, real-time rendering of such virtual environments requires a suitably organized database, the use of furniture models at various levels of detail, and efficient determination of worst-case visibility ranges. To make such environments truly interactive, so that the user can displace furniture during a walk-through session, raises additional computational challenges and user interface issues. This paper discusses these issues, and shows results obtained on a model comprising more than a hundred furnished rooms.

NORMAN ABRAMSON

Aloha Networks
Spread ALOHA For Wireless Networks:
CSMA Without Code Division

Thursday
January 25
1996

Abstract

Digital networks serving large numbers of users sharing a common channel require a multiple access communications architecture in order to regulate user access to the shared channel resource. When the user traffic is rapidly varying, two basic multiple access techniques have been employed -- Code Division Multiple Access (CDMA) and ALOHA.

CDMA requires the use of a wide bandwidth spread spectrum channel while ALOHA access has generally been employed in narrowband channels. When ALOHA channels are designed to make the same profligate use of bandwidth as CDMA channels a new form of ALOHA access called Spread ALOHA results. Spread ALOHA is equivalent to conventional CDMA with but a single code shared by all users rather than a different code for each user.

Spread ALOHA can be used to greatly simplify the generally baroque architecture of conventional CDMA implementations. In addition it can be shown that in the case of a bandlimited average power limited channel operating at a low signal to noise ratio, it is not possible to find a multiple access technique with a higher capacity than Spread ALOHA.

FOREST BASKETT

Silicon Graphics, Inc.
Scalable Computer System Architectures into the 21st Century

Tuesday
March 5
1996

Sorry, no abstract available.

CHRISTOS H. PAPADIMITRIOU

University of California, San Diego
Complexity as a Metaphor

Thursday
May 9
1996

Abstract

As the field of computational complexity grows and matures, it is tackling broader and more subtle questions than just how hard functions are to compute. Complexity of a computational problem is often used as an indirect indication that an area or approach is mathematically nasty or devoid of favorable structure. Such a conception of complexity is particularly productive and informative in interdisciplinary research. I shall present examples in which complexity is used as an "allegory" for chaos in dynamical systems, for unfair distribution in economics, and for unbounded rationality in game theory.