arrayfire / arrayfire/arrayfire-rust
"max" crash when using GTX 1060 and CUDA 11.8
- Dominant language
- Rust
- Stars
- 827
- Forks
- 59
- PR merge metrics
- No merged PRs in 30d
Description
The following code will crash when using GTX 1060 and CUDA 11.8
```
fn main(){
let a = range::(dim4!(2), 0);
let b = min(&a, 0);
println!("b={}", &b);
}
```
```
Running `target\debug\lent_calibration.exe`
thread 'main' panicked at 'Error message: Error either in ArrayFire or in a project upstream
Last error: In function cuda::kernel::reduce_first_launcher
In file D:/j_opt/arrayfire/src/backend/cuda\kernel/reduce.hpp:469
CUDA Error (209): no kernel image is available for execution on the device
0# af::exception::~exception in afcuda
1# af::randomEngine::get in afcuda
2# af::randomEngine::get in afcuda
4# af_set_seed in afcuda
5# af_min in af
6# arrayfire::algorithm::min at C:\Program Files\AF_dlls\package\arrayfire-3.8.0\src\algorithm\mod.rs:154
7# lent_calibration::main at C:\Users\eli\Desktop\eg_rust\src\main.rs:159
8# core::ops::function::FnOnce::call_once > at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\core\src\ops\function.rs:248
9# std::sys_common::backtrace::__rust_begin_short_backtrace > at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\std\src\sys_common\backtrace.rs:125
10# std::rt::lang_start::closure$0 > at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\std\src\rt.rs:166
11', C:\Program Files\AF_dlls\package\arrayfire-3.8.0\src\core\error.rs:37:14
stack backtrace:
0: 0x7ff7f9d9a4d2 - std::backtrace_rs::backtrace::dbghelp::trace
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\..\..\backtrace\src\backtrace\dbghelp.rs:98
1: 0x7ff7f9d9a4d2 - std::backtrace_rs::backtrace::trace_unsynchronized
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\..\..\backtrace\src\backtrace\mod.rs:66
2: 0x7ff7f9d9a4d2 - std::sys_common::backtrace::_print_fmt
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\sys_common\backtrace.rs:66
3: 0x7ff7f9d9a4d2 - std::sys_common::backtrace::_print::impl$0::fmt
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\sys_common\backtrace.rs:45
4: 0x7ff7f9da8fcb - core::fmt::write
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\core\src\fmt\mod.rs:1202
5: 0x7ff7f9d984fa - std::io::Write::write_fmt
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\io\mod.rs:1679
6: 0x7ff7f9d9c534 - std::sys_common::backtrace::_print
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\sys_common\backtrace.rs:48
7: 0x7ff7f9d9c534 - std::sys_common::backtrace::print
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\sys_common\backtrace.rs:35
8: 0x7ff7f9d9c534 - std::panicking::default_hook::closure$1
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:295
9: 0x7ff7f9d9c16a - std::panicking::default_hook
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:314
10: 0x7ff7f9d9cd21 - std::panicking::rust_panic_with_hook
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:698
11: 0x7ff7f9d9cc2d - std::panicking::begin_panic_handler::closure$0
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:588
12: 0x7ff7f9d9aeff - std::sys_common::backtrace::__rust_end_short_backtrace
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\sys_common\backtrace.rs:138
13: 0x7ff7f9d9c8f0 - std::panicking::begin_panic_handler
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:584
14: 0x7ff7f9daed75 - core::panicking::panic_fmt
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\core\src\panicking.rs:142
15: 0x7ff7f9d91c72 - arrayfire::core::error::handle_error_general
at C:\Program Files\AF_dlls\package\arrayfire-3.8.0\src\core\error.rs:37
16: 0x7ff7f9d91bba - arrayfire::core::error::Callback::call
at C:\Program Files\AF_dlls\package\arrayfire-3.8.0\src\core\error.rs:29
17: 0x7ff7f9d91d58 - arrayfire::core::error::HANDLE_ERROR
at C:\Program Files\AF_dlls\package\arrayfire-3.8.0\src\core\error.rs:95
18: 0x7ff7f9d914b9 - arrayfire::algorithm::min
at C:\Program Files\AF_dlls\package\arrayfire-3.8.0\src\algorithm\mod.rs:155
19: 0x7ff7f9d912b3 - lent_calibration::main
at C:\Users\eli\Desktop\eg_rust\src\main.rs:159
20: 0x7ff7f9d913bb - core::ops::function::FnOnce::call_once >
at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\core\src\ops\function.rs:248
21: 0x7ff7f9d9122e - std::sys_common::backtrace::__rust_begin_short_backtrace >
at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\std\src\sys_common\backtrace.rs:122
22: 0x7ff7f9d9122e - std::sys_common::backtrace::__rust_begin_short_backtrace >
at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\std\src\sys_common\backtrace.rs:122
23: 0x7ff7f9d91541 - std::rt::lang_start::closure$0 >
at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\std\src\rt.rs:166
24: 0x7ff7f9d96f5e - core::ops::function::impls::impl$2::call_once
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\core\src\ops\function.rs:283
25: 0x7ff7f9d96f5e - std::panicking::try::do_call
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:492
26: 0x7ff7f9d96f5e - std::panicking::try
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:456
27: 0x7ff7f9d96f5e - std::panic::catch_unwind
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panic.rs:137
28: 0x7ff7f9d96f5e - std::rt::lang_start_internal::closure$2
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\rt.rs:148
29: 0x7ff7f9d96f5e - std::panicking::try::do_call
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:492
30: 0x7ff7f9d96f5e - std::panicking::try
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panicking.rs:456
31: 0x7ff7f9d96f5e - std::panic::catch_unwind
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\panic.rs:137
32: 0x7ff7f9d96f5e - std::rt::lang_start_internal
at /rustc/897e37553bba8b42751c67658967889d11ecd120/library\std\src\rt.rs:148
33: 0x7ff7f9d9151a - std::rt::lang_start >
at /rustc/897e37553bba8b42751c67658967889d11ecd120\library\std\src\rt.rs:165
34: 0x7ff7f9d9136c - main
35: 0x7ff7f9dad6a0 - invoke_main
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
36: 0x7ff7f9dad6a0 - __scrt_common_main_seh
at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
37: 0x7ffee6c974b4 - BaseThreadInitThunk
38: 0x7ffee70426a1 - RtlUserThreadStart
error: process didn't exit successfully: `target\debug\lent_calibration.exe` (exit code: 101)
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the example from src/main.rs at the reported min call using a GTX 1060 and CUDA 11.8. Inspect src/algorithm/mod.rs around min and the upstream reduce.hpp location shown in the stack trace to determine whether the failure is in the Rust binding or CUDA backend. Done means the example no longer panics and returns the expected minimum.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100