cubecl-hip 0.11.0-pre.4

AMD ROCm HIP runtime for CubeCL
#[allow(unused_imports)]
#[macro_use]
extern crate derive_new;
extern crate alloc;

pub mod compiler;
pub mod compute;
pub mod device;
pub mod runtime;
pub use compiler::{HipCompilationOptions, HipCompiler, HipRepresentation};
pub use device::*;
pub use runtime::HipRuntime;

// HIP has no runtime on Apple platforms. Keep the compiler-only unit tests above
// available there, but don't generate hundreds of tests that unconditionally
// open device 0.
#[cfg(all(test, any(target_os = "linux", target_os = "windows")))]
mod tests {
    use half::f16;
    pub type TestRuntime = crate::HipRuntime;

    cubecl_std::testgen!();
    cubecl_core::testgen_all!(f32: [f16, f32], i32: [i16, i32], u32: [u16, u32]);
    cubecl_core::testgen_complex_validation!();
    cubecl_core::testgen_launch_dynamic_count!();
    cubecl_core::testgen_profiling!();
    cubecl_core::testgen_profiling_nested!();
}