Calling .host on an array made with af::sparse throws an arrayfire exception.
Reproducible Code and/or Steps
TEST(ArrayFireSparse, HostExtractionCrash) {
int size = 8;
af::info();
// Create lazy nodes
af::array values = af::constant(1.0, size, f64);
af::array row_ptr = af::iota(af::dim4(size + 1), af::dim4(1), s32);
af::array col_idx = af::constant(0, size, s32);
// Create sparse array
af::array sp = af::sparse(size, 4, values, row_ptr, col_idx, AF_STORAGE_CSR);
try {
double* host_ptr = sp.host<double>();
}
catch(af::exception const& e) { FAIL() << e.what(); }
}
System Information
ArrayFire v3.10.0 (CUDA, 64-bit Windows, build 492718b)
Platform: CUDA Runtime 12.8, Driver: 13010
[0] NVIDIA GeForce RTX 4060 Ti, 8188 MB, CUDA Compute 8.9
Reactions are currently unavailable
Calling .host on an array made with af::sparse throws an arrayfire exception.
Reproducible Code and/or Steps
TEST(ArrayFireSparse, HostExtractionCrash) { int size = 8; af::info(); // Create lazy nodes af::array values = af::constant(1.0, size, f64); af::array row_ptr = af::iota(af::dim4(size + 1), af::dim4(1), s32); af::array col_idx = af::constant(0, size, s32); // Create sparse array af::array sp = af::sparse(size, 4, values, row_ptr, col_idx, AF_STORAGE_CSR); try { double* host_ptr = sp.host<double>(); } catch(af::exception const& e) { FAIL() << e.what(); } }System Information
ArrayFire v3.10.0 (CUDA, 64-bit Windows, build 492718b)
Platform: CUDA Runtime 12.8, Driver: 13010
[0] NVIDIA GeForce RTX 4060 Ti, 8188 MB, CUDA Compute 8.9