protected override float[,] KernelMul(BaseConfig cfg, float[,] a, float[,] b) { var sw = new Stopwatch(); try { sw.Start(); var result = cfg.Configure <MatMulKernel>().Execute(a, b); Log.WriteLine("Kernel has completed in " + sw.Elapsed); return(result); } catch (Exception) { Log.WriteLine("Kernel has crashed in " + sw.Elapsed); throw; } }