Skip to content
Back to skills

Rseng Gpu Computing

ASecurity

Covers GPU and accelerator programming for research software: choosing a programming model (CUDA, HIP, SYCL, OpenACC, OpenMP offloading), GPU libraries, language bindings such as CuPy, PyCUDA and CUDA.jl, portability layers like Kokkos and Raja, source-to-source translation, kernel profiling and auto-tuning. Use when the user wants to port research code to GPUs, pick between CUDA and portable alternatives, call GPU code from Python or Julia, tune or profile kernels, or mentions HIP, SYCL, Ope...

  • 20 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 19, 2026
ai-agentspythonc++testinggitapibackendperformancedocumentation

Works with

  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add fdiblen/rseng-agent-skills --skill rseng-gpu-computing --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Rseng Gpu Computing?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Rseng Gpu Computing
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/fdiblen-rseng-gpu-computing/badge)](https://www.skillsdirectory.com/skills/fdiblen-rseng-gpu-computing)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: rseng-gpu-computing
description: >-
  Covers GPU and accelerator programming for research software: choosing a
  programming model (CUDA, HIP, SYCL, OpenACC, OpenMP offloading), GPU
  libraries, language bindings such as CuPy, PyCUDA and CUDA.jl, portability
  layers like Kokkos and Raja, source-to-source translation, kernel profiling
  and auto-tuning. Use when the user wants to port research code to GPUs, pick
  between CUDA and portable alternatives, call GPU code from Python or Julia,
  tune or profile kernels, or mentions HIP, SYCL, OpenACC, Kokkos or Kernel
  Tuner.
license: CC-BY-4.0
metadata:
  version: 0.1.0
---

# GPU programming for research software

Accelerators dominate modern research computing, but the ecosystem is
fragmented: vendor-native models, portability layers and language
bindings each trade performance against maintainability. This skill turns
that landscape into decision support.

## Choosing a programming model

- CUDA: NVIDIA-native; largest ecosystem and learning material; locks
  the code to one vendor.
- HIP: AMD's near-CUDA model; a pragmatic path when AMD hardware is in
  scope, with source-to-source translation available from CUDA.
- SYCL: single-source C++ across vendors; growing research adoption.
- OpenACC / OpenMP offloading: directive-based; the gentlest port for
  existing Fortran/C code, at some control cost.

Decide by: target machines (which vendors, for how long), the team's
languages, and how much low-level control the kernels genuinely need.
Prefer libraries over hand-written kernels wherever an existing GPU
library covers the computation.

## Calling GPUs from high-level languages

Research code rarely starts in C++: CuPy and PyCUDA (Python) and
CUDA.jl (Julia) expose GPU arrays and kernels with far less ceremony.
Reach for them before rewriting a pipeline in a systems language, and
keep the array-API boundary clean so kernels stay swappable.

## Portability layers

Kokkos and Raja abstract over backends for C++ codebases that must
outlive any single vendor; they suit infrastructure-tier software with
long horizons more than one-off analysis kernels.

## Performance work

- Profile before optimizing, with the vendor profilers; measure
  transfers as well as kernels - data movement dominates many research
  workloads.
- Auto-tuning tools (for example Kernel Tuner) search launch
  configurations systematically; prefer them to hand-tuned magic
  numbers, and record tuned configurations per hardware target.
- Keep a CPU reference path for correctness testing (rseng-testing) and
  document the hardware requirements (rseng-documentation,
  rseng-reproducible-environments for the driver/toolkit environment).

## Working with this skill

The generated references.md beside this file lists the source material
and pointers:

- references.md - verified Learn more pointers


Learn more (verified):
  - https://docs.nvidia.com/cuda/ - NVIDIA CUDA Toolkit documentation
  - https://rocm.docs.amd.com - AMD ROCm and HIP documentation
  - https://docs.cupy.dev - CuPy GPU array library for Python
  - https://kokkos.org - Kokkos performance portability ecosystem
  - https://enccs.github.io/gpu-programming/ - ENCCS GPU
    programming lesson

<!-- related-skills:begin -->

## Related skills

Check whether any of these applies before moving on:

- rseng-green-computing - accelerator energy efficiency matching
- rseng-hpc-computing - running GPU jobs on clusters
- rseng-numerical-accuracy - float32 precision consequences
- rseng-performance-profiling - verify GPU is warranted first
- rseng-reproducible-environments - driver and toolkit pinning
- rseng-testing - CPU reference path for correctness

<!-- related-skills:end -->

Files in this skill

  • SKILL.md3.6 KB
  • references.md491 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…