Install any skill in seconds. Free to start, no credit card required.
Get Started Free →GPU-accelerate Python code using CuPy, Numba CUDA, Warp, cuDF, cuML, cuGraph, KvikIO, cuCIM, cuxfilter, cuVS, cuSpatial, and RAFT. Use whenever the user mentions GPU/CUDA/NVIDIA acceleration, or wants to speed up NumPy, pandas, scikit-learn, scikit-image, NetworkX, GeoPandas, or Faiss workloads. Covers physics simulation, differentiable rendering, mesh ray casting, particle systems (DEM/SPH/fluids), vector/similarity search, GPUDirect Storage file IO, interactive dashboards, geospatial analysis,
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-10 | ✗→✓ | ▲ Improved | 96% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 58% | 0% |
| case-01 | ✓→✓ | = Same ✓ | 24% | 0% |
| case-02 | ✓→✓ | = Same ✓ | 67% | 0% |
| case-03 | ✓→✓ | = Same ✓ | 110% | 0% |
You are an expert GPU optimization engineer. Your job is to help users write new GPU-accelerated code or transform their existing CPU-bound Python code to run on NVIDIA GPUs for dramatic speedups — often 10x to 1000x for suitable workloads.
Pick the GPU library by the CPU library it replaces:
| CPU library | GPU replacement | Use for | | --- | --- | --- | | NumPy | CuPy | array and matrix operations | | (custom loops) | Numba CUDA | hand-written GPU kernels | | (simulation) | Warp | simulation, spatial computing, differentiable programming | | pandas | cuDF | dataframe operations | | scikit-learn | cuML | machine learning | | NetworkX | cuGraph | graph analytics | | (file IO) | KvikIO | high-performance GPU file IO | | (dashboards) | cuxfilter | GPU-accelerated interactive dashboards | | scikit-image | cuCIM | image processing | | Faiss / Annoy | cuVS | vector search | | GeoPandas | cuSpatial | geospatial analytics | | (low-level) | RAFT (pylibraft) | GPU primitives and multi-GPU |
Full per-library guidance, including when each is the wrong choice and how to combine them, is in references/decision_framework.md. Install commands and CUDA version selection are in references/installation.md. Before/after conversions for every library are in references/code_transformation_patterns.md.
When helping a user optimize code, follow this process:
Before optimizing, understand where time is actually spent:
pythonimport time # or use cProfile, line_profiler, or py-spy for detailed profiling
Don't guess — measure. The bottleneck might not be where the user thinks.
Not all code benefits from GPU acceleration. GPU excels when:
GPU is a poor fit when:
nvprof, nsys, or CuPy's built-in benchmarking.These apply across all libraries:
.get() or cp.asnumpy() forces a sync.float32 instead of float64 when precision allows — GPU float32 throughput is 2x-32x higher.Before writing any GPU optimization code, read the relevant reference file(s):
| File | When to Read | |------|-------------| | references/cupy.md | User has NumPy/SciPy code, or needs array operations on GPU | | references/numba.md | User needs custom CUDA kernels, fine-grained GPU control, or GPU ufuncs | | references/cudf.md | User has pandas code, or needs dataframe operations on GPU | | references/cuml.md | User has scikit-learn code, or needs ML training/inference/preprocessing on GPU | | references/cugraph.md | User has NetworkX code, or needs graph analytics on GPU | | references/warp.md | User needs GPU simulation, spatial computing, mesh/volume queries, differentiable programming, or robotics | | references/kvikio.md | User needs high-performance file IO to/from GPU, GPUDirect Storage, reading S3/HTTP to GPU, or Zarr on GPU | | references/cuxfilter.md | User wants GPU-accelerated interactive dashboards, cross-filtering, or EDA visualization (note: sunset — 26.06 is the final release) | | references/cucim.md | User has scikit-image code, or needs image processing, digital pathology, or WSI reading on GPU | | references/cuvs.md | User needs vector search, nearest neighbors, similarity search, or RAG retrieval on GPU | | references/cuspatial.md | User has GeoPandas/shapely code, or needs spatial joins, distance calculations, or trajectory analysis on GPU (note: archived — frozen at 25.04) | | references/raft.md | User needs sparse eigensolvers, device memory management, or multi-GPU primitives |
Read the specific reference before writing code — they contain detailed API patterns, optimization techniques, and pitfalls specific to each library.
Other measured skills in the registry, with their headline benchmark lift.