public void Setup()
        {
            switch (Provider)
            {
            case ProviderId.Managed:
                Control.UseManaged();
                break;

            case ProviderId.NativeMKLAutoHigh:
                MklControl.UseNativeMKL(MklConsistency.Auto, MklPrecision.Double, MklAccuracy.High);
                break;

            case ProviderId.NativeMKLAutoLow:
                MklControl.UseNativeMKL(MklConsistency.Auto, MklPrecision.Double, MklAccuracy.Low);
                break;

            case ProviderId.NativeMKLAvx2High:
                MklControl.UseNativeMKL(MklConsistency.AVX2, MklPrecision.Double, MklAccuracy.High);
                break;

            case ProviderId.NativeMKLAvx2Low:
                MklControl.UseNativeMKL(MklConsistency.AVX2, MklPrecision.Double, MklAccuracy.Low);
                break;
            }
        }
Example #2
0
        public void Setup()
        {
            switch (this.Provider)
            {
            case ProviderId.Managed:
                Control.UseManaged();
                break;

            case ProviderId.NativeMKL:
                MklControl.UseNativeMKL(MklConsistency.Auto, MklPrecision.Double, MklAccuracy.High);
                break;
            }

            this.data = DataMatrix.Load(DataFactory.GetLastFm360k());
        }
Example #3
0
        public void GlobalSetup()
        {
            switch (Provider)
            {
            case ProviderId.Managed:
                Control.UseManaged();
                break;

            case ProviderId.NativeMKL:
                MklControl.UseNativeMKL(MklConsistency.Auto, MklPrecision.Double, MklAccuracy.High);
                break;
            }

            var realSinusoidal = Generate.Sinusoidal(N, 32, -2.0, 2.0);
            var imagSawtooth   = Generate.Sawtooth(N, 32, -20.0, 20.0);

            _data = Generate.Map2(realSinusoidal, imagSawtooth, (r, i) => new Complex(r, i));
        }
        public void Setup()
        {
            switch (Provider)
            {
            case ProviderId.Managed:
                Control.UseManaged();
                break;

            case ProviderId.NativeMKL:
                MklControl.UseNativeMKL(MklConsistency.Auto, MklPrecision.Double, MklAccuracy.High);
                break;
            }

            _a  = Generate.Normal(N, 2.0, 10.0);
            _b  = Generate.Normal(N, 200.0, 10.0);
            _ac = Generate.Map2(_a, Generate.Normal(N, 2.0, 10.0), (a, i) => new Complex(a, i));
            _bc = Generate.Map2(_b, Generate.Normal(N, 200.0, 10.0), (b, i) => new Complex(b, i));
            //_av = Vector<double>.Build.Dense(_a);
            //_bv = Vector<double>.Build.Dense(_b);
        }
Example #5
0
        public void BeforeTest(ITest testDetails)
        {
            string outDir = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), @"../../../../../out/");

#if MKL
            Control.NativeProviderPath = System.IO.Path.Combine(outDir, @"MKL/Windows/");
            MklControl.UseNativeMKL(MklConsistency.AVX, MklPrecision.Double, MklAccuracy.High);
#elif CUDA
            CudaControl.UseNativeCUDA();
#elif OPENBLAS
            OpenBlasControl.UseNativeOpenBLAS();
#else
            Control.UseManaged();
#endif

            // ReSharper disable LocalizableElement
            Console.WriteLine();
            Console.WriteLine(Control.Describe());
            // ReSharper restore LocalizableElement
        }