Exemple #1
0
 public void Compare(string name, int runs, Action <int, int, int> a)
 {
     Console.WriteLine(name);
     Console.WriteLine(string.Format("Single thread: {0}ms", U.Utils.AverageTime(() => { InitData(); return(U.Utils.TimeFor(() => ParallelHelper.For2DSingle(Width, Height, a))); }, runs)));
     Console.WriteLine(string.Format("Parallel thread: {0}ms", U.Utils.AverageTime(() => { InitData(); return(U.Utils.TimeFor(() => ParallelHelper.For2DParallel(Width, Height, a))); }, runs)));
     Console.WriteLine(string.Format("Parallel thread, unrolled: {0}ms", U.Utils.AverageTime(() => { InitData(); return(U.Utils.TimeFor(() => ParallelHelper.For2DParallelUnrolled(Width, Height, a))); }, runs)));
     Console.WriteLine(string.Format("Batched thread: {0}ms", U.Utils.AverageTime(() => { InitData(); return(U.Utils.TimeFor(() => ParallelHelper.For2DParallelBatched(Width, Height, a))); }, runs)));
 }