PortPilot
 Deterministic scores · advisory notes by Fireworks AI on AMD Instinct

The ROCm readiness benchmark

PortPilot scored 16 popular CUDA repositories. Every score is a deterministic Migration Readiness number from the Python AST + rule scanner — the LLM never scores. The takeaway: most of the ecosystem is closer to AMD than teams assume.

Leaderboard

sorted by readiness · click a repo for its full report

Lower readiness

Still real, deterministic scans — just a heavier migration lift, including repos with no clean ROCm path today like NVIDIA's own cuda-python driver bindings.

Model face-off

The models that drafted these advisory notes, measured on the same workload — the top findings of state-spaces/mamba. Every number below is captured from a real Fireworks run; the bucket and score are deterministic and identical across models — only the advisory text and efficiency differ.

GLM-5.2
glm-5p2
Fireworks serverless
live
DeepSeek V4 Pro
deepseek-v4-pro
Fireworks serverless
live
Qwen 3.7 Plus
qwen3p7-plus
Fireworks serverless
live
Gemma 4 26B (on-demand)
gemma-4-26b-a4b-it
Fireworks on-demand (dedicated GPU)
live
Findings explained20202020
Prompt tokens3,2553,2883,4523,794
Completion tokens10,72312,82935,96623,308
Total tokens13,97816,11739,41827,102
Avg latency9,272 ms14,541 ms11,172 ms6,686 ms
Est. cost$0.0517$0.0504$0.0589$0.0000

★ best per metric. Est. cost = measured tokens × listed Fireworks serverless price ($1.4/1M in · $4.4/1M out); advisory.

Cstate-spaces/mamba · mamba_ssm/ops/cute/mamba3/mamba3_step_fn.py
One representative finding · cuda-python low-level driver API
GLM-5.2live
glm-5p2 · Fireworks serverless

The cuda.bindings.driver module provides low-level CUDA driver API access with no direct ROCm Python equivalent. Code relying on this import must be audited for specific driver calls (e.g., context, stream, memory management) and replaced with HIP/ROCm equivalents via ctypes bindings to amdhip64/rocm_smi, or refactored to use PyTorch device-agnostic APIs where possible.

13,978 tok·9,272 ms avg·$0.0517 est
DeepSeek V4 Prolive
deepseek-v4-pro · Fireworks serverless

The import of cuda.bindings.driver directly uses the CUDA driver API, which is not available on AMD GPUs. For ROCm, you must replace it with HIP Python bindings (e.g., hip.bindings.driver) and either alias it as cuda to minimize downstream changes or refactor all usages to the new name.

16,117 tok·14,541 ms avg·$0.0504 est
Qwen 3.7 Pluslive
qwen3p7-plus · Fireworks serverless

The cuda-python package provides low-level bindings to the NVIDIA CUDA driver, which has no direct 1:1 equivalent in the ROCm ecosystem. You must replace these low-level driver calls with HIP equivalents, typically by using ctypes to interface directly with libamdhip64.so or by refactoring to use higher-level PyTorch abstractions that hide driver details.

39,418 tok·11,172 ms avg·$0.0589 est
Gemma 4 26B (on-demand)live
gemma-4-26b-a4b-it · Fireworks on-demand (dedicated GPU)

The import of cuda.bindings.driver relies on NVIDIA-specific driver bindings that are not available in the ROCm ecosystem. This low-level dependency must be replaced with HIP-compatible runtime calls or a ROCm-specific driver interface to manage GPU contexts and memory.

27,102 tok·6,686 ms avg·$0.0000 est