Skip to main content
Erschienen in: The Journal of Supercomputing 3/2019

07.02.2019

Cooperative CPU, GPU, and FPGA heterogeneous execution with EngineCL

verfasst von: María Angélica Dávila Guzmán, Raúl Nozal, Rubén Gran Tejero, María Villarroya-Gaudó, Darío Suárez Gracia, Jose Luis Bosque

Erschienen in: The Journal of Supercomputing | Ausgabe 3/2019

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Heterogeneous systems are the core architecture of most of the high-performance computing nodes, due to their excellent performance and energy efficiency. However, a key challenge that remains is programmability, specifically, releasing the programmer from the burden of managing data and devices with different architectures. To this end, we extend EngineCL to support FPGA devices. Based on OpenCL, EngineCL is a high-level framework providing load balancing among devices. Our proposal fully integrates FPGAs into the framework, enabling effective cooperation between CPU, GPU, and FPGA. With command overlapping and judicious data management, our work improves performance by up to 96% compared with single-device execution and delivers energy-delay gains of up to 37%. In addition, adopting FPGAs does not require programmers to make big changes in their applications because the extensions do not modify the user-facing interface of EngineCL.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Fußnoten
1
This value corresponds to the cooperative execution and is lower than GPU-only DR, see Table 3, because there is less continuous work on the device.
 
