SlideShare a Scribd company logo
GPU Support in Spark and
GPU/CPU Mixed Resource
Scheduling at Production Scale
Yonggang Hu, IBM, Distinguished Engineer
Junfeng Liu, IBM, Architect
About us
• Yonggang Hu
Distinguished Engineer, IBM
Chief Architect at Spectrum Computing, IBM.
Vice President and Application Architect at JPMorgan Chase
Working on distributed computing, grid, cloud and big data for the
past 20 years.
• Junfeng Liu
IBM Spectrum Computing Architect, focusing on Big data
platform design and implementation. Successfully delivering
solutions to key customers.
2
Agenda
• GPU and Spark integration motivation
• The challenges of production deployments
• Solutions
• Demo
• IBM® Spectrum Conductor with Spark
3
Spark and GPU
Spark apps are
CPU intensive
Need to handle
more data and
bigger models
Machine Learning
Predictive analytics,
Logistic regression, ALS
Kmeans, etc.
Graph Analytics
Security, Fraud Detection
Social Network Analytics
GraphX
Video/Speech Analytics
Object Recognition
Dialog
Financial Risk Analytics
Market simulation
Credit risk, home-grown,
apps from Murex, Misys
Spark-enable existing GPU appsGPU-enable Spark apps 4
Various ways to integrate Spark and GPUs
• Use GPUs for accelerating Spark Libraries and operations without
changing interfaces and programming model
– IBM Open source project: https://github.com/IBMSparkGPU
– Nvidia GTC 2016 talk,
• http://on-demand.gputechconf.com/gtc/2016/presentation/s6280-rajesh-bordawekar-accelerating-spark.pdf
• http://on-demand.gputechconf.com/gtc/2016/video/S6211.html
• Automatically generate CUDA code from the source Spark Java code
– Nvidia GTC 2016 talk: http://on-demand.gputechconf.com/gtc/2016/presentation/s6346-kazuaki-
ishizaki-gpu-programming-java-programmers.pdf
• Integrate Spark with GPU-enabled application and system
(e.g., Spark integrated with Caffe, TensorFlow and customer
applications)
5
Production challenges
• However
– Identification of GPU execution vs. CPU
execution in DAG
– Data preparation for GPU execution
– Low resource utilization for CPU or GPU or
both
• Cannot assume all compute hosts are identical and
have GPU resource available
• GPU is a lot more expensive !!!
– Overload and contention when running mixed
GPU and CPU workload
– Long tail and GPU / CPU tasks failover
– Monitoring and management
Stage 2Stage 1
collect
reduceByKey
Stage GPU
GPU Group CPU Group
6
A typical example
Personalized Medicine – Adverse Drug Reaction Workload
- 30X faster at learning speed and 4X speed up end-to-end
- Need to fully utilize both GPU and CPU resources to get economic benefits
7
Source: http://on-demand.gputechconf.com/gtc/2016/presentation/s6280-rajesh-bordawekar-accelerating-spark.pdf
4X is
not
enough
Scheduling granularity
• Scheduling at application level
– Mesos and YARN tag the GPU machine with label
– Schedule the application on GPU hosts based on resource requirement of application
– Coarse-grained scheduling leads to low utilization of CPU/GPU
• Scheduling at DAG level
– Need fine-grained sharing for GPU resources rather than reserving entire GPU
machines
– Identify GPU operation
– Optimize the DAG tree by decoupling GPU operations from CPU operations and by
inserting new GPU stages
– Reduce GPU wait time, enable sharing of GPUs among different jobs and therefore
improve the overall GPU utilization
8
GPU task recognition
• GPU and CPU tasks mixed together
• Need to separate the workloads for scheduling control
GPUFunction()
Python-C Wrapper to
Invoke Native
Function
Function
implemented by
CUDA/OpenCL
GPU libraryPython-C/C++ Wrapper
9
GPU task recognition
• Mark the GPU workload by DAG
operation
– Go through the DAG tree to identify
stages with GPU requirement
– Optimize the distribution by inserting
GPU stage
10
Policies
• Resource manager needs to be able to identify the GPU
hosts and manage along with CPU resources
• Prioritization policy - share GPU resources among
applications
• Allocation policy – control GPU and CPU allocation
independently – multi-dimensional scheduling
• Fine-grained policy to schedule tasks according to
GPU-optimized DAG plan
11
Adaptive scheduling
• CPU and GPU tasks are convertible in
many applications
• Scheduling needs adaptive capability
– If GPU is available, use a portion of GPU
– Otherwise run rest of tasks on CPU
dstInBlocks.join(merged).mapV
alues {
….
if (useGPU) {
loadGPULib()
callGPU ()
}
else {
//CPU version
}
}
12
Adaptive scheduling
CPU
CPU
CPU
GPU
GPU
GPU
Driver
Executors Executors
Executors
Tasks
--------------
Node 0 Node 1 Node n
13
Efficiency considerations
• Do we need to wait for a GPU resource if there
is a CPU available?
• Do we need rerun the CPU tasks on GPU if
tasks on CPU are long-tail?
• Do we need to have failover cross-resource
type?
14
Defer scheduling
• Traditional defer scheduling
– Wait for data locality
– Cache, Host, Rack
• Resource-based defer scheduling
– Necessary if the GPU can greatly speed up task execution
– Wait time is acceptable
15
Evaluation
• Machine Learning – ALS on GPU
– IBM Spark on GPU project
– Various ML implementation on GPU
– https://github.com/IBMSparkGPU
• MovieLensALS Example
– Spark Example, without modification
– Binary compatible with Spark Application
– Data Source
• http://grouplens.org/datasets/movielens/
Evaluation
Single Application Multiple Applications
Future work
• Global optimization
– Consider the cost of additional shuffle stage
– Consider data locality of CPU and GPU stages
– Add time dimension to MDS (multi-dimensional
scheduling)
– Optimize global DAG tree execution
– Use historical data to optimize future execution, e.g,
future iteration
18
Fine grain, dynamic allocation of
resources maximizes efficiency of Spark
instances sharing a common resource
pool. Multi-tenant, multi-framework
support. Eliminates cluster sprawl.
2
Run Spark natively on a shared
infrastructure without the dependency of
Hadoop. Reduce application wait time,
improving time to results.
1
Building a Spark-Centric Shared Service
with IBM spectrum Conductor
End-to-End Enterprise Class Solution
Improve Time to Results
Proven architecture at extreme scale, with
enterprise class workload management,
multi-version support for Spark,
monitoring, reporting, and security
capabilities.
3
Reduce Administration Costs
Increase Resource Utilization
• IBM STC Spark Distribution
• IBM Platform Resource Orchestrator /
Session Scheduler, application service
manager.
• IBM Spectrum Scale FPO
4
19
http://www-03.ibm.com/systems/spectrum-computing/products/conductor/
IBM Spectrum Conductor with Spark
IBM Bluemix Spark Cloud Service in
production – thousands of users and
tenants
Third party audited benchmark
indicated significant performance /
throughput / SLA advantages
https://ibm.biz/Bd4Tyw
20
IBM Spectrum Conductor with Spark
Monitor and Reporting with Elastic (ELK)
 Integrated Elastic Search, Logstash, Kibana for customizable monitoring
 Built-in monitoring Metrics
 Cross Spark Instance Groups
 Cross Spark Applications within Spark Instance Group
 Within Spark Application
 Built-in monitoring inside Zeppelin Notebook
