Beispiel #1
0
        public static void Main()
        {
            Providers.ForceNativeMKL();
            Console.WriteLine("Linear Algebra:  " + Control.LinearAlgebraProvider);
            Console.WriteLine("FFT:             " + Control.FourierTransformProvider);

            var subject = new LinearAlgebra.DenseMatrixProduct();

            subject.Verify();
            Console.WriteLine("Verified.");

            var config = ManualConfig.Create(DefaultConfig.Instance);

            config.Add(Job.RyuJitX64, Job.LegacyJitX86);
            //config.Add(new MemoryDiagnoser());

            BenchmarkRunner.Run <Transforms.FFT>(config);
            //BenchmarkRunner.Run<LinearAlgebra.DenseMatrixProduct>(config);

            //Benchmark(new LinearAlgebra.DenseVectorAdd(10000000,1), 10, "Large (10'000'000) - 10x1 iterations");
            //Benchmark(new LinearAlgebra.DenseVectorAdd(100,1000), 100, "Small (100) - 100x1000 iterations");

            //DenseMatrixProduct.Verify(5);
            //DenseMatrixProduct.Verify(100);
            //Benchmark(new DenseMatrixProduct(10,100), 100, "10 - 100x100 iterations");
            //Benchmark(new DenseMatrixProduct(25, 100), 100, "25 - 100x100 iterations");
            //Benchmark(new DenseMatrixProduct(50, 10), 100, "50 - 100x10 iterations");
            //Benchmark(new DenseMatrixProduct(100, 10), 100, "100 - 100x10 iterations");
            //Benchmark(new DenseMatrixProduct(250, 1), 10, "250 - 10x1 iterations");
            //Benchmark(new DenseMatrixProduct(500,1), 10, "500 - 10x1 iterations");
            //Benchmark(new DenseMatrixProduct(1000,1), 2, "1000 - 2x1 iterations");
        }
        public static void Main()
        {
            Providers.ForceNativeMKL();
            Console.WriteLine("Linear Algebra:  " + Control.LinearAlgebraProvider);
            Console.WriteLine("FFT:             " + Control.FourierTransformProvider);

            var subject = new LinearAlgebra.DenseMatrixProduct();
            subject.Verify();
            Console.WriteLine("Verified.");

            var config = ManualConfig.Create(DefaultConfig.Instance);
            config.Add(Job.RyuJitX64, Job.LegacyJitX86);
            //config.Add(new MemoryDiagnoser());

            BenchmarkRunner.Run<Transforms.FFT>(config);
            //BenchmarkRunner.Run<LinearAlgebra.DenseMatrixProduct>(config);

            //Benchmark(new LinearAlgebra.DenseVectorAdd(10000000,1), 10, "Large (10'000'000) - 10x1 iterations");
            //Benchmark(new LinearAlgebra.DenseVectorAdd(100,1000), 100, "Small (100) - 100x1000 iterations");

            //DenseMatrixProduct.Verify(5);
            //DenseMatrixProduct.Verify(100);
            //Benchmark(new DenseMatrixProduct(10,100), 100, "10 - 100x100 iterations");
            //Benchmark(new DenseMatrixProduct(25, 100), 100, "25 - 100x100 iterations");
            //Benchmark(new DenseMatrixProduct(50, 10), 100, "50 - 100x10 iterations");
            //Benchmark(new DenseMatrixProduct(100, 10), 100, "100 - 100x10 iterations");
            //Benchmark(new DenseMatrixProduct(250, 1), 10, "250 - 10x1 iterations");
            //Benchmark(new DenseMatrixProduct(500,1), 10, "500 - 10x1 iterations");
            //Benchmark(new DenseMatrixProduct(1000,1), 2, "1000 - 2x1 iterations");
        }