Spatial-Light-Modulator Interconnected Computers

ne way of improving a software tures.4 On the one hand, the client knows system's comprehensibility and the sequence of operations it should per0 maintainability is to decompose form, but it cannot control their cost (that it into several components,' each of Abstract data type is, the time required to perform an operawhich encapsulates some information concor on t d tion). On the other hand, the server knows cerning the system.2 These components the cost of each operation, but it cannot can be classified into four categories, the complexity of a control the sequence in which the operanamely, abstract data type, functional, tions will be invoked. Hence, neither the interface, and control components. Such large program by server nor the client has the knowledge to a classification underscores the need for p a c the time required to perform the different specification, implementation, operations. and performance-improvement methods of operations that can This article discusses two methods of for different types of components. (See be invoked by improving abstract data type perforsidebar.) This article focuses on the develother mance-one for distributed systems and opment of high-performance abstract components another for parallel systems. Both data type components for distributed and c methods have the desirable feature that parallel environments. they do not affect the time spent by the cliAn abstract data type component proent between successive invocations of the vides a collection of operations that can be server. Our performance measure in both invoked by other components. In a discases is the response time-the time a clitributed system, an abstract data type can ent spends waiting for the reply to a server be modeled as a server receiving requests understand since the code for the client operation it has invoked. The response for its operations from clients.3 The and the abstract data type can be dealt with time is equal to the sum of thewaiting and server and its clients interact using the separately. Further, the program is easier service times of requests at the server plus interprocess communication (IPC) primito modify since changes in the client code the request and response transmission tives provided by the operating system and do not require changes in the abstract times. The maximum response time is can run on either the same or different data type component and vice versa, so important for real-time applications, while machines. (Here we extend the terms long as the specification of their interface the average response time is important for "server" and "client" to refer also to the is not changed. other applications. corresponding entities in sequential and However, a side effect of using abstracFor distributed programs, we consider parallel environments.) tions is that system performance deterithe use of multilevel data structures, which The use of abstract data types reduces orates due to both the cost of procedure efficiently implement all the abstraction's the complexity of a large program. The calls and IPC primitives, andtheencapsuoperations if the state of the data structure program becomes easier to develop and lation of the abstraction's data strucsatisfies certain conditions. The process-

[1]  Joseph W. Goodman,et al.  Fan-in and Fan-out with Optical Interconnections , 1985 .

[2]  Alastair D. McAulay Optical Crossbar Interconnected Digital Signal Processor With Basic Algorithms , 1986 .

[3]  A.A. Sawchuk,et al.  Digital optical computing , 1984, Proceedings of the IEEE.

[4]  Alastair D. McAulay,et al.  Plane‐layer prestack inversion in the presence of surface reverberation , 1986 .

[5]  Cauligi S. Raghavendra,et al.  Optical Crossbar Networks , 1987, Computer.

[6]  T. E. Bell,et al.  Optical computing: A field in flux , 1986, IEEE Spectrum.

[7]  C. Burrus,et al.  The quantum well self-electrooptic effect device: Optoelectronic bistability and oscillation, and self-linearized modulation , 1985 .

[8]  C Warde,et al.  Hybrid optical inference machines: architectural considerations. , 1986, Applied optics.

[9]  G. W. Taylor,et al.  A new double‐heterostructure optoelectronic switching device using molecular‐beam epitaxy , 1986 .

[10]  Alastair D. McAulay,et al.  An Extendible Optically Interconnected Parallel Computer , 1986, Fall Joint Computer Conference.

[11]  A D McAulay Real-time optical expert systems. , 1987, Applied optics.

[12]  Karl-Heinz Brenner,et al.  Digital optical computing with symbolic substitution. , 1986 .

[13]  Alastair D. McAulay,et al.  Deformable mirror nearest neighbor optical computer , 1985 .

[14]  D. R. Pape,et al.  Characteristics Of The Deformable Mirror Device For Optical Information Processing , 1983 .