Denpex – GPU & ML Crash Diagnostics for VS Code
Find the first failed rank, not just the last loud error. Denpex diagnoses CUDA errors,
NCCL hangs, PyTorch crashes, NVIDIA Xid faults, Slurm and Kubernetes GPU failures, and
vLLM/Triton inference incidents without leaving VS Code.
The diagnosis engine and pattern database are bundled in the extension. Local diagnosis
is unlimited, offline, and requires no account, API key, system Node.js installation, or
network connection. It also works where GPU logs usually live: Remote-SSH hosts,
containers, Slurm login nodes, and air-gapped training environments.
Install Denpex from the Visual Studio Marketplace
Get the aha moment in under 60 seconds
The Getting Started walkthrough opens automatically after installation:
- Diagnose a realistic rank-local CUDA OOM that becomes an NCCL timeout cascade.
- See rank 3 identified as the initiator and ranks 0–2 as collateral victims.
- Inspect the primary fix, fallback, emergency mitigation, and verification step.
- Select one of your own tracebacks and diagnose it locally.
- Optionally explore a 14-day cloud/fleet trial.
No failed job ready? Open the Denpex sidebar and run any included sample:
- Rank-local OOM causing an NCCL watchdog cascade
- Xid 79: GPU fallen off the bus
- NCCL interface mismatch (
ib0 on one node, eth0 on another)
- Kubernetes NVIDIA device-plugin stale GPU health after a recovered Xid
- vLLM KV-cache exhaustion from context length and concurrency
Denpex is visible where failures happen
- Selected traceback: right-click → Diagnose GPU/ML Error
- Integrated terminal: right-click → Diagnose Last Failure
- Log editor: use the editor-title action for
.log, .out, and traceback content
- Activity bar: open the Denpex sidebar for current logs, recent local diagnoses,
sample failures, and local/offline privacy status
- Command Palette: run any command beginning with
Denpex:
The status bar always tells you when the unlimited offline engine is active.
What a diagnosis returns
The report is a forensic explanation, not a failure-class label:
- root cause with calibrated confidence (withheld when a precise number is not justified)
- causal chain ordered by evidence
- initiating rank or node versus collateral timeout victims
- competing hypotheses and evidence for and against each one
- contradictions that ruled out the obvious-but-wrong answer
- primary fix, fallback, emergency mitigation, prevention, and evidence-specific verification step
- checkpoint resume-safety warning
- explicit Execute and Copy actions for remediation commands
When a local result needs more, the report contains a visible Run cloud deep reasoning
button. Nothing is uploaded until you choose that action (unless you deliberately enable
the opt-in auto-escalation setting).
Supported GPU and ML systems
The bundled deterministic engine covers:
- GPU/runtime: CUDA, NVIDIA Xid, NVLink, NVSwitch, ECC, DCGM, ROCm
- Distributed training: NCCL, PyTorch DDP/FSDP, DeepSpeed ZeRO, Megatron-LM, MPI
- Fabrics: InfiniBand, RoCE, EFA, GPUDirect RDMA, socket-interface mismatches
- Schedulers/orchestrators: Slurm, Kubernetes, NVIDIA GPU Operator and device plugin,
Ray and Volcano
- Inference: vLLM, TensorRT-LLM, Triton Inference Server, FlashAttention, tensor and
pipeline parallelism
- Frameworks/data: PyTorch, JAX/XLA, Hugging Face, checkpoint, storage, and data-loader
failures
Local engine versus cloud deep reasoning
|
Local engine |
Cloud deep reasoning |
| Account required |
No |
Trial or plan after the anonymous allowance |
| Limit |
Unlimited |
Cloud quota |
| Network |
None |
Required |
| Logs uploaded |
No |
Only when explicitly requested |
| Remote-SSH / air-gapped |
Yes |
Air-gapped: no |
| Best for |
Known and evidence-owned failures |
Novel, ambiguous, multi-cause incidents |
Only cloud compute, saved organization history, monitoring, alerts, collaboration, and
fleet workflows are metered. Local diagnosis is free forever because it runs on your
machine.
Privacy
Local diagnosis, predictive terminal monitoring, sample failures, and RMA payload
generation run entirely on the extension host. Clipboard text is read only after you
choose it from the source picker. Recent-diagnosis persistence stores only a timestamp,
failure type, and engine source—not logs, evidence excerpts, or the report body.
In auto mode, a local-engine failure does not silently fail over and upload the log.
Denpex reports the local failure and asks before cloud escalation. Set denpex.engine to
local to disable cloud diagnosis entirely.
Read the full Denpex privacy policy.
Settings
| Setting |
Default |
Purpose |
denpex.engine |
auto |
Local-first (auto), local-only, or explicit cloud mode |
denpex.cloud.autoEscalate |
false |
Opt in to cloud reasoning after local diagnosis |
| Cloud API key |
— |
Set with Denpex: Set API Key; stored in VS Code SecretStorage, never plaintext settings |
denpex.apiBase |
https://api.denpex.com |
Staging or on-prem API override |
denpex.predictive.enabled |
true |
Local pre-crash terminal monitoring |
denpex.predictive.notifyCooldownMinutes |
10 |
Minimum minutes between predictive warnings |
denpex.remediation.confirmBeforeRun |
true |
Confirm before running a fix command |
denpex.remediation.restartCommand |
— |
Command used by Restart from Checkpoint |
Support