Literatur
2.
Zurück zum Zitat Alawieh M et al (2015) A high performance FPGA–GPU–CPU platform for a real-time locating system. In: EUSIPCO, pp 1576–1580 Alawieh M et al (2015) A high performance FPGA–GPU–CPU platform for a real-time locating system. In: EUSIPCO, pp 1576–1580
3.
Zurück zum Zitat Belviranli ME et al (2013) A dynamic self-scheduling scheme for heterogeneous multiprocessor architectures. ACM Trans Archit Code Optim 9(4):57:1–57:20CrossRef Belviranli ME et al (2013) A dynamic self-scheduling scheme for heterogeneous multiprocessor architectures. ACM Trans Archit Code Optim 9(4):57:1–57:20CrossRef
4.
Zurück zum Zitat Binotto AlPD et al (2010) Towards dynamic reconfigurable load-balancing for hybrid desktop platforms. In: IPDPSW Binotto AlPD et al (2010) Towards dynamic reconfigurable load-balancing for hybrid desktop platforms. In: IPDPSW
5.
Zurück zum Zitat Chen X et al (2017) CMSA: a heterogeneous CPU/GPU computing system for multiple similar RNA/DNA sequence alignment. In: BMC Bioinformatics Chen X et al (2017) CMSA: a heterogeneous CPU/GPU computing system for multiple similar RNA/DNA sequence alignment. In: BMC Bioinformatics
6.
Zurück zum Zitat Chung ES et al (2010) Single-chip heterogeneous computing: Does the future include custom logic, FPGAs, and GPGPUs? In: Proceedings of the 43rd Annual International Symposium on Microarchitecture, MICRO ’43. IEEE Computer Society, Washington, pp 225–236 Chung ES et al (2010) Single-chip heterogeneous computing: Does the future include custom logic, FPGAs, and GPGPUs? In: Proceedings of the 43rd Annual International Symposium on Microarchitecture, MICRO ’43. IEEE Computer Society, Washington, pp 225–236
7.
Zurück zum Zitat Gaster B, Howes L, Kaeli DR, Mistry P, Schaa D (2011) Heterogeneous computing with OpenCL, 1st edn. Morgan Kaufmann Publishers Inc., San Francisco Gaster B, Howes L, Kaeli DR, Mistry P, Schaa D (2011) Heterogeneous computing with OpenCL, 1st edn. Morgan Kaufmann Publishers Inc., San Francisco
8.
Zurück zum Zitat Horowitz M (2014) 1.1 computing’s energy problem (and what we can do about it). In: ISSCC, pp 10–14 Horowitz M (2014) 1.1 computing’s energy problem (and what we can do about it). In: ISSCC, pp 10–14
9.
Zurück zum Zitat Igual FD, Jara LM, Pérez JIG, Piñuel L, Prieto-Matías M (2015) A power measurement environment for PCIe accelerators. Comput Sci R&D 30(2):115–124 Igual FD, Jara LM, Pérez JIG, Piñuel L, Prieto-Matías M (2015) A power measurement environment for PCIe accelerators. Comput Sci R&D 30(2):115–124
10.
Zurück zum Zitat Kaleem R et al (2014) Adaptive heterogeneous scheduling for integrated GPUs. In: PACT. ACM, New York, pp 151–162 Kaleem R et al (2014) Adaptive heterogeneous scheduling for integrated GPUs. In: PACT. ACM, New York, pp 151–162
11.
Zurück zum Zitat Katranovet A et al (2016) Intel threading building block (TBB) flow graph as a software infrastructure layer for OpenCL-based computations. In: ACM IWOCL, pp 9:1–9:3 Katranovet A et al (2016) Intel threading building block (TBB) flow graph as a software infrastructure layer for OpenCL-based computations. In: ACM IWOCL, pp 9:1–9:3
12.
Zurück zum Zitat Koch D et al (eds) (2016) FPGAs for software programmers. Springer, Cham Koch D et al (eds) (2016) FPGAs for software programmers. Springer, Cham
13.
Zurück zum Zitat Lee J et al (2016) Orchestrating multiple data-parallel kernels on multiple devices. In: International Conference on Parallel Architectures and Compilation Techniques, pp 355–366 Lee J et al (2016) Orchestrating multiple data-parallel kernels on multiple devices. In: International Conference on Parallel Architectures and Compilation Techniques, pp 355–366
14.
Zurück zum Zitat Luk C-K et al (2009) Qilin: exploiting parallelism on heterogeneous multiprocessors with adaptive mapping. IEEE/ACM Micro-42 p 45 Luk C-K et al (2009) Qilin: exploiting parallelism on heterogeneous multiprocessors with adaptive mapping. IEEE/ACM Micro-42 p 45
15.
Zurück zum Zitat Mittal Sa (2015) A survey of CPU–GPU heterogeneous computing techniques. ACM Comput Surv 47(4):1–35CrossRef Mittal Sa (2015) A survey of CPU–GPU heterogeneous computing techniques. ACM Comput Surv 47(4):1–35CrossRef
16.
Zurück zum Zitat Momeni A et al (2016) Hardware thread reordering to boost OpenCL throughput on FPGAs. In: ICCD, pp 257–264 Momeni A et al (2016) Hardware thread reordering to boost OpenCL throughput on FPGAs. In: ICCD, pp 257–264
17.
Zurück zum Zitat Muslim FB et al (2017) Efficient FPGA implementation of Opencl high-performance computing applications via high-level synthesis. IEEE Access 5:2747–2762CrossRef Muslim FB et al (2017) Efficient FPGA implementation of Opencl high-performance computing applications via high-level synthesis. IEEE Access 5:2747–2762CrossRef
18.
Zurück zum Zitat Nane R et al (2016) A survey and evaluation of FPGA high-level synthesis tools. IEEE Trans Comput Aided Des Integr Circuits Syst 35(10):1591–1604CrossRef Nane R et al (2016) A survey and evaluation of FPGA high-level synthesis tools. IEEE Trans Comput Aided Des Integr Circuits Syst 35(10):1591–1604CrossRef
19.
Zurück zum Zitat Nozal R et al (2018) EngineCL: usability and performance in heterogeneous computing. arXiv: abs/1805.02755 Nozal R et al (2018) EngineCL: usability and performance in heterogeneous computing. arXiv: abs/1805.02755
20.
Zurück zum Zitat Nozal R et al (2018) Load balancing in a heterogeneous world: Cpu-Xeon Phi co-execution of data-parallel kernels. J Supercomput 73(1):330–342 Nozal R et al (2018) Load balancing in a heterogeneous world: Cpu-Xeon Phi co-execution of data-parallel kernels. J Supercomput 73(1):330–342
21.
Zurück zum Zitat Nunez-Yanez J (2018) Simultaneous multiprocessing in a software-defined heterogeneous FPGA. J Supercomput Nunez-Yanez J (2018) Simultaneous multiprocessing in a software-defined heterogeneous FPGA. J Supercomput
22.
Zurück zum Zitat Pandit P et al (2014) Fluidic kernels: cooperative execution of OpenCL programs on multiple heterogeneous devices. In: Proceedings of Annual IEEE/ACM International Symposium on Code Generation and Optimization Pandit P et al (2014) Fluidic kernels: cooperative execution of OpenCL programs on multiple heterogeneous devices. In: Proceedings of Annual IEEE/ACM International Symposium on Code Generation and Optimization
23.
Zurück zum Zitat Pérez B (2017) Energy efficiency of load balancing for data-parallel applications in heterogeneous systems. J Supercomput 73(1):330–342CrossRef Pérez B (2017) Energy efficiency of load balancing for data-parallel applications in heterogeneous systems. J Supercomput 73(1):330–342CrossRef
24.
Zurück zum Zitat Pérez B et al (2016) Simplifying programming and load balancing of data parallel applications on heterogeneous systems. In: GPGPU. ACM, New York, pp. 42–51 Pérez B et al (2016) Simplifying programming and load balancing of data parallel applications on heterogeneous systems. In: GPGPU. ACM, New York, pp. 42–51
26.
Zurück zum Zitat Rethinagiri SK et al (2015) Trigeneous platforms for energy efficient computing of HPC applications. In: International Conference on High Performance Computing Trigeneous. IEEE Rethinagiri SK et al (2015) Trigeneous platforms for energy efficient computing of HPC applications. In: International Conference on High Performance Computing Trigeneous. IEEE
28.
Zurück zum Zitat Tsoi KH et al (2010) Axel: a heterogeneous cluster with FPGAs and GPUs. In: ACM/SIGDA FPGA. ACM, New York, pp 115–124 Tsoi KH et al (2010) Axel: a heterogeneous cluster with FPGAs and GPUs. In: ACM/SIGDA FPGA. ACM, New York, pp 115–124
29.
Zurück zum Zitat Vilches A et al (2015) Adaptive partitioning for irregular applications on heterogeneous CPU–GPU chips. Procedia Comput Sci ICCS 51:140–149CrossRef Vilches A et al (2015) Adaptive partitioning for irregular applications on heterogeneous CPU–GPU chips. Procedia Comput Sci ICCS 51:140–149CrossRef
30.
Zurück zum Zitat Wang Z et al (2016) A performance analysis framework for optimizing OpenCL applications on FPGAs. In: Proceedings of HPCA, pp 114–125 Wang Z et al (2016) A performance analysis framework for optimizing OpenCL applications on FPGAs. In: Proceedings of HPCA, pp 114–125
31.
Zurück zum Zitat Zhou S et al (2017) Accelerating graph analytics on CPU-FPGA heterogeneous platform. In: SBAC-PAD, pp 137–144 Zhou S et al (2017) Accelerating graph analytics on CPU-FPGA heterogeneous platform. In: SBAC-PAD, pp 137–144
32.
Zurück zum Zitat Zohouri HR et al (2016) Evaluating and optimizing OpenCL kernels for high performance computing with FPGAs. In: SC. IEEE Press, Piscataway, pp 35:1–35:12 Zohouri HR et al (2016) Evaluating and optimizing OpenCL kernels for high performance computing with FPGAs. In: SC. IEEE Press, Piscataway, pp 35:1–35:12
Metadaten
Titel
Cooperative CPU, GPU, and FPGA heterogeneous execution with EngineCL
verfasst von
María Angélica Dávila Guzmán
Raúl Nozal
Rubén Gran Tejero
María Villarroya-Gaudó
Darío Suárez Gracia
Jose Luis Bosque
Publikationsdatum
07.02.2019
Verlag
Springer US
Erschienen in
The Journal of Supercomputing / Ausgabe 3/2019
Print ISSN: 0920-8542
Elektronische ISSN: 1573-0484
DOI
https://doi.org/10.1007/s11227-019-02768-y

Weitere Artikel der Ausgabe 3/2019

The Journal of Supercomputing 3/2019 Zur Ausgabe

Premium Partner