5.2 Why GPUs speed up data science

NCA-ADS · Foundations of Accelerated Data Science (12% of the exam) · Official objective: “Core GPU acceleration concepts and advantages for data science”

Accelerated computing, parallelism and measuring speedups.

Key points

  1. Parallel processing means doing many operations at the same time. GPUs run thousands of operations at once, which suits data science on large tables.

    What NVIDIA says (1)

    “Accelerated computing is the use of specialized hardware to dramatically speed up work, using parallel processing that bundles frequently occurring tasks.”

    — What Is Accelerated Computing?

  2. A GPU has many cores built for throughput. A column operation applies the same step to every value, which maps well to many cores.

    What NVIDIA says (1)

    “By contrast, GPUs break complex problems into thousands or millions of separate tasks and work them out at once.”

    — What's the Difference Between a CPU and a GPU?

  3. Benchmarking means measuring run time under the same conditions. The profiler shows fallbacks that can eat the speedup.

    What NVIDIA says (2)

    “Additionally, you can use Python magic commands like %%time and %%timeit to enable benchmarks of specific code blocks that facilitate direct comparisons of runtime between pandas (CPU) and the cuDF accelerator for pandas (GPU).”

    — Get Started with GPU Acceleration for Data Science

    “The profiler will indicate which functions ran on GPU / CPU.”

    — cuDF: cudf.pandas FAQ and Known Issues

Key terms

Try it

Sample question

What is accelerated computing?

Show the answer

Answer: Using specialized hardware such as GPUs to speed up work through parallel processing

Parallel processing means doing many operations at the same time. GPUs run thousands of operations at once, which suits data science on large tables.

What NVIDIA says (1)

“Accelerated computing is the use of specialized hardware to dramatically speed up work, using parallel processing that bundles frequently occurring tasks.”

— What Is Accelerated Computing?

Practice 5.2 (3 questions) Full Foundations of Accelerated Data Science guide

← 5.1 Python for data analysis · 5.3 CPU versus GPU workloads and memory transfers →