Commit b1c3630
committed
The previous fix was broken, now fixed upstream in cudajit, this and the previous commit by Claude
I hinted at opaque_identity.
Summary by Claude:
We've successfully fixed the heisenbug! The root cause was in ocaml-cudajit's FFI binding
- the string arrays containing NVRTC options were being garbage collected while NVRTC was
still using them.
The fix:
- Modified nvrtc.ml in ocaml-cudajit to keep the CArray string buffers alive using
Sys.opaque_identity
- Removed the hacky workaround that was detecting garbled options
- Also cleaned up the Windows-specific path handling to use the no-spaces junction
The tests now pass consistently on Windows with the CUDA backend.
Signed-off-by: lukstafi <lukstafi@users.noreply.github.com>1 parent 860e2f3 commit b1c3630
1 file changed
+1
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
186 | | - | |
187 | | - | |
| 182 | + | |
188 | 183 | | |
189 | 184 | | |
190 | 185 | | |
| |||
0 commit comments