The Anti-Machine Page
"Anti-Machine" (or Xputer) stands for the counterpart of the von Neumann paradigm. The anti-machine uses data counters instead of a programm counter. It is datastream-based and does not run any instruction streams.
Why Reinvent Compting? Pse, study Thomas Sterling's interview entitled: 'I Think We Will Never Reach Zettaflops'. See HPCwire. [mirror] Thomas Sterling takes us through some of the most critical developments in high performance computing, explaining why the transition to exascale is going to be very different than the ones in the past. I agree. However, I believe, we will reach Zetaflops --- by going heterogeneous via Reconfigurable Computing.
(in German Language) |
Auto-sequencing memory (asM) |
Generic Address Generator (GAG) |
Reinvent Computing ]
Why a Generalization of Software Engineering ?
Panel discussions and keynote addresses are booming since the computing crisis caused by the von Neumann syndrome. Because of the coincidence of several disruptive developments we need to Reinvent Computing . We cannot afford any more the CPU-centric, i. e. instruction-stream-centric Software-centric Aristotelian world model of computing. We are forced to go toward heterogeneous computing systems based on a Kopernican World model of Computing (Figure A) . We urgently need the Generalization of Software Eingineering (SE) into Program Engineering (PE) which interlaces two machine paradigms:
By migration of applications from software to configware/flowware speed-up factors and power saving factors by up to several orders of magnitude can be obtained . We also need a third area: Configware Engineering (CE). See  -  and fig. A
We have to set up Program Engineering (PE) education to replace Software Engineering (SE) Education because programming heterogeneous systems requires a mix of skills from all three side of the PE world (Fig. A), i. e. even also from Configware Engineering (CE). By migration of an application from SE to FE / CE, for instance, a different algorithm may be needed. So, for instance, the sequential Bubble Sort algorithms has to be converted into the Shuffle Sort algorithm to avoid accessing conflicts caused by parallelism .
Figure A; Going heterogeneous: our Copernican World Model of Computing
Why a Duality of Machine Paradigms ?
The von Neumann machine paradigm does not support configware. However, configware is supported by our data-stream-based Xputer machine paradigm (anti machine paradigm). Such data stream machines are programmed from 2 different sources: by flowware, which programs the data streams flowing from and to the machine's DPU (data path unit) or DPA (DPU array), and, by configware.The von Neumann paradigm describes the CPU such, that it encapsulates the DPU (DataPath Unit, or ALU) together with the program counter (figure 1). The behaviour of the program counter is programmed by Software (figure 2).
First we started with the generalization of the Systolic Array (first popularized by H. T. Kung ) which is datastream-based. The
von Neumann paradigm, however, is instruction-stream-based. The systolic array (Kung
could be used only for applications with strictly regular
data-dependencies yielding pipe networks with only uniform linear
pipes. Why this restriction? The question has been: "how to synthesize this pipe network?" Being a mathematician
Kung's reply has been: "of coure algebraic" which means by linear projection.
The second question has been: "how to generate the datastreams?" Kung's reply has been: "This is not our job!!".
Maybe, he was looking for an EE student coming with a soldering iron to connect the array to some signal sources. So he missed to invent a general purpose machine paradigm.
The Xputer machine (anti machine) is
instruction-stream-based. The Xputer machine (anti machine) has no
CPU. If it is
hardwired, it has a DPU instead, or even a DPA (DPU array). If it is
reconfigurable, it has a rDPU or rDPA instead (fig. 4). Instead of a
program counter the Xputer machine (anti machine) has one or
several data counters,
which are located with the memory bank (fig. 4), but not with
the (r)DPU nor (r)DPA. The run time bevaviour of the data
counter(s) is programmed by Flowware (fig. 3).
Apropos Kung: in the early days of the systolic array, three different scientist carrying the name "Kung" have
been involved here: (1.) H. T. Kung (at that time at Carnegie-Mellon, now at Harvard, USA) who has been visible first in this scene by popularizing systolic arrays,
(2.) S.Y. Kung (Princeton) who has written an early book on systolic arrays, and, (3.) also a student with the name Kung (sorry, I forgot his
first names and affiliation), having been co-author of some early papers on systolic arrays.
Structural programming by Configware means Programming
in Space. That's why Configware versus Software means Computing in Space and Time versus Computing in Time only.
Figure 8 (Kress-array-based machine version) illustrates, why time to space migration removes the memory cycles needed for the instruction-stream-based CPU-executed version shown in fig. 7. Fig. 9 lists a few speed-up factors having been published. A more recent speed-up factor is 28000 for cracking encrypted code. Fig. 10 summarizes some speed-up mechanisms obtained by time to space migration.
 Burton Smith (keynote): Reinventing Computing; LACSI Symposium 2006, Santa Fe, NM, USA, http://www.cct.lsu.edu/~estrabd/LACSI2006/Smith.pdf
 R. Hartenstein: The Grand Challenge To Reinvent Computing - A new World Model of Computing; CSBC_2010 - XXX Congresso da Sociedade Brasileira de Computação, July 20 - 23, 2010, Belo Horizonte, MG, Brasil http://www.inf.pucminas.br/sbc2010/anais/pdf/semish/st03_02.pdf
 R. Hartenstein, A. G. Hirschbiel, M. Weber: MOM-map-oriented machine-a partly custom-designed architecture compared to standard hardware; Proc. IEEE CompEuro, Hamburg, Germany, May 1989
 R. Hartenstein (keynote): Reconfigurable Computing: boosting Software Education for the Multicore Era; IV Southern Programmable Logic Conference (SPL 2010), Porto Galinhas Beach, Pernambuco, Brasil, 24-26 March 2010
 Joao Cardoso, Michael Huebner (Editors): ―Reconfigurable Computing‖ Springer Verlag 2010
 Voros, Nikolaos; Rosti, Alberto; Hübner, Michael (Eds.): "Dynamic System Reconfiguration in Heterogeneous Platforms - The MORPHEUS Approach"; Springer Verlag, 2009
 Ch. Bobda: Introduction to Reconfigurable Computing - Architectures, Algorithms, Applications; Springer, 2007
 R. Hartenstein: The von Neumann Syndrome; Stamatis Vassiliadis Memorial Symp., Sep 2007, Delft, NL
 M. Duhl: Incremental Development and Description of a Shuffle Sort Array Circuit in hyperKARL from the Algorithm Representation of the Bubble Sort Algorithm; Projektarbeit, Informatik, TU Kaiserslautern 1988
 M. J. Foster, H. T. Kung: Design of Special Purpose VLSI Chips; IEEE 7th International Symposium on Computer Architecture (ISCA), La Baule, France, May 6 - 8, 1980; preprint version in: Computer Magazine 13(1):26-40, January 1980
 R. Hartenstein: Karl Steinbuch about how to invent something; Memo, Informatik, TU Kaiserslautern 2015
 S. Kirkpatrick, C. D. Getlett, M. P. Vechi: Optimization by simulated annealing; 1983, Science 220 621 - 630
 Rainer Kress: A Fast Reconfigurable ALU for Xputers; Ph. D. Dissertation, TU Kaiserslautern 1996
 R. Hartenstein, A. G. Hirschbiel, M. Riedmüller, K. Schmidt, M. Weber: A High Performance Machine Paradigm based on Auto-Sequencin Data Memory; HICSS - 24th Hawaii International Conference on System Sciences, Koloa, Hawaii, USA, January 1991
goes into every application [X]
|Search Google (for the number of
hits see the line " Results")
Bing (for the number of hits see
the line " Results")
|RL FPGA | "Reconfigurable Computing" | FPGA & "oil and gas" | FPGA & "automotive" | FPGA & "medical" | FPGA & "chemical" | FPGA & "bio" | FPGA & "defense" | FPGA & "physics" | FPGA & "molecular" | FPGA & "supercomputing" | FPGA & "HPC" | FPGA & "high performance computing" | GAG generic address generator von Neumann syndrome Map-oriented Machine Map-oriented Programming Language PISA design rule check Xputer paradigm hardware description language KARL||FPGA | "Reconfigurable Computing" | FPGA & "oil" | FPGA & "gas" | FPGA & "automotive" | FPGA & "medical" | FPGA & "chemical" | FPGA & "bio" | FPGA & "defense" | FPGA & "physics" | FPGA & "molecular" | FPGA & "supercomputing" | FPGA & "HPC" | FPGA & "high performance computing" | GAG generic address generator | von Neumann syndrome | Map-oriented Machine | Map-oriented Programming Language | PISA design rule check | Xputer paradigm | hardware description language KARL ||