21
Demo
22
THANK YOU.
Visit us at the IBM booth in the expo
www.ibm.com/spectrum-conductor
yhu@ca.ibm.com
jfliu@ca.ibm.com
Ad

More Related Content

What's hot (20)

Deploying Accelerators At Datacenter Scale Using Spark
Deploying Accelerators At Datacenter Scale Using SparkDeploying Accelerators At Datacenter Scale Using Spark
Deploying Accelerators At Datacenter Scale Using Spark
Jen Aman
 
Hadoop + GPU
Hadoop + GPUHadoop + GPU
Hadoop + GPU
Vladimir Starostenkov
 
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Databricks
 
High Performance Python on Apache Spark
High Performance Python on Apache SparkHigh Performance Python on Apache Spark
High Performance Python on Apache Spark
Wes McKinney
 
Easy and High Performance GPU Programming for Java Programmers
Easy and High Performance GPU Programming for Java ProgrammersEasy and High Performance GPU Programming for Java Programmers
Easy and High Performance GPU Programming for Java Programmers
Kazuaki Ishizaki
 
Distributed Deep Learning with Apache Spark and TensorFlow with Jim Dowling
Distributed Deep Learning with Apache Spark and TensorFlow with Jim DowlingDistributed Deep Learning with Apache Spark and TensorFlow with Jim Dowling
Distributed Deep Learning with Apache Spark and TensorFlow with Jim Dowling
Databricks
 
A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.
A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.
A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.
J On The Beach
 
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Databricks
 
Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...
Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...
Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...
Jen Aman
 
Spark Summit EU talk by Josef Habdank
Spark Summit EU talk by Josef HabdankSpark Summit EU talk by Josef Habdank
Spark Summit EU talk by Josef Habdank
Spark Summit
 
Enterprise Scale Topological Data Analysis Using Spark
Enterprise Scale Topological Data Analysis Using SparkEnterprise Scale Topological Data Analysis Using Spark
Enterprise Scale Topological Data Analysis Using Spark
Alpine Data
 
April 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark Clusters
April 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark ClustersApril 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark Clusters
April 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark Clusters
Yahoo Developer Network
 
Spark Summit 2016: Connecting Python to the Spark Ecosystem
Spark Summit 2016: Connecting Python to the Spark EcosystemSpark Summit 2016: Connecting Python to the Spark Ecosystem
Spark Summit 2016: Connecting Python to the Spark Ecosystem
Daniel Rodriguez
 
Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...
Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...
Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...
Databricks
 
Parallel Linear Regression in Interative Reduce and YARN
Parallel Linear Regression in Interative Reduce and YARNParallel Linear Regression in Interative Reduce and YARN
Parallel Linear Regression in Interative Reduce and YARN
DataWorks Summit
 
Top 5 Mistakes When Writing Spark Applications
Top 5 Mistakes When Writing Spark ApplicationsTop 5 Mistakes When Writing Spark Applications
Top 5 Mistakes When Writing Spark Applications
Spark Summit
 
Prediction as a service with ensemble model in SparkML and Python ScikitLearn
Prediction as a service with ensemble model in SparkML and Python ScikitLearnPrediction as a service with ensemble model in SparkML and Python ScikitLearn
Prediction as a service with ensemble model in SparkML and Python ScikitLearn
Josef A. Habdank
 
Hadoop Scheduling - a 7 year perspective
Hadoop Scheduling - a 7 year perspectiveHadoop Scheduling - a 7 year perspective
Hadoop Scheduling - a 7 year perspective
Joydeep Sen Sarma
 
Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
 Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
Spark Summit
 
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Databricks
 
Deploying Accelerators At Datacenter Scale Using Spark
Deploying Accelerators At Datacenter Scale Using SparkDeploying Accelerators At Datacenter Scale Using Spark
Deploying Accelerators At Datacenter Scale Using Spark
Jen Aman
 
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Serverless Machine Learning on Modern Hardware Using Apache Spark with Patric...
Databricks
 
