DocumentCode
1814695
Title
Prototyping parallel simulations on manycore architectures using Scala: A case study
Author
Passerat-Palmbach, Jonathan ; Reuillon, Romain ; Mazel, Claude ; Hill, David R. C.
Author_Institution
Clermont Univ., Clermont, France
fYear
2013
fDate
1-5 July 2013
Firstpage
405
Lastpage
412
Abstract
At the manycore era, every simulation practitioner can take advantage of the computing horsepower delivered by the available high performance computing devices. From multicore CPUs (Central Processing Unit) to thousand-thread GPUs (Graphics Processing Unit), several architectures are now able to offer great speed-ups to simulations. However, it is often tricky to harness them properly, and even more complicated to implement a few declinations of the same model to compare the parallelizations. Thus, simulation practitioners would mostly benefit of a simple way to evaluate the potential benefits of choosing one platform or another to parallelize their simulations. In this work, we study the ability of the Scala programming language to fulfill this need. We compare the features of two frameworks in this study: Scala Parallel Collections and ScalaCL. Both of them provide facilities to set up a data-parallelism approach on Scala collections. The capabilities of the two frameworks are benchmarked with three simulation models as well as a large set of parallel architectures. According to our results, these two Scala frameworks should be considered by the simulation community to quickly prototype parallel simulations, and choose the target platform on which investing in an optimized development will be rewarding.
Keywords
graphics processing units; multi-threading; multiprocessing systems; parallel architectures; specification languages; Scala parallel collections; Scala programming language; ScalaCL; central processing unit; computing horsepower; data-parallelism approach; graphics processing unit; high performance computing devices; manycore architectures; multicore CPU; parallel architectures; parallel simulations; parallelizations; thousand-thread GPU; Computational modeling; Computer architecture; Graphics processing units; Integrated circuit modeling; Java; Lattices; Prototypes; Automatic Parallelization; GPU; Manycore; OpenCL; Parallelization of Simulation; Scala; Threads;
fLanguage
English
Publisher
ieee
Conference_Titel
High Performance Computing and Simulation (HPCS), 2013 International Conference on
Conference_Location
Helsinki
Print_ISBN
978-1-4799-0836-3
Type
conf
DOI
10.1109/HPCSim.2013.6641447
Filename
6641447
Link To Document