Repository navigation
Releases: zachshallbetter/cuda-compatibility
Release list
0.2.22
Faster training with no code changes on Maxwell (sm_52).
- torch.optim.Adam and AdamW now choose the fused one-launch-per-parameter step by default when every parameter is float32 on one GPU (#257). An explicit fused or foreach setting is respected. Measured on a GTX TITAN X with default AdamW: a small MLP step goes from 7 to 4 ms, and a 7M-parameter GPT trains at 1.08x the CPU.
- install.sh --uninstall now offers, at a terminal, to remove the PyTorch environment the installer itself created (#253).
Upgrade: curl -fsSL https://cudacompat.com/install.sh | sh, or brew upgrade cuda-legacy.
0.2.21
Less Python overhead per GPU operation on Maxwell (sm_52) (#243).
Native kernel launches and the adapter's dispatch path now do their routing work only when an operator actually needs it. They also pass launch arguments more cheaply, and same-shape elementwise ops skip broadcasting. Measured on a GTX TITAN X: the LSTM training step goes from 0.148 to 0.109 s, and a small CNN step to 28 ms. Results match the CPU across the reference suite.
Upgrade: curl -fsSL https://cudacompat.com/install.sh | sh, or brew upgrade cuda-legacy.
0.2.20
Faster training on Maxwell (sm_52).
- Adam and AdamW with fused=True now run in one GPU launch per parameter (#246). On a small CNN, that is 84 fewer launches per step. Results match the CPU optimizer, including weight decay, maximize and amsgrad (amsgrad takes the CPU route).
- The fused LSTM and GRU cells and their backward passes now run on the GPU (#243). They match the CPU, and LSTM host copies fall from 5.4 to 0.9 MiB per step.
Upgrade: curl -fsSL https://cudacompat.com/install.sh | sh, or brew upgrade cuda-legacy.
0.2.19
CNN training on Maxwell (sm_52) no longer goes through the CPU. ReLU(inplace=True) runs on the native kernel in place (PR 241), and mean over dimensions, which adaptive average pooling uses, runs natively (PR 242). The speed-sweep CNN now trains with no CPU fallbacks and no host copies. Its results match the CPU.
Upgrade: curl -fsSL https://cudacompat.com/install.sh | sh, or brew upgrade cuda-legacy.
0.2.18
torch.fft and torch.linalg now work on Maxwell (sm_52). The CUDA 13 cuFFT and cuSOLVER libraries have no sm_52 code, so these calls used to fail. They now fall back to the CPU and match it exactly: fft, rfft, ifft, inv, svdvals, det, slogdet and pinv (#234).
Upgrade: curl -fsSL https://cudacompat.com/install.sh | sh, or brew upgrade cuda-legacy.
0.2.17
Install or upgrade: curl -fsSL https://cudacompat.com/install.sh | sh.
- Convolution on the GPU (#231): 2-D convolution and its backward (groups=1, float32) through GEMMs and strided copies. A CNN step goes from 194 to 126 ms at batch 64 on the reference host.
- Installer: archive sha256
f254068bebf341b5d64ef204113163880e260adaf608d4d89467755935b598a1.
0.2.16
Install or upgrade: curl -fsSL https://cudacompat.com/install.sh | sh.
- Batch norm on the GPU (#228): forward and backward, training and eval, through the native sum and elementwise kernels. A CNN step at 64x64 goes from 473 to 361 ms on the reference host.
- ReLU backward on the GPU (#227).
- Installer: archive sha256
70e0f9bbe3a2fbabf2809b58914b80af503aa3d177a72d6f7d9eaee3bda936c6.
0.2.15
Install or upgrade: curl -fsSL https://cudacompat.com/install.sh | sh.
- Stopping a run (#217): Ctrl-C and Jupyter interrupts reach your program instead of killing it after 0.25 s.
killoncuda-legacy run(SIGTERM, SIGHUP) is passed on, so a training script can save its checkpoint. A signal death reports 128+N, as a shell does. - Installer: archive sha256
78ea4e023b40ad21a4e8dbc4612f9d7544e5e141d63cfc2832c0563aeed992c5.
0.2.14
Install or upgrade: curl -fsSL https://cudacompat.com/install.sh | sh.
- No system CUDA needed (#204): without CUDA 12.4 headers, setup assembles them from NVIDIA's own wheels on PyPI (SHA-256 pinned, about 47 MB kept, removed by
setup --remove). cuda-legacy run -m MODULE,-c CODEand-i, like python (#214).- Installer: archive sha256
192b97c6b2b9be5e0faf2446c5b76007af5529321df6db35cfcc731e0d989a76.
0.2.13
Install or upgrade: curl -fsSL https://cudacompat.com/install.sh | sh.
- No PyTorch yet? (#202): the installer offers to create
~/torch-cu130with the officialtorch==2.14.0+cu130wheel instead of stopping. A fresh account with only python3 reaches a GPU result. foreach=Falseoptimizers on the GPU (#208): single-tensor Adam and AdamW steps use the native kernels.- Ledger test (#209).
- The user-space CUDA headers (#204) landed after this tag and ship in the next release.
- Installer: archive sha256
e2a0c8306e66f50d4b16ce8e28431d7f36aa2de9f925217519d879bb31024c7d.