High Performance Python on Apache Spark
High Performance Python on Apache SparkHigh Performance Python on Apache Spark
High Performance Python on Apache Spark
Wes McKinney
 
Easy and High Performance GPU Programming for Java Programmers
Easy and High Performance GPU Programming for Java ProgrammersEasy and High Performance GPU Programming for Java Programmers
Easy and High Performance GPU Programming for Java Programmers
Kazuaki Ishizaki
 
Distributed Deep Learning with Apache Spark and TensorFlow with Jim Dowling
Distributed Deep Learning with Apache Spark and TensorFlow with Jim DowlingDistributed Deep Learning with Apache Spark and TensorFlow with Jim Dowling
Distributed Deep Learning with Apache Spark and TensorFlow with Jim Dowling
Databricks
 
A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.
A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.
A Java Implementer's Guide to Boosting Apache Spark Performance by Tim Ellison.
J On The Beach
 
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Deep Learning Pipelines for High Energy Physics using Apache Spark with Distr...
Databricks
 
Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...
Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...
Embrace Sparsity At Web Scale: Apache Spark MLlib Algorithms Optimization For...
Jen Aman
 
Spark Summit EU talk by Josef Habdank
Spark Summit EU talk by Josef HabdankSpark Summit EU talk by Josef Habdank
Spark Summit EU talk by Josef Habdank
Spark Summit
 
Enterprise Scale Topological Data Analysis Using Spark
Enterprise Scale Topological Data Analysis Using SparkEnterprise Scale Topological Data Analysis Using Spark
Enterprise Scale Topological Data Analysis Using Spark
Alpine Data
 
April 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark Clusters
April 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark ClustersApril 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark Clusters
April 2016 HUG: CaffeOnSpark: Distributed Deep Learning on Spark Clusters
Yahoo Developer Network
 
Spark Summit 2016: Connecting Python to the Spark Ecosystem
Spark Summit 2016: Connecting Python to the Spark EcosystemSpark Summit 2016: Connecting Python to the Spark Ecosystem
Spark Summit 2016: Connecting Python to the Spark Ecosystem
Daniel Rodriguez
 
Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...
Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...
Project Hydrogen: Unifying State-of-the-Art AI and Big Data in Apache Spark w...
Databricks
 
Parallel Linear Regression in Interative Reduce and YARN
Parallel Linear Regression in Interative Reduce and YARNParallel Linear Regression in Interative Reduce and YARN
Parallel Linear Regression in Interative Reduce and YARN
DataWorks Summit
 
Top 5 Mistakes When Writing Spark Applications
Top 5 Mistakes When Writing Spark ApplicationsTop 5 Mistakes When Writing Spark Applications
Top 5 Mistakes When Writing Spark Applications
Spark Summit
 
Prediction as a service with ensemble model in SparkML and Python ScikitLearn
Prediction as a service with ensemble model in SparkML and Python ScikitLearnPrediction as a service with ensemble model in SparkML and Python ScikitLearn
Prediction as a service with ensemble model in SparkML and Python ScikitLearn
Josef A. Habdank
 
Hadoop Scheduling - a 7 year perspective
Hadoop Scheduling - a 7 year perspectiveHadoop Scheduling - a 7 year perspective
Hadoop Scheduling - a 7 year perspective
Joydeep Sen Sarma
 
Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
 Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
Spark Summit
 
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Accelerating Apache Spark Shuffle for Data Analytics on the Cloud with Remote...
Databricks
 

Viewers also liked (20)

The Potential of GPU-driven High Performance Data Analytics in Spark
The Potential of GPU-driven High Performance Data Analytics in SparkThe Potential of GPU-driven High Performance Data Analytics in Spark
The Potential of GPU-driven High Performance Data Analytics in Spark
Spark Summit
 
TensorFrames: Google Tensorflow on Apache Spark
TensorFrames: Google Tensorflow on Apache SparkTensorFrames: Google Tensorflow on Apache Spark
TensorFrames: Google Tensorflow on Apache Spark
Databricks
 
Performance evaluation
Performance evaluationPerformance evaluation
Performance evaluation
Mamadou Barry
 
Debugging Apache Spark - Scala & Python super happy fun times 2017
Debugging Apache Spark -   Scala & Python super happy fun times 2017Debugging Apache Spark -   Scala & Python super happy fun times 2017
Debugging Apache Spark - Scala & Python super happy fun times 2017
Holden Karau
 
Vasiliy Litvinov - Python Profiling
Vasiliy Litvinov - Python ProfilingVasiliy Litvinov - Python Profiling
Vasiliy Litvinov - Python Profiling
Sergey Arkhipov
 
What’s eating python performance
What’s eating python performanceWhat’s eating python performance
What’s eating python performance
Piotr Przymus
 
Denis Nagorny - Pumping Python Performance
Denis Nagorny - Pumping Python PerformanceDenis Nagorny - Pumping Python Performance
Denis Nagorny - Pumping Python Performance
Sergey Arkhipov
 
The High Performance Python Landscape by Ian Ozsvald
The High Performance Python Landscape by Ian OzsvaldThe High Performance Python Landscape by Ian Ozsvald
The High Performance Python Landscape by Ian Ozsvald
PyData
 
Boost.Python: C++ and Python Integration
Boost.Python: C++ and Python IntegrationBoost.Python: C++ and Python Integration
Boost.Python: C++ and Python Integration
GlobalLogic Ukraine
 
Spark + Scikit Learn- Performance Tuning
Spark + Scikit Learn- Performance TuningSpark + Scikit Learn- Performance Tuning
Spark + Scikit Learn- Performance Tuning
晨揚 施
 
