POAC: Optical Computer for Large Data Sets
by Ahmed Ayoub, László Orzó and Szabolcs Tökés
A new Programmable Optical Analogic Array Computer (POAC) has been developed at the Analogic and Neural Computing Laboratory of SZTAKI. It optically identifies, clusters, discretizes, and classifies features of large data sets at high speed and with high parallelism. It has proven to be an excellent device for tracking moving objects.
The ultimate speed is the speed of light. There is no such thing as a short circuit with light, so beams can cross without any problem. This and other features of light interaction motivated the development of the Programmable Optical Analogic Array Computer (POAC), which implements through optical means the Cellular Nonlinear/Neural Computer Universal Machine (CNN-UM). The work having commenced in 2000, POAC has gone through several developmental phases in the last five years, passing from early prototypes to the first real optical computer. This new supercomputing machine is based on multidisciplinary research that has merged cellular neural network (CNN) theories, optical principles, and concepts of biological and holographic memories. Its basic optical processor is a new type of holographic correlator that uses bacteriorhodopsin as a dynamic holographic material.
The most recent version of POAC can process in a flash an input array size of up to 250 000 elements (pixel format). Compared to digital computers, its processing power is estimated to be about 300 giga-operations per second, and it takes only a single millisecond to execute a complete flow-operation. VLSI (Very Large Scale Integration) technology is still not able to provide devices that can cope with such extreme speed and parallelism. It is also cascadable, meaning more complex operations can be carried out. Eighteen optical micro-programs (B-templates) and one optical macro-program (algorithm) have so far been developed. With a height of eighteen centimeters, the physical dimensions of POAC are comparable to the size of a page.
Among the other applications for which POAC can prove useful, feature identification and classification of large data sets are straightforward tasks. In the former case, data sets of size 500x500 can be processed with featuring templates, resulting in a detection rate of up to 1000 different features per second (single-input multi-template). In the latter case, the input can be changed fifteen times per second (multi-input multi-template). Other examples include target recognition and tracking. Not only can the exact target be recognized and tracked within a video frame rate, but a parallel operation can also be run to classify the similarity to the target of other objects in the scene. The degree of similarity between the classified set of objects and the original target is a sub-product of the whole process and is easy to obtain.
Future activities will centre on the enhancement of the most recent version of POAC. The hardware is being improved through the upgrading of key elements and the addition of new optical computing modules, such as coherent optical post-processing of the correlogram, A-template feedback and post-processing by a CNN-UM visual microprocessor. The software will include a greater variety of optical operations, including feature detectors, geometric operations, image analysis, operations based on mathematics and mathematical morphology, and region-based processing. In addition, POAC will be able to manage 800x600 input elements with an equivalent speed of 7.1 tera-operations per second. A proposal to embed the state-of-the-art visual CNN chip (Xenon) within the POAC architecture will enhance its ability to handle large data sets and images at extremely high speed.
Ahmed Ayoub, Szabolcs Tökés, SZTAKI
Tel: +36 1 279 6135
E-mail: ayoubsztaki.hu, tokessztaki.hu