use ruda::runtime::{backend::Runtime, compiler::RudaTask};
use ruda_tensor::DeviceOps;
pub trait DeviceRuntime: Runtime<Device = Self::RudaDevice, Server = Self::RudaServer> {
type RudaDevice: ruda_tensor::DeviceOps;
type RudaServer: ruda::runtime::server::ComputeServer<Kernel = Box<dyn RudaTask<Self::Compiler>>>;
}
impl<R: Runtime> DeviceRuntime for R
where
R::Device: DeviceOps,
{
type RudaDevice = R::Device;
type RudaServer = R::Server;
}