pub fn cpu_exec_mut<T, F>(
    device: &CLDevice,
    matrix: &mut Matrix<'_, T>,
    f: F
) -> Result<()> where
    F: Fn(&CPU, &mut Matrix<'_, T>),
    T: Copy + Default