Python profiling
Python profilingPython profiling
Python profiling
dreampuf
 
GTC 2012: GPU-Accelerated Path Rendering
GTC 2012: GPU-Accelerated Path RenderingGTC 2012: GPU-Accelerated Path Rendering
GTC 2012: GPU-Accelerated Path Rendering
Mark Kilgard
 
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web RenderingSIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
Mark Kilgard
 
Accelerating Machine Learning Applications on Spark Using GPUs
Accelerating Machine Learning Applications on Spark Using GPUsAccelerating Machine Learning Applications on Spark Using GPUs
Accelerating Machine Learning Applications on Spark Using GPUs
IBM
 
PG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated AsyncrPG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated Asyncr
Kohei KaiGai
 
Deep learning on spark
Deep learning on sparkDeep learning on spark
Deep learning on spark
Satyendra Rana
 
GPU Ecosystem
GPU EcosystemGPU Ecosystem
GPU Ecosystem
Ofer Rosenberg
 
Computational Techniques for the Statistical Analysis of Big Data in R
Computational Techniques for the Statistical Analysis of Big Data in RComputational Techniques for the Statistical Analysis of Big Data in R
Computational Techniques for the Statistical Analysis of Big Data in R
herbps10
 
GPUs in Big Data - StampedeCon 2014
GPUs in Big Data - StampedeCon 2014GPUs in Big Data - StampedeCon 2014
GPUs in Big Data - StampedeCon 2014
StampedeCon
 
Enabling Graph Analytics at Scale: The Opportunity for GPU-Acceleration of D...
Enabling Graph Analytics at Scale:  The Opportunity for GPU-Acceleration of D...Enabling Graph Analytics at Scale:  The Opportunity for GPU-Acceleration of D...
Enabling Graph Analytics at Scale: The Opportunity for GPU-Acceleration of D...
odsc
 
The Potential of GPU-driven High Performance Data Analytics in Spark
The Potential of GPU-driven High Performance Data Analytics in SparkThe Potential of GPU-driven High Performance Data Analytics in Spark
The Potential of GPU-driven High Performance Data Analytics in Spark
Spark Summit
 
TensorFrames: Google Tensorflow on Apache Spark
TensorFrames: Google Tensorflow on Apache SparkTensorFrames: Google Tensorflow on Apache Spark
TensorFrames: Google Tensorflow on Apache Spark
Databricks
 
Performance evaluation
Performance evaluationPerformance evaluation
Performance evaluation
Mamadou Barry
 
Debugging Apache Spark - Scala & Python super happy fun times 2017
Debugging Apache Spark -   Scala & Python super happy fun times 2017Debugging Apache Spark -   Scala & Python super happy fun times 2017
Debugging Apache Spark - Scala & Python super happy fun times 2017
Holden Karau
 
Vasiliy Litvinov - Python Profiling
Vasiliy Litvinov - Python ProfilingVasiliy Litvinov - Python Profiling
Vasiliy Litvinov - Python Profiling
Sergey Arkhipov
 
What’s eating python performance
What’s eating python performanceWhat’s eating python performance
What’s eating python performance
Piotr Przymus
 
Denis Nagorny - Pumping Python Performance
Denis Nagorny - Pumping Python PerformanceDenis Nagorny - Pumping Python Performance
Denis Nagorny - Pumping Python Performance
Sergey Arkhipov
 
The High Performance Python Landscape by Ian Ozsvald
The High Performance Python Landscape by Ian OzsvaldThe High Performance Python Landscape by Ian Ozsvald
The High Performance Python Landscape by Ian Ozsvald
PyData
 
Boost.Python: C++ and Python Integration
Boost.Python: C++ and Python IntegrationBoost.Python: C++ and Python Integration
Boost.Python: C++ and Python Integration
GlobalLogic Ukraine
 
Spark + Scikit Learn- Performance Tuning
Spark + Scikit Learn- Performance TuningSpark + Scikit Learn- Performance Tuning
Spark + Scikit Learn- Performance Tuning
晨揚 施
 
Python profiling
Python profilingPython profiling
Python profiling
dreampuf
 
GTC 2012: GPU-Accelerated Path Rendering
GTC 2012: GPU-Accelerated Path RenderingGTC 2012: GPU-Accelerated Path Rendering
GTC 2012: GPU-Accelerated Path Rendering
Mark Kilgard
 
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web RenderingSIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
Mark Kilgard
 
Accelerating Machine Learning Applications on Spark Using GPUs
Accelerating Machine Learning Applications on Spark Using GPUsAccelerating Machine Learning Applications on Spark Using GPUs
Accelerating Machine Learning Applications on Spark Using GPUs
IBM
 
PG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated AsyncrPG-Strom - GPU Accelerated Asyncr
PG-Strom - GPU Accelerated Asyncr
Kohei KaiGai
 
Deep learning on spark
Deep learning on sparkDeep learning on spark
Deep learning on spark
Satyendra Rana
 
Computational Techniques for the Statistical Analysis of Big Data in R
Computational Techniques for the Statistical Analysis of Big Data in RComputational Techniques for the Statistical Analysis of Big Data in R
Computational Techniques for the Statistical Analysis of Big Data in R
herbps10
 
GPUs in Big Data - StampedeCon 2014
GPUs in Big Data - StampedeCon 2014GPUs in Big Data - StampedeCon 2014
GPUs in Big Data - StampedeCon 2014
StampedeCon
 
Enabling Graph Analytics at Scale: The Opportunity for GPU-Acceleration of D...
Enabling Graph Analytics at Scale:  The Opportunity for GPU-Acceleration of D...Enabling Graph Analytics at Scale:  The Opportunity for GPU-Acceleration of D...
Enabling Graph Analytics at Scale: The Opportunity for GPU-Acceleration of D...
odsc
 
