High Performance Computing systems typically require per- formant hardware infrastructures, in most cases managed and operated on-premises by single organizations. However, the computing power de- mand often fluctuates in time, resulting into periods where allocated re- sources can be underused. The pay-as-you-go and resources-on-demand approach provided by Cloud Computing can surely ease such problem, consequently reducing the upfront investment on enterprise infrastruc- tures. However, the lack of a shared programming model and standards in the Cloud environment reduces the chances to develop a common ap- proach to support software migration to the Cloud. Here we propose a methodology to recognize design and algorithmic characteristics in se- quential source code and, thanks to technologies like parallel Compilers and Skeletons, to support the parallelization and migration of existing software to the Cloud, guided in the process by the parallel program- ming paradigm represented by MapReduce. In addition, by leveraging the virtualization capabilities of the Cloud, it could also be possible to further parallelize specific sections of code by means of virtual GPUs, which can take advantage of the parallel data transmission capabilities offered by multiple Cloud nodes.
High Performance Cloud: a MapReduce and GPGPU based hybrid approach
DI MARTINO, Beniamino;Esposito Atonio;
2014
Abstract
High Performance Computing systems typically require per- formant hardware infrastructures, in most cases managed and operated on-premises by single organizations. However, the computing power de- mand often fluctuates in time, resulting into periods where allocated re- sources can be underused. The pay-as-you-go and resources-on-demand approach provided by Cloud Computing can surely ease such problem, consequently reducing the upfront investment on enterprise infrastruc- tures. However, the lack of a shared programming model and standards in the Cloud environment reduces the chances to develop a common ap- proach to support software migration to the Cloud. Here we propose a methodology to recognize design and algorithmic characteristics in se- quential source code and, thanks to technologies like parallel Compilers and Skeletons, to support the parallelization and migration of existing software to the Cloud, guided in the process by the parallel program- ming paradigm represented by MapReduce. In addition, by leveraging the virtualization capabilities of the Cloud, it could also be possible to further parallelize specific sections of code by means of virtual GPUs, which can take advantage of the parallel data transmission capabilities offered by multiple Cloud nodes.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.