Gabriel Ramos, Guilherme Andrade, Rafael Sachetto, Daniel Madeira, Renan Carvalho, Renato Ferreira, Fernando Mourão, and Leonardo Rocha
A Framework for Direct and Transparent Data Exchange of Filter-stream Applications in Multi-GPUs Architectures
The massive data generation has been pushing for significant advances in computing architectures, reflecting in heterogeneous architectures composed by different types of processing units. The filter-stream paradigm is typically used to exploit the parallel processing power of these new architectures. The efficiency of applications in this paradigm is achieved by exploring a set of interconnected computers (cluster) using filters and communication between them in a coordinated way. In this work we propose, implement and test a generic abstraction for direct and transparent data exchange of filter-stream applications in heterogeneous cluster with multi-GPU (Graphics Processing Units). This abstraction allows hiding from the programmers all the low-level implementation details related to GPU communication and the control related to the location of filters. Further, we consolidate such abstraction into a framework. Empirical assessments using a real application show that the proposed abstraction layer eases the implementation of filter-stream applications without compromising the overall application performance.