Ad

Similar to GPU Support in Spark and GPU/CPU Mixed Resource Scheduling at Production Scale (20)

FYP1 Progress Report (final)
FYP1 Progress Report (final)FYP1 Progress Report (final)
FYP1 Progress Report (final)
waqas khan
 
Cloud computing case study for btech.pptx
Cloud computing case study for btech.pptxCloud computing case study for btech.pptx
Cloud computing case study for btech.pptx
atul190389
 
CFD on Power
CFD on Power CFD on Power
CFD on Power
Ganesan Narayanasamy
 
Apache Hadoop YARN - The Future of Data Processing with Hadoop
Apache Hadoop YARN - The Future of Data Processing with HadoopApache Hadoop YARN - The Future of Data Processing with Hadoop
Apache Hadoop YARN - The Future of Data Processing with Hadoop
Hortonworks
 
Graphics processing unit ppt
Graphics processing unit pptGraphics processing unit ppt
Graphics processing unit ppt
Sandeep Singh
 
Parallel Computing on the GPU
Parallel Computing on the GPUParallel Computing on the GPU
Parallel Computing on the GPU
Tilani Gunawardena PhD(UNIBAS), BSc(Pera), FHEA(UK), CEng, MIESL
 
Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...
Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...
Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...
Databricks
 
Very large scale distributed deep learning on BigDL
Very large scale distributed deep learning on BigDLVery large scale distributed deep learning on BigDL
Very large scale distributed deep learning on BigDL
DESMOND YUEN
 
Apache Tez : Accelerating Hadoop Query Processing
Apache Tez : Accelerating Hadoop Query ProcessingApache Tez : Accelerating Hadoop Query Processing
Apache Tez : Accelerating Hadoop Query Processing
Bikas Saha
 
High Performance Deep learning with Apache Spark
High Performance Deep learning with Apache SparkHigh Performance Deep learning with Apache Spark
High Performance Deep learning with Apache Spark
Rui Liu
 
Hybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
Hybrid Map Task Scheduling for GPU-based Heterogeneous ClustersHybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
Hybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
Koichi Shirahata
 
How @twitterhadoop chose google cloud
How @twitterhadoop chose google cloudHow @twitterhadoop chose google cloud
How @twitterhadoop chose google cloud
lohitvijayarenu
 
071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen
Steve Feldman
 
How @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenu
How @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenuHow @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenu
How @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenu
Yahoo Developer Network
 
Apache Tez: Accelerating Hadoop Query Processing
Apache Tez: Accelerating Hadoop Query ProcessingApache Tez: Accelerating Hadoop Query Processing
Apache Tez: Accelerating Hadoop Query Processing
Hortonworks
 
Task allocation on many core-multi processor distributed system
Task allocation on many core-multi processor distributed systemTask allocation on many core-multi processor distributed system
Task allocation on many core-multi processor distributed system
Deepak Shankar
 
Apache Tez - Accelerating Hadoop Data Processing
Apache Tez - Accelerating Hadoop Data ProcessingApache Tez - Accelerating Hadoop Data Processing
Apache Tez - Accelerating Hadoop Data Processing
hitesh1892
 
Apache Tez - A New Chapter in Hadoop Data Processing
Apache Tez - A New Chapter in Hadoop Data ProcessingApache Tez - A New Chapter in Hadoop Data Processing
Apache Tez - A New Chapter in Hadoop Data Processing
DataWorks Summit
 
Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...
Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...
Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...
Carlos Reaño González
 
An overview of reference architectures for Postgres
An overview of reference architectures for PostgresAn overview of reference architectures for Postgres
An overview of reference architectures for Postgres
EDB
 
FYP1 Progress Report (final)
FYP1 Progress Report (final)FYP1 Progress Report (final)
FYP1 Progress Report (final)
waqas khan
 
Cloud computing case study for btech.pptx
Cloud computing case study for btech.pptxCloud computing case study for btech.pptx
Cloud computing case study for btech.pptx
atul190389
 
Apache Hadoop YARN - The Future of Data Processing with Hadoop
Apache Hadoop YARN - The Future of Data Processing with HadoopApache Hadoop YARN - The Future of Data Processing with Hadoop
Apache Hadoop YARN - The Future of Data Processing with Hadoop
Hortonworks
 
Graphics processing unit ppt
Graphics processing unit pptGraphics processing unit ppt
Graphics processing unit ppt
Sandeep Singh
 
Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...
Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...
Updates from Project Hydrogen: Unifying State-of-the-Art AI and Big Data in A...
Databricks
 
Very large scale distributed deep learning on BigDL
Very large scale distributed deep learning on BigDLVery large scale distributed deep learning on BigDL
Very large scale distributed deep learning on BigDL
DESMOND YUEN
 
Apache Tez : Accelerating Hadoop Query Processing
Apache Tez : Accelerating Hadoop Query ProcessingApache Tez : Accelerating Hadoop Query Processing
Apache Tez : Accelerating Hadoop Query Processing
Bikas Saha
 
High Performance Deep learning with Apache Spark
High Performance Deep learning with Apache SparkHigh Performance Deep learning with Apache Spark
High Performance Deep learning with Apache Spark
Rui Liu
 
Hybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
Hybrid Map Task Scheduling for GPU-based Heterogeneous ClustersHybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
Hybrid Map Task Scheduling for GPU-based Heterogeneous Clusters
Koichi Shirahata
 
How @twitterhadoop chose google cloud
How @twitterhadoop chose google cloudHow @twitterhadoop chose google cloud
How @twitterhadoop chose google cloud
lohitvijayarenu
 
