Software |
|||
OverviewThe SLAAC approach to scalability for Adaptive Computing Systems (ACS) leverages modern cluster-computing techniques. The cluster computing community uses workstations and COTS high-speed network "back-plane" to build high-performance parallel systems. Therefore, a logical way to build scalable parallel ACS systems is to cluster ACS-accelerated workstations. The SLAAC team is currently developing a scalable API and runtime software to support application control of these network-distributed multiple-host multiple-board ACS systems.
|
|||
Programming ModelThe programming model defined by the SLAAC ACS API defines a distributed system of hosts, nodes, and channels.
|
|||
System Creation Functions
|
|||
Convenience FunctionsConvenience functions provide generic interfaces for operations that are common to most ACS compute devices. Device-specific implementations of these convenience functions are supplied in device libraries. A convenience function uses the system and node arguments to identify the correct device-specific routine to call.
|
|||
Streaming Data FunctionsIn addition to the explicit data transfer operations such as ACS_Write and ACS_Read, this API supports implicit data transfer operations using persistent channels. ACS_Enqueue and ACS_Dequeue provide a mechanism for the host application to insert streaming data into and receive streaming data from the system.
|
|||
Memory Access Functions
|
|||
Implementations
|
| More information on the SLAAC ACS API, including the latest draft of the specification can be found on the Virginia Tech Tower of Power home page. |