Piet Hut
Institute for Advanced Study
Princeton, NJ 08540, U.S.A.
Jun Makino
Department of General Systems Study
College of Arts and Sciences, University of Tokyo
3-8-1 Komaba, Meguro-ku, Tokyo 153-8902, Japan
Computational physics has emerged as a third branch of physics, grafted onto the traditional pair of theoretical and experimental physics. At first, computer use seemed to be a straightforward off-shoot of theoretical physics, providing solutions to sets of differential equations too complicated to solve by hand. But soon the quantitative improvement in speed yielded a qualitative shift in the nature of these computations. Rather than asking particular questions about a model system, we now use computers more often to model the whole system directly. Answers to relevant questions are then extracted only after a full simulation has been completed. The data analysis following such a virtual lab experiment is carried out by the computational physicist in much the same way as it would be done by an experimenter or observer analyzing data from a real experiment or observation.
Recent increase in computer speed is already significantly more modest
than what could be expected purely from the ongoing miniaturization of
computer chips. Since the number of transistors on a single chips
doubles every years, a chip now contains a hundred times more
transistors than it did ten years ago. With a clock speed increase of
more than a factor ten, one might have expected a speed increase of
more than a factor thousand, over the last decade. However, the
actual speed increase of a typical computer chip has been at most a
factor hundred, lagging far behind theoretical expectations. The
reason for this relatively poor performance lies in the significant
overhead caused by the growing complexity of a general-purpose chip.
Hence, designing a chip for only one specific purpose yields a
rapidly growing pay-off. Therefore, the time seems ripe to explore
which types of calculations can be realized directly in hardware, in
the form of special-purpose computers, rather than run in software on
general-purpose computers.
One of these projects has resulted in the GRAPE (short for GRAvity PipE) family of special-purpose hardware, designed and built by a small group of astrophysicists at the University of Tokyo [1]. Like a graphics accelerator speeding up graphics calculations on a workstation, without changing the software running on that workstation, the GRAPE acts as a Newtonian force accelerator, in the form of an attached piece of hardware. In a large-scale gravitational N-body calculation, where N is the number of particles, almost all instructions of the corresponding computer program are thus performed on a standard workstation, while only the gravitational force calculations, in innermost loop, are replaced by a function call to the special-purpose hardware.
Specifically, the force integration and particle pushing are all done
on the host computer, and only the inter-particle force calculations
are done on the GRAPE (fig. 1). This may seem problematic, given the
fact that the intrinsic speed of the GRAPE is a factor of 10,000 times
larger than that of the host computer, an ordinary workstation.
However, the inter-particle calculations require a computer processing
power that scales with , while all other actions on the host
scale only in proportion to N. Therefore, each doubling of the
number of particles doubles the work load on the GRAPE, relative to
that of the workstation. In this way, no matter how slow the
workstation is, it will be able to keep up with the GRAPE for large
enough values of N.
For some applications, more efficient algorithms have been deviced,
that require the computation of a number of inter-particle force
calculations that scales with , rather than
. It turns
out that even these methods can still be efficiently run on the GRAPE
[2]; although the asymptotic scaling advantage is not
very large in that case, the overall coefficient in the scaling
relation turns out to favor the use of the GRAPE. Some versions of
the GRAPE (Table 1) allow arbitrary force implementations, for
applications such as molecular dynamics. For example, the MDGRAPE has
been used to study the structure of protein molecules [3].
However, most GRAPEs have been used to study astrophysical problems.
Below we will review a few representative cases.
Figure 1: The GRAPE-4 hardware.
Table 1: Summary of GRAPE Hardware ([1])