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
Calling
.hoston an array made withaf::sparsethrows an arrayfire exception.Reproducible Code and/or Steps
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