arrayfire-rust
arrayfire-rust copied to clipboard
[BUG] STATUS_STACK_BUFFER_OVERRUN from any operation
Description
possibly related to #285 although the suggested solution didn't work for me and it crashes instantly on my machine instead of taking a "long time" like detailed in the old issue. i left a comment on the original post but these two factors make it seem like a separate issue so im filing this as well. feel free to close if you think its a duplicate.
attempting to run any code examples causes STATUS_STACK_BUFFER_OVERRUN
.
i tried updating my drivers and cuda and i tried both the 10.x and 11.x arrayfire binaries to no avail. i also tried manually setting the back-end like in #285 but it didn't seem to fix anything; OpenCL, CUDA, and CPU all throw STATUS_STACK_BUFFER_OVERRUN. in fact it appears simply running set_backend
causes an overrun.
Reproducible Code and/or Steps
use arrayfire::{set_backend, Backend};
fn main() {
// attempting arrayfire::info() or any other arrayfire call causes the same issue
set_backend(Backend::CPU);
}
D:\Work\rust_playground>cargo run
Compiling rust_playground v0.1.0 (D:\Work\rust_playground)
Finished dev [unoptimized + debuginfo] target(s) in 2.67s
Running `target\debug\rust_playground.exe`
error: process didn't exit successfully: `target\debug\rust_playground.exe` (exit code: 0xc0000409, STATUS_STACK_BUFFER_OVERRUN)
System Information
- ArrayFire version 3.8.1
- i have an rtx3090 and an i9-11900k running on windows 10
- couldnt run
af::info
as it crashes with the same error
the download link for the cinfo binary seems to be down. heres nvidia-smi:
Fri Feb 4 02:19:12 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 511.65 Driver Version: 511.65 CUDA Version: 11.6 |
|-------------------------------+----------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... WDDM | 00000000:01:00.0 On | N/A |
| 0% 49C P0 126W / 350W | 1056MiB / 24576MiB | 2% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1580 C+G N/A |
| 0 N/A N/A 2872 C+G ...icrosoft VS Code\Code.exe N/A |
| 0 N/A N/A 5536 C+G N/A |
| 0 N/A N/A 6932 C+G ...kyb3d8bbwe\Calculator.exe N/A |
| 0 N/A N/A 7884 C+G C:\Windows\explorer.exe N/A |
| 0 N/A N/A 12184 C+G ...artMenuExperienceHost.exe N/A |
| 0 N/A N/A 12364 C+G ...ekyb3d8bbwe\YourPhone.exe N/A |
| 0 N/A N/A 12584 C+G ...5n1h2txyewy\SearchApp.exe N/A |
| 0 N/A N/A 13440 C+G ...4__htrsf667h5kn2\AWCC.exe N/A |
| 0 N/A N/A 14248 C+G ...ekyb3d8bbwe\HxOutlook.exe N/A |
| 0 N/A N/A 15588 C+G ...108.43\msedgewebview2.exe N/A |
| 0 N/A N/A 16044 C+G ...perience\NVIDIA Share.exe N/A |
| 0 N/A N/A 16160 C+G ...perience\NVIDIA Share.exe N/A |
| 0 N/A N/A 16676 C+G N/A |
| 0 N/A N/A 16712 C+G ...zilla Firefox\firefox.exe N/A |
| 0 N/A N/A 16968 C+G ...nputApp\TextInputHost.exe N/A |
| 0 N/A N/A 21680 C+G ...lack\app-4.23.0\slack.exe N/A |
| 0 N/A N/A 22944 C+G ...zilla Firefox\firefox.exe N/A |
| 0 N/A N/A 23416 C+G ...y\ShellExperienceHost.exe N/A |
| 0 N/A N/A 23752 C+G ...lPanel\SystemSettings.exe N/A |
+-----------------------------------------------------------------------------+
and heres AF_TRACE=all
[unified][1643970448][5736] [ ..\src\api\unified\symbol_manager.cpp(141) ] Attempting: Default System Paths
[unified][1643970448][5736] [ ..\src\api\unified\symbol_manager.cpp(144) ] Found: afcpu.dll
[unified][1643970448][5736] [ ..\src\api\unified\symbol_manager.cpp(151) ] Device Count: 1.
[unified][1643970448][5736] [ ..\src\api\unified\symbol_manager.cpp(141) ] Attempting: Default System Paths
[unified][1643970448][5736] [ ..\src\api\unified\symbol_manager.cpp(144) ] Found: afopencl.dll
[platform][1643970448][5736] [ ..\src\backend\common\DependencyModule.cpp(99) ] Attempting to load: forge.dll
[platform][1643970448][5736] [ ..\src\backend\common\DependencyModule.cpp(102) ] Found: forge.dll
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(218) ] Found 3 OpenCL platforms
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(230) ] Found 1 devices on platform NVIDIA CUDA
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(235) ] Found device NVIDIA GeForce RTX 3090 on platform NVIDIA CUDA
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(230) ] Found 1 devices on platform Intel(R) OpenCL
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(235) ] Found device 11th Gen Intel(R) Core(TM) i9-11900K @ 3.50GHz on platform Intel(R) OpenCL
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(230) ] Found 1 devices on platform Experimental OpenCL 2.1 CPU Only Platform
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(235) ] Found device 11th Gen Intel(R) Core(TM) i9-11900K @ 3.50GHz on platform Experimental OpenCL 2.1 CPU Only Platform
[platform][1643970448][5736] [ ..\src\backend\opencl\device_manager.cpp(240) ] Found 3 OpenCL devices
error: process didn't exit successfully: `target\debug\rust_playground.exe` (exit code: 0xc0000409, STATUS_STACK_BUFFER_OVERRUN)
Checklist
- [x] Using the latest available ArrayFire release
- [x] GPU drivers are up to date
There has been new upstream release - arrayfire 3.8.1 Can you please try with that version of library and let me know if you still have the issue. Thank you.
@9prady9 oops thats my bad, im already using 3.8.1 i just accidentally typed 3.8.0 instead when i was making the post. i edited it to have the correct version
That is interesting, can you please try running any of the cuda examples - https://github.com/NVIDIA/cuda-samples and see if you are able to run those. It is a C/C++ project, but it shouldn't be hard if you have cuda toolkit already installed. You can follow their instructions from this section - https://github.com/NVIDIA/cuda-samples#building-cuda-samples
@9prady9 ran the vectorAdd example and it seems to have worked fine
D:\Downloads\cuda-samples-master\bin\win64\Debug>vectorAdd.exe
[Vector addition of 50000 elements]
Copy input data from the host memory to the CUDA device
CUDA kernel launch with 196 blocks of 256 threads
Copy output data from the CUDA device to the host memory
Test PASSED
Done