ruda-kernel 0.1.2

Ruda Rust kernel DSL and device tensor operations.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use ruda_kernel::dsl::{RudaElement, prelude::Numeric};

pub(crate) fn identity_cpu<E: Numeric + RudaElement>(dim: usize) -> Vec<E> {
    let num_elements = dim * dim;
    let mut result = vec![E::from_int(0); num_elements];

    let mut pos = 0usize;
    while pos < num_elements {
        result[pos] = E::from_int(1);
        pos += dim + 1;
    }

    result
}