Official agent skill

Tilegym Converting Cutile To Julia

by NVIDIA in NVIDIA/skills

Converts cuTile Python GPU kernels (@ct.kernel) to cuTile.jl Julia equivalents.

OfficialApache-2.0Auto-check passedWriting & Content

Install Tilegym Converting Cutile To Julia

skills CLI
$ npx skills add NVIDIA/skills --skill tilegym-converting-cutile-to-julia -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install NVIDIA/skills tilegym-converting-cutile-to-julia --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/NVIDIA/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/tilegym-converting-cutile-to-julia .claude/skills/tilegym-converting-cutile-to-julia && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
tilegym-converting-cutile-to-julia
GitHub stars
3.6k
Token cost
~1.7k tokens
SKILL.md length
490 words
Files
18 (incl. scripts, references)
Skills in repo
390
Repo updated
First seen
Licence
Apache-2.0

At a glance

Converts cuTile Python GPU kernels (@ct.kernel) to cuTile.jl Julia equivalents.

  • Works in 8 steps: Analyze the Python kernel: identify… → Write Julia kernel — julia/kernels/.jl… → Convert kernel signature (see… → …
  • Translating cuTile Python kernels to Julia cuTile.jl
  • SKILL.md covers Workflow Selection, Architecture, Instructions and ⚠️ Top Pitfalls, plus 3 more sections
  • Runs Python and Julia scripts from its folder; calls python

What it does

Tilegym Converting Cutile To Julia is an agent skill from NVIDIA/skills, published by the product's own GitHub organization. Converts cuTile Python GPU kernels (@ct.kernel) to cuTile.jl Julia equivalents. Handles kernel syntax translation, 0-indexed to 1-indexed conversion, broadcasting differences, memory layout (row-major to column-major), type system mapping, and launch API differences. Use when converting, porting, or translating cuTile Python kernels to Julia cuTile.jl, or debugging/optimizing existing Julia cuTile translations.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 24 other files, including scripts and reference files (for example `BENCHMARK.md`, `evals/evals.json` and `examples/01_add/cutile_python.py`).

It sits in Writing & Content, covering Translation. It works with Python. The repository describes itself as: Agent Skills for NVIDIA products — install into Claude Code, Codex, and other coding agents to run Physical AI, robotics, simulation, CUDA, and RAG workflows end to end. The licence is Apache-2.0.

When your agent uses it

  • Translating cuTile Python kernels to Julia cuTile.jl
  • Debugging/optimizing existing Julia cuTile translations

Example prompts

  • “Use the tilegym-converting-cutile-to-julia skill to convert cuTile Python GPU kernels (@ct.kernel) to cuTile.jl Julia equivalents”
  • “/tilegym-converting-cutile-to-julia”

Requirements

  • Python 3

Workflow steps

8 steps, taken from the first numbered list in SKILL.md.

  1. Analyze the Python kernel: identify patterns, shapes, dtypes, operations
  2. Write Julia kernel — julia/kernels/.jl with cuTile.jl kernel + bridge function(s)
  3. Convert kernel signature (see translations/workflow.md Phase 2)
  4. Convert kernel body (apply references/api-mapping.md + references/critical-rules.md)
  5. Write Julia test — julia/test/test_.jl using Test stdlib + NNlib.jl for reference
  6. Register test — add include(...) in julia/test/runtests.jl
  7. Validate — run the bundled validator: python /scripts/validate_cutile_jl.py
  8. Test — run julia --project=julia/ julia/test/runtests.jl

What it can do on your machine

Read from SKILL.md and the folder at commit 14a98ae. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python and Julia, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • julialang.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Tilegym Converting Cutile To Julia loads about 1.7k tokens when it runs, and up to ~9.2k if it reads all its reference files. Until then it costs about 112 tokens; SKILL.md has 490 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~112
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~9.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from NVIDIA/skills at commit 14a98ae, republished under its Apache-2.0 licence (© NVIDIA). 490 words, ~1,703 tokens.

Download SKILL.mdSave it as .claude/skills/tilegym-converting-cutile-to-julia/SKILL.md (or your agent's skills folder). This skill also uses 17 other files; get the full folder from GitHub.
name
tilegym-converting-cutile-to-julia
description
Converts cuTile Python GPU kernels (@ct.kernel) to cuTile.jl Julia equivalents. Handles kernel syntax translation, 0-indexed to 1-indexed conversion, broadcasting differences, memory layout (row-major to column-major), type system mapping, and launch API differences. Use when converting, porting, or translating cuTile Python kernels to Julia cuTile.jl, or debugging/optimizing existing Julia cuTile translations.
license
CC-BY-4.0 AND Apache-2.0
metadata.author
TileGym Team <TileGym@nvidia.com>
metadata.tags
cutile, julia, conversion, gpu, kernel

cuTile Python → cuTile.jl (Julia) Conversion

Convert @ct.kernel Python kernels to Julia function ... end cuTile.jl kernels.

Workflow Selection

Architecture

Julia kernels are standalone — no Python bridge, no pytest integration. The Julia sub-project lives in julia/ at the repo root with its own Project.toml for dependency management.

julia/                          # Self-contained Julia sub-project
├── Project.toml                # Dependencies: CUDA.jl, cuTile.jl, NNlib.jl, Test
├── kernels/                    # cuTile.jl kernel implementations
│   ├── add.jl                  # ← Ground-truth: 1D element-wise with alpha scaling (tensor+tensor, tensor+scalar)
│   ├── matmul.jl               # ← Ground-truth: 2D tiled MMA, standard Julia layout (M,K)×(K,N)→(M,N)
│   └── softmax.jl              # ← Ground-truth: 3 strategies (TMA, online, chunked) using ct.load/ct.store
└── test/                       # Julia-native tests (using Test stdlib)
    ├── runtests.jl             # Test runner entry point
    ├── test_add.jl
    ├── test_matmul.jl
    └── test_softmax.jl

Ground-truth reference: Always consult julia/kernels/*.jl and julia/test/*.jl for patterns that compile and pass tests. These are the canonical examples of working cuTile.jl code.

Instructions

  1. Analyze the Python kernel: identify patterns, shapes, dtypes, operations
  2. Write Julia kernel — julia/kernels/<op>.jl with cuTile.jl kernel + bridge function(s)
  3. Convert kernel signature (see translations/workflow.md Phase 2)
  4. Convert kernel body (apply references/api-mapping.md + references/critical-rules.md)
  5. Write Julia test — julia/test/test_<op>.jl using Test stdlib + NNlib.jl for reference
  6. Register test — add include(...) in julia/test/runtests.jl
  7. Validate — run the bundled validator: python <skill-dir>/scripts/validate_cutile_jl.py <file.jl>
  8. Test — run julia --project=julia/ julia/test/runtests.jl

Full conversion checklist with post-conversion verification → translations/workflow.md

⚠️ Top Pitfalls

The most dangerous translation errors. Full rules (17 total) in references/critical-rules.md.

#PitfallOne-line fix
1ct.full() doesn't exist in JuliaUse fill(val, shape), zeros(T, dims...), or ones(T, dims...)
2max(a, b) on tiles → IRErrorUse max.(a, b) (broadcast dot)
3IRError / MethodError mentioning IRStructurizerCompiler bug — file upstream with minimal reproducer
4ct.launch arg order silently wrongArgs are positional — match kernel signature exactly
5ct.load with order — index positions wrongorder remaps BOTH shape AND index (Critical Rule 16)

Worked Examples

Side-by-side Python → Julia conversions matching the released Julia kernels in julia/kernels/. Each directory contains cutile_python.py (before) and cutile_julia.jl (after).

#ExampleKey PatternsWhen to Reference
01add1D ct.load/ct.store, alpha scaling, scalar broadcast, fill/zeros, keyword load/storeStarting point; basic TMA + element-wise patterns
02matmulmuladd, TF32 conversion, K-loop with for, 2D swizzle, standard Julia layout, ct.@compiler_optionsMMA / tensor core operations
03softmaxPersistent scheduling, for loops, gather/scatter, padding_mode, multi-passLarge-tensor reduction patterns

These match the released kernels in julia/kernels/ (add.jl, matmul.jl, softmax.jl). The examples are simplified teaching versions — always consult julia/kernels/*.jl for the canonical, tested implementations.

Show full SKILL.md (148 more words)Show less

Reference Documents

CategoryDocumentContent
Workflowstranslations/workflow.mdFull conversion workflow with todo list, validation loop, checklist
Rulesreferences/critical-rules.md17 Critical Rules for cuTile Python → Julia conversion
APIreferences/api-mapping.mdPython↔Julia bidirectional API mapping + kernel patterns
Testingreferences/testing.mdJulia-native test patterns, tolerances, failure diagnosis
Debuggingreferences/debugging.mdJulia-specific error diagnosis + IR debug commands
Scriptsscripts/validate_cutile_jl.pyStatic validation for Julia anti-patterns (run it)
Ground Truthjulia/kernels/*.jl + julia/test/*.jlActual working implementations in the codebase

Environment Setup

Prerequisite — Julia: this skill requires the Julia version declared in julia/Project.toml under [compat] julia. If julia --version is missing or older than that, install from the official Julia site at https://julialang.org/install/ following the verified installer instructions for your OS. Resume below once julia --version is compatible.

Then, from the repo root:

bash
# Install Julia dependencies declared in julia/Project.toml
julia --project=julia/ -e 'using Pkg; Pkg.instantiate()'

# Run tests
julia --project=julia/ julia/test/runtests.jl

Requirements:

  • Julia (minimum version declared in julia/Project.toml under [compat] julia)
  • CUDA 13.1+ driver
  • Blackwell GPU (compute capability 10+)
  • Dependencies managed via julia/Project.toml: CUDA.jl, cuTile.jl, NNlib.jl, Test

© NVIDIA, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 17 other files (scripts, references) in skills/tilegym-converting-cutile-to-julia of NVIDIA/skills.

  • SKILL.md
  • BENCHMARK.md
  • evals/evals.json
  • examples/01_add/cutile_julia.jl
  • examples/01_add/cutile_python.py
  • examples/02_matmul/cutile_julia.jl
  • examples/02_matmul/cutile_python.py
  • examples/03_softmax/cutile_julia.jl
  • examples/03_softmax/cutile_python.py
  • references/api-mapping.md
  • references/critical-rules.md
  • references/debugging.md
  • references/testing.md
  • scripts/validate_cutile_jl.py
  • … and 4 more

Open the folder on GitHubat commit 14a98ae

Compare with similar skills

Tilegym Converting Cutile To Julia next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Tilegym Converting Cutile To Julia compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Tilegym Converting Cutile To Julia this skillNVIDIA/skills3.6k—~1.7kAutomated safety check: PassApache-2.0
China Travel Kittczyliu/china-travel-kit194—~1.3kAutomated safety check: PassMIT
Technology Searchfreestylefly/wesight946—~3.3kAutomated safety check: PassMIT
Translate Popython/python-docs-zh-tw284—~793Automated safety check: PassCustom licence
Obs Build LogsNuitka/Nuitka15k—~849Automated safety check: PassAGPL-3.0
Update Gui TranslationsArduPilot/MethodicConfigurator166—~1.5kAutomated safety check: PassGPL-3.0

Similar skills

  • China Travel Kit

    tczyliu/china-travel-kit

    Research and plan first-time independent trips in China with bilingual, source-aware city data and official live-check entry points.

    194 GitHub stars~1.3k tokensUpdated 1 mo ago
    Writing & ContentAuto-check passed
  • Technology Search

    freestylefly/wesight

    Search tech blogs, developer forums, and IT media (TechCrunch, Hacker News, 36氪, etc.) for software and hardware industry updates with heat ranking and EN↔CN translation.

    946 GitHub stars~3.3k tokensUpdated 9 days ago
    Writing & ContentAuto-check passed
  • Translate Po

    python/python-docs-zh-tw

    Official

    Translates PO file entries from English to Traditional Chinese (zhTW) following project conventions.

    284 GitHub stars~793 tokensUpdated yesterday
    Writing & ContentAuto-check passed
  • Obs Build Logs

    Nuitka/Nuitka

    Access and diagnose openSUSE Build Service (OBS) package build logs.

    15k GitHub stars~849 tokensUpdated today
    Writing & ContentAuto-check passed
  • Update Gui Translations

    ArduPilot/MethodicConfigurator

    Update existing GUI translations using AI assistance. An agent skill from ArduPilot/MethodicConfigurator.

    166 GitHub stars~1.5k tokensUpdated today
    Writing & ContentAuto-check passed
  • Check Terminology

    python/python-docs-zh-tw

    Official

    Checks terminology consistency against project glossary and identifies zhCN terms that need conversion to zhTW.

    284 GitHub stars~705 tokensUpdated yesterday
    Writing & ContentAuto-check passed

More from NVIDIA/skills

All 390 skills in this repo
  • Official

    A skill your agent uses when the user wants to deploy, run, debug, tear down, or call the REST API of the RTVI-CV 2D detection / tracking microservice.

    3.6k GitHub starsUsed in 1 repo~4.5k tokens
    Auto-check passed
  • Official

    Generates, validates, compares and explains HOLOLINK_def.svh macro files for the HSB IP, using bundled Python scripts and asking before it writes anything.

    3.6k GitHub stars~2.9k tokensUpdated yesterday
    Auto-check passed
  • Official

    Runs and validates an end-to-end Mission Control demo in a locally installed Isaac Sim, with a Nova Carter robot driven through a Python server.

    3.6k GitHub stars~4.8k tokensUpdated yesterday
    Auto-check passed
  • Orchestrates defect image generation for PCBA, metal surface and glass inspection with NVIDIA Cosmos AnomalyGen on OSMO, from cold-start Day 0 to real-photo Day 1 labeling.

    3.6k GitHub stars~5k tokensUpdated yesterday
    Auto-check: notes
  • Orchestrates video data augmentation and auto-labeling workflows on OSMO, from flow selection and preflight checks to submission, monitoring and output download.

    3.6k GitHub stars~4.7k tokensUpdated yesterday
    Auto-check: notes
  • Official

    Runs NVIDIA TAO Data Services KPI analysis on object detection results, comparing predictions to ground truth and writing per-class precision, recall and AP to a CSV.

    3.6k GitHub stars~2.7k tokensUpdated yesterday
    Auto-check: notes

Works with

Questions about Tilegym Converting Cutile To Julia

What does Tilegym Converting Cutile To Julia do?

Converts cuTile Python GPU kernels (@ct.kernel) to cuTile.jl Julia equivalents. Tilegym Converting Cutile To Julia is an agent skill from NVIDIA/skills, published by the product's own GitHub organization.jl Julia equivalents.

When should I use Tilegym Converting Cutile To Julia?

Tilegym Converting Cutile To Julia fits situations like: translating cuTile Python kernels to Julia cuTile.jl; debugging/optimizing existing Julia cuTile translations.

How do I install Tilegym Converting Cutile To Julia in Claude Code?

Run `npx skills add NVIDIA/skills --skill tilegym-converting-cutile-to-julia -a claude-code`. Or copy the skill folder (skills/tilegym-converting-cutile-to-julia in NVIDIA/skills) into .claude/skills/tilegym-converting-cutile-to-julia in your project. Claude Code loads it when a task matches its description.

How do I install Tilegym Converting Cutile To Julia in Codex?

Run `npx skills add NVIDIA/skills --skill tilegym-converting-cutile-to-julia -a codex`. Or copy the skill folder (skills/tilegym-converting-cutile-to-julia in NVIDIA/skills) into .agents/skills/tilegym-converting-cutile-to-julia in your project. Codex loads it when a task matches its description.

Can I use Tilegym Converting Cutile To Julia in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add NVIDIA/skills --skill tilegym-converting-cutile-to-julia -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tilegym-converting-cutile-to-julia, .gemini/skills/tilegym-converting-cutile-to-julia, .github/skills/tilegym-converting-cutile-to-julia and .opencode/skills/tilegym-converting-cutile-to-julia in your project.

What does Tilegym Converting Cutile To Julia need to run?

Going by SKILL.md and its folder, Tilegym Converting Cutile To Julia needs Python and Julia for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Tilegym Converting Cutile To Julia access the network?

SKILL.md names 1 domain. As links in the text: julialang.org. This is read from the text; nothing was executed.

Is Tilegym Converting Cutile To Julia safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Tilegym Converting Cutile To Julia use?

Tilegym Converting Cutile To Julia is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Tilegym Converting Cutile To Julia use?

About 1.7k tokens (SKILL.md is roughly 6.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7.5k tokens, read only when the agent opens those files.

What are the alternatives to Tilegym Converting Cutile To Julia?

Skills that share tags, products or a category with Tilegym Converting Cutile To Julia: China Travel Kit (tczyliu/china-travel-kit, 194 stars), Technology Search (freestylefly/wesight, 946 stars), Translate Po (python/python-docs-zh-tw, 284 stars) and Obs Build Logs (Nuitka/Nuitka, 15k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Tilegym Converting Cutile To Julia?

NVIDIA (a GitHub organization, an official publisher) maintains it in NVIDIA/skills, which has 3,555 GitHub stars. The repository holds 390 skills in this directory. The repository was last updated on October 9, 2026.

Source: NVIDIA/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.