071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen
Steve Feldman
 
How @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenu
How @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenuHow @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenu
How @TwitterHadoop Chose Google Cloud, Joep Rottinghuis, Lohit VijayaRenu
Yahoo Developer Network
 
Apache Tez: Accelerating Hadoop Query Processing
Apache Tez: Accelerating Hadoop Query ProcessingApache Tez: Accelerating Hadoop Query Processing
Apache Tez: Accelerating Hadoop Query Processing
Hortonworks
 
Task allocation on many core-multi processor distributed system
Task allocation on many core-multi processor distributed systemTask allocation on many core-multi processor distributed system
Task allocation on many core-multi processor distributed system
Deepak Shankar
 
Apache Tez - Accelerating Hadoop Data Processing
Apache Tez - Accelerating Hadoop Data ProcessingApache Tez - Accelerating Hadoop Data Processing
Apache Tez - Accelerating Hadoop Data Processing
hitesh1892
 
Apache Tez - A New Chapter in Hadoop Data Processing
Apache Tez - A New Chapter in Hadoop Data ProcessingApache Tez - A New Chapter in Hadoop Data Processing
Apache Tez - A New Chapter in Hadoop Data Processing
DataWorks Summit
 
Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...
Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...
Optimizing Hardware Resource Partitioning and Job Allocations on Modern GPUs ...
Carlos Reaño González
 
An overview of reference architectures for Postgres
An overview of reference architectures for PostgresAn overview of reference architectures for Postgres
An overview of reference architectures for Postgres
EDB
 
Ad

More from sparktc (13)

Apache Spark™ Applications the Easy Way - Pierre Borckmans
Apache Spark™ Applications the Easy Way - Pierre BorckmansApache Spark™ Applications the Easy Way - Pierre Borckmans
Apache Spark™ Applications the Easy Way - Pierre Borckmans
sparktc
 
Hyperparameter Optimization - Sven Hafeneger
Hyperparameter Optimization - Sven HafenegerHyperparameter Optimization - Sven Hafeneger
Hyperparameter Optimization - Sven Hafeneger
sparktc
 
Data Science Hub & the Data Science Community - Philippe Van Impe
Data Science Hub & the Data Science Community - Philippe Van ImpeData Science Hub & the Data Science Community - Philippe Van Impe
Data Science Hub & the Data Science Community - Philippe Van Impe
sparktc
 
Data Science and Beer - Kris peeters
Data Science and Beer - Kris peetersData Science and Beer - Kris peeters
Data Science and Beer - Kris peeters
sparktc
 
Holden Karau - Spark ML for Custom Models
Holden Karau - Spark ML for Custom ModelsHolden Karau - Spark ML for Custom Models
Holden Karau - Spark ML for Custom Models
sparktc
 
Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...
Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...
Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...
sparktc
 
DeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François GarillotDeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François Garillot
sparktc
 
DeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François GarillotDeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François Garillot
sparktc
 
Building Custom
Machine Learning Algorithms
with Apache SystemML
Building Custom
Machine Learning Algorithms
with Apache SystemMLBuilding Custom
Machine Learning Algorithms
with Apache SystemML
Building Custom
Machine Learning Algorithms
with Apache SystemML
sparktc
 
The Internet of Everywhere — How The Weather Company Scales
The Internet of Everywhere — How The Weather Company ScalesThe Internet of Everywhere — How The Weather Company Scales
The Internet of Everywhere — How The Weather Company Scales
sparktc
 
STC Design - Engage
STC Design - EngageSTC Design - Engage
STC Design - Engage
sparktc
 
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
sparktc
 
Spark Summit EU: IBM Keynote
Spark Summit EU: IBM KeynoteSpark Summit EU: IBM Keynote
Spark Summit EU: IBM Keynote
sparktc
 
Apache Spark™ Applications the Easy Way - Pierre Borckmans
Apache Spark™ Applications the Easy Way - Pierre BorckmansApache Spark™ Applications the Easy Way - Pierre Borckmans
Apache Spark™ Applications the Easy Way - Pierre Borckmans
sparktc
 
Hyperparameter Optimization - Sven Hafeneger
Hyperparameter Optimization - Sven HafenegerHyperparameter Optimization - Sven Hafeneger
Hyperparameter Optimization - Sven Hafeneger
sparktc
 
Data Science Hub & the Data Science Community - Philippe Van Impe
Data Science Hub & the Data Science Community - Philippe Van ImpeData Science Hub & the Data Science Community - Philippe Van Impe
Data Science Hub & the Data Science Community - Philippe Van Impe
sparktc
 
Data Science and Beer - Kris peeters
Data Science and Beer - Kris peetersData Science and Beer - Kris peeters
Data Science and Beer - Kris peeters
sparktc
 
Holden Karau - Spark ML for Custom Models
Holden Karau - Spark ML for Custom ModelsHolden Karau - Spark ML for Custom Models
Holden Karau - Spark ML for Custom Models
sparktc
 
Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...
Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...
Creating an end-to-end Recommender System with Apache Spark and Elasticsearch...
sparktc
 
DeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François GarillotDeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François Garillot
sparktc
 
DeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François GarillotDeepLearning4J and Spark: Successes and Challenges - François Garillot
DeepLearning4J and Spark: Successes and Challenges - François Garillot
sparktc
 
Building Custom
Machine Learning Algorithms
with Apache SystemML
Building Custom
Machine Learning Algorithms
with Apache SystemMLBuilding Custom
Machine Learning Algorithms
with Apache SystemML
Building Custom
Machine Learning Algorithms
with Apache SystemML
sparktc
 
