shader-edsl-compute

Implement compute shader pipelines and GPU unit tests with rendiation shader EDSL.

74|5|Updated Dec 13, 2019
One-click install
npx skills add https://github.com/mikialex/rendiation --skill shader-edsl-compute
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: shader-edsl-compute
Source: https://github.com/mikialex/rendiation/tree/main/.claude/skills/shader-edsl-compute
Command: npx skills add https://github.com/mikialex/rendiation --skill shader-edsl-compute

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Rendiation’s shader EDSL compute reference helps you design correct compute dispatches by explaining how to build compute pipelines and write GPU compute logic (IDs, memory spaces, synchronization, and common reduction patterns).

Core Features & Use Cases

  • Compute IDs & dispatch mapping: Use global/local/workgroup and subgroup IDs for indexing and workload decomposition.
  • Synchronization primitives: Apply storage, workgroup, and subgroup barriers to make memory interactions correct and deterministic.
  • Workgroup memory patterns: Define workgroup shared variables (including host-sized arrays) and use workgroup-uniform loads.
  • GPU-focused recipes: Implement workgroup reduction, per-invocation counting loops, storage buffer iteration, SSAO-style accumulate flows, and subgroup prefix sums.
  • GPU unit testing workflow: Run compute passes end-to-end (GPU init → dispatch → readback) to validate shader behavior.

Quick Start

Use shader-edsl-compute to implement and test a compute pipeline that writes results into a storage buffer using correct invocation indexing and optional GPU unit tests.

Frequently Asked Questions about shader-edsl-compute

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement workgroup reduction in a compute shader?

Workgroup reduction in a compute shader is implemented by defining workgroup shared variables and applying workgroup barriers to ensure deterministic memory interactions. You can use per-invocation counting loops and subgroup prefix sums to complete the parallel reduction patterns.

How do I synchronize GPU compute memory accesses using barriers?

Synchronizing GPU compute memory accesses requires applying storage, workgroup, and subgroup barriers to make memory interactions deterministic. These synchronization primitives ensure correct execution order when managing workgroup shared memory and storage buffer iteration.

How do I map global and local workgroup IDs to compute dispatch behavior?

Mapping global, local, workgroup, and subgroup IDs to compute dispatch behavior is done by indexing these IDs to decompose the workload. This mapping drives the compute graph execution and ensures correct resource binding order for deterministic execution.

Can I run GPU unit tests to validate compute shader behavior?

GPU unit tests validate compute shader behavior by running compute passes end-to-end from GPU initialization through dispatch to readback verification. This workflow confirms that your shader execution writes correct results into the storage buffer.

How to build a compute pipeline with cache-hashed configuration?

Building a compute pipeline with cache-hashed configuration requires satisfying specific pipeline construction requirements for correct resource binding order. This ensures deterministic execution of your compute shader dispatches using the shader EDSL.

What is the best way to manage workgroup shared memory in GPU compute?

Managing workgroup shared memory in GPU compute involves defining workgroup shared variables, including host-sized arrays, and utilizing workgroup-uniform loads. Applying workgroup barriers ensures that these memory interactions remain correct and deterministic across invocations.