Leveraging the GPU on Spark
Leveraging the GPU on Spark
Tobias Polzer, Friedrich-Alexander University Erlangen-Nuremberg Josef Adersberger, QAware GmbH May 17, 2017
1 / 26
Leveraging the GPU on Spark Tobias Polzer, Friedrich-Alexander - - PowerPoint PPT Presentation
Leveraging the GPU on Spark Leveraging the GPU on Spark Tobias Polzer, Friedrich-Alexander University Erlangen-Nuremberg Josef Adersberger, QAware GmbH May 17, 2017 1 / 26 Leveraging the GPU on Spark Contents Motivation Challenges
Leveraging the GPU on Spark
1 / 26
Leveraging the GPU on Spark
2 / 26
Leveraging the GPU on Spark Motivation
3 / 26
Leveraging the GPU on Spark Motivation
◮ copy from Spark to accelerated native application ◮ compute… ◮ copy back results 3 / 26
Leveraging the GPU on Spark Motivation
4 / 26
Leveraging the GPU on Spark Motivation
4 / 26
Leveraging the GPU on Spark Motivation
4 / 26
Leveraging the GPU on Spark Challenges
5 / 26
Leveraging the GPU on Spark Challenges
5 / 26
Leveraging the GPU on Spark Challenges
5 / 26
Leveraging the GPU on Spark Challenges
6 / 26
Leveraging the GPU on Spark Challenges
6 / 26
Leveraging the GPU on Spark Challenges
6 / 26
Leveraging the GPU on Spark Challenges
7 / 26
Leveraging the GPU on Spark Challenges
7 / 26
Leveraging the GPU on Spark Challenges
7 / 26
Leveraging the GPU on Spark Challenges
7 / 26
Leveraging the GPU on Spark Challenges
8 / 26
Leveraging the GPU on Spark Challenges
9 / 26
Leveraging the GPU on Spark Challenges
◮ looks promising
9 / 26
Leveraging the GPU on Spark Challenges
◮ looks promising ◮ but mostly undocumented ◮ uses internal Spark APIs ◮ had randomly failing tests ◮ their example code is faster on the CPU 9 / 26
Leveraging the GPU on Spark Prototype Architecture
◮ The context provides asynchronous methods on chunks
10 / 26
Leveraging the GPU on Spark Prototype Architecture
◮ The context provides asynchronous methods on chunks
10 / 26
Leveraging the GPU on Spark Prototype Architecture
11 / 26
Leveraging the GPU on Spark Prototype Architecture
12 / 26
Leveraging the GPU on Spark Prototype Architecture
13 / 26
Leveraging the GPU on Spark Prototype Architecture
13 / 26
Leveraging the GPU on Spark Prototype Architecture
14 / 26
Leveraging the GPU on Spark Benchmarks
15 / 26
Leveraging the GPU on Spark Benchmarks
15 / 26
Leveraging the GPU on Spark Benchmarks
16 / 26
Leveraging the GPU on Spark Benchmarks
16 / 26
Leveraging the GPU on Spark Benchmarks
16 / 26
Leveraging the GPU on Spark Benchmarks
1“Scala” result with neither rdd.sum(), nor rdd.reduce() 17 / 26
Leveraging the GPU on Spark Benchmarks
18 / 26
Leveraging the GPU on Spark Benchmarks
19 / 26
Leveraging the GPU on Spark Benchmarks
20 / 26
Leveraging the GPU on Spark Benchmarks
21 / 26
Leveraging the GPU on Spark Benchmarks
22 / 26
Leveraging the GPU on Spark Conclusions
23 / 26
Leveraging the GPU on Spark Conclusions
23 / 26
Leveraging the GPU on Spark Conclusions
◮ fjt data into GPU RAM ◮ special GPU code? ◮ debugging ◮ deploying 23 / 26
Leveraging the GPU on Spark The Way Forward
24 / 26
Leveraging the GPU on Spark The Way Forward
24 / 26
Leveraging the GPU on Spark The Way Forward
24 / 26
Leveraging the GPU on Spark The Way Forward
25 / 26
Leveraging the GPU on Spark The Way Forward
25 / 26
Leveraging the GPU on Spark
26 / 26