Beispiel #1
0
 // methods
 public void SetDefaults()
 {
     ConfigFileVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
     Language          = LanguageType.En;
     ForceCPUExtension = CpuExtensionType.Automatic;
     BitcoinAddress    = "";
     WorkerName        = "worker1";
     TimeUnit          = TimeUnitType.Day;
     ServiceLocation   = 0;
     AutoStartMining   = false;
     //LessThreads = 0;
     DebugConsole                       = false;
     HideMiningWindows                  = false;
     MinimizeToTray                     = false;
     BenchmarkTimeLimits                = new BenchmarkTimeLimitsConfig();
     DeviceDetection                    = new DeviceDetectionConfig();
     DisableAMDTempControl              = true;
     DisableDefaultOptimizations        = false;
     AutoScaleBTCValues                 = true;
     StartMiningWhenIdle                = false;
     DisableWhileInVR                   = true;
     DisableWhileUnrealLightmassRunning = true;
     LogToFile                     = true;
     LogMaxFileSize                = 1048576;
     ShowDriverVersionWarning      = true;
     DisableWindowsErrorReporting  = true;
     ShowInternetConnectionWarning = true;
     NVIDIAP0State                 = false;
     MinerRestartDelayMS           = 500;
     ethminerDefaultBlockHeight    = 2000000;
     SwitchMinSecondsFixed         = 90;
     SwitchMinSecondsDynamic       = 30;
     SwitchMinSecondsAMD           = 90;
     SwitchProfitabilityThreshold  = 0.05; // percent
     MinIdleSeconds                = 60;
     DisplayCurrency               = "USD";
     ApiBindPortPoolStart          = 4000;
     MinimumProfit                 = 0;
     EthminerDagGenerationType     = DagGenerationType.SingleKeep;
     DownloadInit                  = false;
     //ContinueMiningIfNoInternetAccess = false;
     IdleWhenNoInternetAccess = true;
     Use3rdPartyMiners        = Use3rdPartyMiners.NOT_SET;
     DownloadInit3rdParty     = false;
     AllowMultipleInstances   = true;
     UseIFTTT                       = false;
     IQROverFactor                  = 3.0;
     NormalizedProfitHistory        = 15;
     IQRNormalizeFactor             = 0.0;
     CoolDownCheckEnabled           = true;
     RunScriptOnCUDA_GPU_Lost       = false;
     ForceSkipAMDNeoscryptLyraCheck = false;
     OverrideAMDBusIds              = "";
     SwitchSmaTimeChangeSeconds     = new Interval(34, 55);
     SwitchSmaTicksStable           = new Interval(2, 3);
     SwitchSmaTicksUnstable         = new Interval(5, 13);
     UseSmaCache                    = true;
     UseEthlargement                = false;
 }
Beispiel #2
0
        /// <summary>
        /// HasExtensionSupport checks CPU extensions support, if type automatic just return false.
        /// </summary>
        /// <param name="type"></param>
        /// <returns>False if type Automatic otherwise True if supported</returns>
        private static bool HasExtensionSupport(CpuExtensionType type)
        {
            switch (type)
            {
            case CpuExtensionType.AVX2_AES: return((CpuID.SupportsAVX2() == 1) && (CpuID.SupportsAES() == 1));

            case CpuExtensionType.AVX2: return(CpuID.SupportsAVX2() == 1);

            case CpuExtensionType.AVX_AES: return((CpuID.SupportsAVX() == 1) && (CpuID.SupportsAES() == 1));

            case CpuExtensionType.AVX: return(CpuID.SupportsAVX() == 1);

            case CpuExtensionType.AES: return(CpuID.SupportsAES() == 1);

            case CpuExtensionType.SSE2: return(CpuID.SupportsSSE2() == 1);

            default:     // CPUExtensionType.Automatic
                break;
            }
            return(false);
        }
        /// <summary>
        /// HasExtensionSupport checks CPU extensions support, if type automatic just return false.
        /// </summary>
        /// <param name="type"></param>
        /// <returns>False if type Automatic otherwise True if supported</returns>
        private static bool HasExtensionSupport(CpuExtensionType type, CpuID cpuID)
        {
            switch (type)
            {
            case CpuExtensionType.AVX2_AES: return(cpuID.SupportsAVX2 && cpuID.SupportsAES_SSE42);

            case CpuExtensionType.AVX2: return(cpuID.SupportsAVX2);

            case CpuExtensionType.AVX_AES: return(cpuID.SupportsAVX && cpuID.SupportsAES_SSE42);

            case CpuExtensionType.AVX: return(cpuID.SupportsAVX);

            case CpuExtensionType.AES: return(cpuID.SupportsAES_SSE42);

            case CpuExtensionType.SSE2: return(cpuID.SupportsSSE2);

            default:     // CPUExtensionType.Automatic
                break;
            }
            return(false);
        }
Beispiel #4
0
 /// <summary>
 /// HasExtensionSupport checks CPU extensions support, if type automatic just return false.
 /// </summary>
 /// <param name="type"></param>
 /// <returns>False if type Automatic otherwise True if supported</returns>
 private static bool HasExtensionSupport(CpuExtensionType type, CpuID cpuID) =>
 type switch
 {