The Internet of Everywhere — How The Weather Company Scales
The Internet of Everywhere — How The Weather Company ScalesThe Internet of Everywhere — How The Weather Company Scales
The Internet of Everywhere — How The Weather Company Scales
sparktc
 
STC Design - Engage
STC Design - EngageSTC Design - Engage
STC Design - Engage
sparktc
 
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
sparktc
 
Spark Summit EU: IBM Keynote
Spark Summit EU: IBM KeynoteSpark Summit EU: IBM Keynote
Spark Summit EU: IBM Keynote
sparktc
 

Recently uploaded (20)

Adobe Photoshop CC 2025 Crack Full Serial Key With Latest
Adobe Photoshop CC 2025 Crack Full Serial Key  With LatestAdobe Photoshop CC 2025 Crack Full Serial Key  With Latest
Adobe Photoshop CC 2025 Crack Full Serial Key With Latest
usmanhidray
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Adobe Photoshop Lightroom CC 2025 Crack Latest Version
Adobe Photoshop Lightroom CC 2025 Crack Latest VersionAdobe Photoshop Lightroom CC 2025 Crack Latest Version
Adobe Photoshop Lightroom CC 2025 Crack Latest Version
usmanhidray
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Sales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptxSales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptx
EliandoLawnote
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Xforce Keygen 64-bit AutoCAD 2025 Crack
Xforce Keygen 64-bit AutoCAD 2025  CrackXforce Keygen 64-bit AutoCAD 2025  Crack
Xforce Keygen 64-bit AutoCAD 2025 Crack
usmanhidray
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 
Adobe Photoshop CC 2025 Crack Full Serial Key With Latest
Adobe Photoshop CC 2025 Crack Full Serial Key  With LatestAdobe Photoshop CC 2025 Crack Full Serial Key  With Latest
Adobe Photoshop CC 2025 Crack Full Serial Key With Latest
usmanhidray
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Adobe Photoshop Lightroom CC 2025 Crack Latest Version
Adobe Photoshop Lightroom CC 2025 Crack Latest VersionAdobe Photoshop Lightroom CC 2025 Crack Latest Version
Adobe Photoshop Lightroom CC 2025 Crack Latest Version
usmanhidray
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
Sales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptxSales Deck SentinelOne Singularity Platform.pptx
Sales Deck SentinelOne Singularity Platform.pptx
EliandoLawnote
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Xforce Keygen 64-bit AutoCAD 2025 Crack
Xforce Keygen 64-bit AutoCAD 2025  CrackXforce Keygen 64-bit AutoCAD 2025  Crack
Xforce Keygen 64-bit AutoCAD 2025 Crack
usmanhidray
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 

