Reusable software components for accelerator-based clusters

1234567891011121314151617181920
Across
  1. 5. A major challenge in designing a component-based system is to decide what functionality should be included into which software components.
  2. 6. Describe our prototype implementation, followed by the description of our experimentation testbed and the benchmarks that we have used to evaluate our designed components for reusability and performance, and then give the results.
  3. 8. Have shown how the functionality of ABC can be decomposed into distinct software components.
  4. 9. It is the process of designing and building an executable computer program to accomplish a specific computing result or to perform a specific task.
  5. 10. It is a component schedules the data read from the Input Reader for execution on the attached computational accelerator of the node.
  6. 11. It is at the compute node, prefetches blocks of data from the manager, and passes it to the Accelerator Scheduler component.
  7. 15. Promotes reuse and increases separation of concerns, both of which improve programmer productivity.
  8. 17. This component provides an interface to execute the device specific offload routines, such as application specific data processing and merging functions.
  9. 18. In this section, we present an illustrative example of a real cluster to describe how different components of our design operate and interact with each other.
  10. 19. Component encapsulates the methods required to communicate between different heterogeneous resources of the cluster.
  11. 20. We conducted the experiments using our prototype implementation that uses the mixin-layers for building high-performance ABCs.
Down
  1. 1. In this set of experiments, we focus on the performance of the mixin-layers based code generated for our studied ABC configurations
  2. 2. It is a common practice in large-scale systems,to leverage off-the-shelf hardware components for obtaining cheap and energy-efficient computational power.
  3. 3. It is a component manages a compute node.
  4. 4. It is a software development methodology in which features are first-class citizens in the software architecture.
  5. 7. Implemented a prototype of our design as lightweight libraries for each of the platforms
  6. 12. This component prefetches the user specified input data and stores it in the framework according to the application requirement.
  7. 13. Explore how the functionality can be effectively broken into reusable components, so that the required custom functionality can be clearly identified.
  8. 14. The Result Writer component receives the results from the Accelerator Scheduler, and sends them to the manager.
  9. 16. Merger Exposes the interfaces to the programmer for including application-specific mechanisms for merging partial results from individual compute nodes into a combined result set, and the global merging criteria for producing the final results at the manager node