Overview

The Microbenchmarks Lab is derived from the spark-rapids-example repo. The microbenchmark on RAPIDS Accelerator For Apache Spark is to identify, test and analyze the best queries which can be accelerated on the GPU.

The queries are based on several tables in Parquet format derived from the TPC-DS benchmark, so that similar speedups can be reproducible by others. The microbenchmarks include commonly used Spark SQL operations such as expand, hash aggregate, windowing, and cross join and runs the same queries in CPU mode and GPU mode. Expand and HashAggregate functions are much faster because GPU algorithms allow us to parallelize the computation on data dimension and we can take advantage of the GPU cores. Same reason for the windowing function, and especially when there is data skew. Join functions such as GpuShuffleHashJoin or GpuBroadcastNestedLoopJoin are also well suited for running on GPUs as they are optimized for maximum performance. You can see some queries are faster the second time, which can be caused by JVM JIT, initialization overhead or caching input data in the OS page cache, etc. The improved performance is influenced by many components, including the dataset’s scale factors and the GPU accelerator model.

  1. Copy and paste is available on the Desktop VNC connection. You will see a sidebar on the left of the screen and once that is opened you can paste into the clipboard. Once you have pasted something it is immediately available to paste within the VNC desktop

spark-rapids-003.png


© Copyright 2022-2023, NVIDIA. Last updated on Jun 23, 2023.