GPU Support in Spark and GPU/CPU Mixed Resource Scheduling at Production Scale

  • 1. GPU Support in Spark and GPU/CPU Mixed Resource Scheduling at Production Scale Yonggang Hu, IBM, Distinguished Engineer Junfeng Liu, IBM, Architect
  • 2. About us • Yonggang Hu Distinguished Engineer, IBM Chief Architect at Spectrum Computing, IBM. Vice President and Application Architect at JPMorgan Chase Working on distributed computing, grid, cloud and big data for the past 20 years. • Junfeng Liu IBM Spectrum Computing Architect, focusing on Big data platform design and implementation. Successfully delivering solutions to key customers. 2
  • 3. Agenda • GPU and Spark integration motivation • The challenges of production deployments • Solutions • Demo • IBM® Spectrum Conductor with Spark 3
  • 4. Spark and GPU Spark apps are CPU intensive Need to handle more data and bigger models Machine Learning Predictive analytics, Logistic regression, ALS Kmeans, etc. Graph Analytics Security, Fraud Detection Social Network Analytics GraphX Video/Speech Analytics Object Recognition Dialog Financial Risk Analytics Market simulation Credit risk, home-grown, apps from Murex, Misys Spark-enable existing GPU appsGPU-enable Spark apps 4
  • 5. Various ways to integrate Spark and GPUs • Use GPUs for accelerating Spark Libraries and operations without changing interfaces and programming model – IBM Open source project: https://github.com/IBMSparkGPU – Nvidia GTC 2016 talk, • http://on-demand.gputechconf.com/gtc/2016/presentation/s6280-rajesh-bordawekar-accelerating-spark.pdf • http://on-demand.gputechconf.com/gtc/2016/video/S6211.html • Automatically generate CUDA code from the source Spark Java code – Nvidia GTC 2016 talk: http://on-demand.gputechconf.com/gtc/2016/presentation/s6346-kazuaki- ishizaki-gpu-programming-java-programmers.pdf • Integrate Spark with GPU-enabled application and system (e.g., Spark integrated with Caffe, TensorFlow and customer applications) 5
  • 6. Production challenges • However – Identification of GPU execution vs. CPU execution in DAG – Data preparation for GPU execution – Low resource utilization for CPU or GPU or both • Cannot assume all compute hosts are identical and have GPU resource available • GPU is a lot more expensive !!! – Overload and contention when running mixed GPU and CPU workload – Long tail and GPU / CPU tasks failover – Monitoring and management Stage 2Stage 1 collect reduceByKey Stage GPU GPU Group CPU Group 6
  • 7. A typical example Personalized Medicine – Adverse Drug Reaction Workload - 30X faster at learning speed and 4X speed up end-to-end - Need to fully utilize both GPU and CPU resources to get economic benefits 7 Source: http://on-demand.gputechconf.com/gtc/2016/presentation/s6280-rajesh-bordawekar-accelerating-spark.pdf 4X is not enough
  • 8. Scheduling granularity • Scheduling at application level – Mesos and YARN tag the GPU machine with label – Schedule the application on GPU hosts based on resource requirement of application – Coarse-grained scheduling leads to low utilization of CPU/GPU • Scheduling at DAG level – Need fine-grained sharing for GPU resources rather than reserving entire GPU machines – Identify GPU operation – Optimize the DAG tree by decoupling GPU operations from CPU operations and by inserting new GPU stages – Reduce GPU wait time, enable sharing of GPUs among different jobs and therefore improve the overall GPU utilization 8
  • 9. GPU task recognition • GPU and CPU tasks mixed together • Need to separate the workloads for scheduling control GPUFunction() Python-C Wrapper to Invoke Native Function Function implemented by CUDA/OpenCL GPU libraryPython-C/C++ Wrapper 9
  • 10. GPU task recognition • Mark the GPU workload by DAG operation – Go through the DAG tree to identify stages with GPU requirement – Optimize the distribution by inserting GPU stage 10
  • 11. Policies • Resource manager needs to be able to identify the GPU hosts and manage along with CPU resources • Prioritization policy - share GPU resources among applications • Allocation policy – control GPU and CPU allocation independently – multi-dimensional scheduling • Fine-grained policy to schedule tasks according to GPU-optimized DAG plan 11
  • 12. Adaptive scheduling • CPU and GPU tasks are convertible in many applications • Scheduling needs adaptive capability – If GPU is available, use a portion of GPU – Otherwise run rest of tasks on CPU dstInBlocks.join(merged).mapV alues { …. if (useGPU) { loadGPULib() callGPU () } else { //CPU version } } 12
  • 14. Efficiency considerations • Do we need to wait for a GPU resource if there is a CPU available? • Do we need rerun the CPU tasks on GPU if tasks on CPU are long-tail? • Do we need to have failover cross-resource type? 14
  • 15. Defer scheduling • Traditional defer scheduling – Wait for data locality – Cache, Host, Rack • Resource-based defer scheduling – Necessary if the GPU can greatly speed up task execution – Wait time is acceptable 15
  • 16. Evaluation • Machine Learning – ALS on GPU – IBM Spark on GPU project – Various ML implementation on GPU – https://github.com/IBMSparkGPU • MovieLensALS Example – Spark Example, without modification – Binary compatible with Spark Application – Data Source • http://grouplens.org/datasets/movielens/
  • 18. Future work • Global optimization – Consider the cost of additional shuffle stage – Consider data locality of CPU and GPU stages – Add time dimension to MDS (multi-dimensional scheduling) – Optimize global DAG tree execution – Use historical data to optimize future execution, e.g, future iteration 18
  • 19. Fine grain, dynamic allocation of resources maximizes efficiency of Spark instances sharing a common resource pool. Multi-tenant, multi-framework support. Eliminates cluster sprawl. 2 Run Spark natively on a shared infrastructure without the dependency of Hadoop. Reduce application wait time, improving time to results. 1 Building a Spark-Centric Shared Service with IBM spectrum Conductor End-to-End Enterprise Class Solution Improve Time to Results Proven architecture at extreme scale, with enterprise class workload management, multi-version support for Spark, monitoring, reporting, and security capabilities. 3 Reduce Administration Costs Increase Resource Utilization • IBM STC Spark Distribution • IBM Platform Resource Orchestrator / Session Scheduler, application service manager. • IBM Spectrum Scale FPO 4 19 http://www-03.ibm.com/systems/spectrum-computing/products/conductor/
  • 20. IBM Spectrum Conductor with Spark IBM Bluemix Spark Cloud Service in production – thousands of users and tenants Third party audited benchmark indicated significant performance / throughput / SLA advantages https://ibm.biz/Bd4Tyw 20
  • 21. IBM Spectrum Conductor with Spark Monitor and Reporting with Elastic (ELK)  Integrated Elastic Search, Logstash, Kibana for customizable monitoring  Built-in monitoring Metrics  Cross Spark Instance Groups  Cross Spark Applications within Spark Instance Group  Within Spark Application  Built-in monitoring inside Zeppelin Notebook 21
  • 23. THANK YOU. Visit us at the IBM booth in the expo www.ibm.com/spectrum-conductor [email protected] [email protected]

Editor's Notes

  • #5: The synergy is coming from two directions. There are many existing GPU applications, such as deep learning apps – Caffe, Torch, commercial or home grown apps doing risk calculation etc, They could leverage Spark to support data distribution and data parallelization of computation on multiple GPU card. On the other hand, it is already well known that many Spark apps are compute intensive – within each Spark task there are many parallizable elements – Instead of running them on CPU, running them on GPU will greatly improve the performance. For example, we have implemented some of Mllib functions on GPU and achieve great speed. Also if each node does more work, we can reduce communication and network traffic.
  • #6: IBM is actively working on and contributing to all three areas. Rajesh had a very talk on our work to accelerate Spark Mllib using GPU without changing Spark interface. Wei Tan presentation demonstrate how to use GPU to accelerate ALS. Our Japan team and Canada team worked on this thread. They had a talk at GTC 2016, and showed how to program GPU in pure Java using new parallel streaming API and JIT Cuda code generation.
  • #7: How to effectively map Spark partitions to GPU nodes, then to make sure data will fit into GPU memory and move necessary data to GPU. Data might need to shuffled and certain data format (columnar format) is more suitable for GPU access. Spark memory manager needs to consider GPU memory as well. Spark is not GPU aware – when it creates DAG, when it distributes partition, manages memory. There is no way you can monitor and control it. How many GPUs are there, how GPUs are being used, utilization, etc.?
  • #8: Builds a LBFGS – based logistic regression model to classify drug pairs
  • #20: Spark centric infrastructure with Conductor
  • #22: 21