From f424ba8949c714adf6956f0d9b72ba7b061a0357 Mon Sep 17 00:00:00 2001 From: Useless Guru <30080938+UselessGuru@users.noreply.github.com> Date: Sat, 21 Dec 2024 10:29:46 +0100 Subject: [PATCH] v6.3.22 Improvements: - Core: Optimize miner window title display - Remove obsolete code & minor code optimizations (summary & footer) Miner updates: - JayddeeCpu-v24.7 - OneZeroMiner-v1.4.3 - Wildrig-v0.41.7 --- Balances/HashCryptos.ps1 | 4 +- Balances/HiveON.ps1 | 4 +- Balances/MiningDutch.ps1 | 4 +- Balances/MiningPoolHub.ps1 | 141 ++++++++ Balances/NiceHash.ps1 | 4 +- Balances/ProHashing.ps1 | 4 +- Balances/ZergPool.ps1 | 4 +- Balances/Zpool.ps1 | 4 +- Brains/HashCryptos.ps1 | 4 +- Brains/MiningDutch.ps1 | 4 +- Brains/ProHashing.ps1 | 4 +- Brains/ZPool.ps1 | 4 +- Brains/ZergPool.ps1 | 4 +- Data/Algorithms.json | 2 + Data/CoinNames.json | 1 + Data/CurrencyAlgorithm.json | 1 + Data/DagData.json | 324 +++++++++--------- Includes/APIServer.psm1 | 4 +- Includes/BalancesTracker.ps1 | 4 +- Includes/Core.ps1 | 185 +++++----- Includes/Downloader.ps1 | 4 +- Includes/Include.psm1 | 37 +- Includes/LegacyGUI.ps1 | 4 +- Includes/MinerAPIs/BzMiner.ps1 | 4 +- Includes/MinerAPIs/Ccminer.ps1 | 4 +- Includes/MinerAPIs/EthMiner.ps1 | 4 +- Includes/MinerAPIs/FireIce.ps1 | 4 +- Includes/MinerAPIs/Gminer.ps1 | 4 +- Includes/MinerAPIs/HellMiner.ps1 | 4 +- Includes/MinerAPIs/MiniZ.ps1 | 4 +- Includes/MinerAPIs/NanoMiner.ps1 | 4 +- Includes/MinerAPIs/OneZero.ps1 | 4 +- Includes/MinerAPIs/Rigel.ps1 | 4 +- Includes/MinerAPIs/SRBMiner.ps1 | 4 +- Includes/MinerAPIs/TeamBlackMiner.ps1 | 4 +- Includes/MinerAPIs/Trex.ps1 | 4 +- Includes/MinerAPIs/Xgminer.ps1 | 4 +- Includes/MinerAPIs/XmRig.ps1 | 4 +- Includes/MinerAPIs/lolMiner.ps1 | 4 +- Miners/BzMiner-v21.5.3.ps1 | 10 +- Miners/CcminerAlexis78-v1.5.2.ps1 | 6 +- Miners/CcminerDyn-v1.0.2.ps1 | 6 +- Miners/CcminerKlausT-v8.25.ps1 | 6 +- Miners/CcminerKlausT-v8.26x2.ps1 | 6 +- Miners/CcminerLyra2z330-v8.21r9.ps1 | 6 +- Miners/CcminerLyraYesscrypt-v8.21r18v5.ps1 | 6 +- Miners/CcminerMemeHash-v2.5.5.9.ps1 | 6 +- Miners/CcminerNeoscryptXaya-v0.2.ps1 | 6 +- Miners/CcminerVerusCpu-v3.8.3.ps1 | 6 +- Miners/CcminerVerusGpu-v3.8.3.ps1 | 6 +- Miners/ClaymoreNeoscrypt-v1.2.ps1 | 6 +- Miners/CpuMiner-v1.4.ps1 | 6 +- Miners/CpuMinerAurum-v3.23.1.ps1 | 6 +- Miners/CryptoDredge-v0.16.0.ps1 | 6 +- Miners/CryptoDredge-v0.27.0.ps1 | 6 +- Miners/EthMiner-v0.19.0.18.ps1 | 6 +- Miners/EvrProgPow-v1p3p0.ps1 | 6 +- Miners/FrkHashMiner-v1.3.14.ps1 | 6 +- Miners/GMiner-v2.75.ps1 | 6 +- Miners/GMiner-v3.44.ps1 | 6 +- Miners/HellMiner-v0.59.1.ps1 | 6 +- ...ddeeCpu-v24.6.ps1 => JayddeeCpu-v24.7.ps1} | 8 +- Miners/KawpowMiner-v1.2.4cl.ps1 | 6 +- Miners/KawpowMiner-v1.2.4cuda.ps1 | 6 +- Miners/Kudaraidee-v1.2.0a.ps1 | 6 +- Miners/MeowPowMiner-v2.0.0cl.ps1 | 6 +- Miners/MeowPowMiner-v2.0.0cuda.ps1 | 6 +- Miners/MiniZ-v2.4d.ps1 | 46 +-- Miners/NBMiner-v42.3.ps1 | 2 +- Miners/NSFMiner-v1.3.14.ps1 | 6 +- Miners/NanoMiner-v3.9.3.ps1 | 8 +- Miners/Ninjarig-1.0.3.ps1 | 6 +- Miners/NosuchCpu-v3.8.8.1.ps1 | 6 +- ...ner-v1.4.2.ps1 => OneZeroMiner-v1.4.3.ps1} | 30 +- Miners/PhoenixMiner-v6.2c.ps1 | 6 +- Miners/Radiator-v1.0.0.ps1 | 6 +- Miners/Raptor3umCpu-v2.0.ps1 | 6 +- Miners/Rigel-v1.19.1.ps1 | 6 +- Miners/RplantCpu-v5.0.41.ps1 | 8 +- Miners/RrkzCpu-v4.2.ps1 | 6 +- Miners/SCCminer-v1.1.0.ps1 | 6 +- Miners/SRBMinerMulti-v0.9.4.ps1 | 6 +- Miners/SRBMinerMulti-v2.6.8.ps1 | 8 +- Miners/SRBMinerMulti-v2.7.2.ps1 | 288 ++++++++-------- Miners/SgMinerFancyIX-v0.9.4.ps1 | 6 +- Miners/Suprminer-v2.31v2.ps1 | 6 +- Miners/TTMiner-v2024.3.2.ps1 | 6 +- Miners/TTMiner-v5.0.3.ps1 | 6 +- Miners/TeamBlackMiner-v2.25.ps1 | 6 +- Miners/TeamBlackMiner-v2.27.ps1 | 6 +- Miners/TeamRedMiner-v0.10.21.ps1 | 10 +- Miners/TeleMerakiMiner-v1.5.0.ps1 | 6 +- Miners/Trex-v0.26.8.ps1 | 6 +- ...ildrig-v0.41.5.ps1 => Wildrig-v0.41.7.ps1} | 14 +- Miners/XLArig-v5.2.4.ps1 | 6 +- Miners/XmRig-v6.22.0.3.ps1 | 12 +- Miners/XmrStak-v2.10.8.ps1 | 8 +- Miners/ZealotEnemy-v2.6.3.ps1 | 6 +- Miners/lolMiner-v1.92.ps1 | 6 +- Pools/HashCryptos.ps1 | 4 +- Pools/HiveON.ps1 | 4 +- Pools/MiningDutch.ps1 | 4 +- Pools/NiceHash.ps1 | 4 +- Pools/ProHashing.ps1 | 4 +- Pools/ZPool.ps1 | 4 +- Pools/ZergPool.ps1 | 4 +- README.md | 2 +- UG-Miner.ps1 | 13 +- Version.txt | 2 +- Web/css/main.css | 4 +- Web/parts/foot.html | 2 +- Web/parts/head.html | 4 +- Web/scripts/demo.ps1 | 4 +- 113 files changed, 873 insertions(+), 739 deletions(-) create mode 100644 Balances/MiningPoolHub.ps1 rename Miners/{JayddeeCpu-v24.6.ps1 => JayddeeCpu-v24.7.ps1} (98%) rename Miners/{OneZeroMiner-v1.4.2.ps1 => OneZeroMiner-v1.4.3.ps1} (70%) rename Miners/{Wildrig-v0.41.5.ps1 => Wildrig-v0.41.7.ps1} (99%) diff --git a/Balances/HashCryptos.ps1 b/Balances/HashCryptos.ps1 index ceba4c44..86b074c7 100644 --- a/Balances/HashCryptos.ps1 +++ b/Balances/HashCryptos.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Balances\HashCryptos.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName diff --git a/Balances/HiveON.ps1 b/Balances/HiveON.ps1 index ae9c0b6a..96fcda3a 100644 --- a/Balances/HiveON.ps1 +++ b/Balances/HiveON.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Balances\Hiveon.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName diff --git a/Balances/MiningDutch.ps1 b/Balances/MiningDutch.ps1 index 3cb86ec3..779a3c2f 100644 --- a/Balances/MiningDutch.ps1 +++ b/Balances/MiningDutch.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Balances\MiningDutch.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName diff --git a/Balances/MiningPoolHub.ps1 b/Balances/MiningPoolHub.ps1 new file mode 100644 index 00000000..7cbce34b --- /dev/null +++ b/Balances/MiningPoolHub.ps1 @@ -0,0 +1,141 @@ +<# +Copyright (c) 2018-2024 UselessGuru + +UG-Miner is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +UG-Miner is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +#> + +<# +Product: UG-Miner +File: \Balances\MiningPoolHub.ps1 +Version: 6.3.22 +Version date: 2024/12/21 +#> + +$Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName + +$RetryInterval = $Config.PoolsConfig.$Name.PoolAPIretryInterval +$PoolAPItimeout = $Config.PoolsConfig.$Name.PoolAPItimeout +$RetryCount = $Config.PoolsConfig.$Name.PoolAPIretryInterval + +$Headers = @{ "Cache-Control" = "no-cache" } +$Useragent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36" + +While (-not $UserAllBalances -and $RetryCount -gt 0 -and $Config.MiningPoolHubAPIKey) { + Try { + $Url = "https://miningpoolhub.com/" + $WebResponse = Invoke-WebRequest -Uri $Url -TimeoutSec $PoolAPItimeout -ErrorAction Ignore + + # PWSH 6+ no longer supports basic parsing -> parse text + $CoinList = [System.Collections.Generic.List[PSCustomObject]]@() + $InCoinList = $false + + If ($WebResponse.statuscode -eq 200) { + ($WebResponse.Content -split "\n" -replace ' \s+' -replace ' $').ForEach( + { + If ($_ -like '') { + $InCoinList = $true + } + If ($InCoinList) { + If ($_ -like '
') { Return } + If ($_ -like '.+' -replace '^//' -replace '.miningpoolhub.com') + } + } + } + ) + } + + $UserAllBalances = (((Invoke-RestMethod "http://miningpoolhub.com/index.php?page=api&action=getuserallbalances&api_key=$($Config.MiningPoolHubAPIKey)" -Headers $Headers -TimeoutSec $PoolAPItimeout -ErrorAction Ignore).getuserallbalances).data).Where({ $_.confirmed -gt 0 -or $_.unconfirmed -gt 0 }) + + If ($Config.LogBalanceAPIResponse) { + "$([DateTime]::Now.ToUniversalTime())" | Out-File -LiteralPath ".\Logs\BalanceAPIResponse_$Name.json" -Append -Force -ErrorAction Ignore + $Request | Out-File -LiteralPath ".\Logs\BalanceAPIResponse_$Name.json" -Append -Force -ErrorAction Ignore + $UserAllBalances | ConvertTo-Json -Depth 10 >> ".\Logs\BalanceAPIResponse_$Name.json" + } + + If ($CoinList -and $UserAllBalances) { + ($CoinList | Sort-Object).ForEach( + { + $CoinBalance = $null + $RetryCount2 = $Config.PoolsConfig.$Name.PoolAPIretryInterval + + While (-not ($CoinBalance) -and $RetryCount2 -gt 0) { + $RetryCount2-- + Try { + $CoinBalance = ((Invoke-RestMethod "http://$($_).miningpoolhub.com/index.php?page=api&action=getuserbalance&api_key=$($Config.MiningPoolHubAPIKey)" -Headers $Headers -UserAgent $UserAgent -TimeoutSec $PoolAPItimeout -ErrorAction Ignore).getuserbalance).data + If ($Config.LogBalanceAPIResponse) { + $APIResponse | ConvertTo-Json -Depth 10 | Out-File -LiteralPath ".\Logs\CoinBalanceAPIResponse_$Name.json" -Append -Force -ErrorAction Ignore + } + } + Catch { + Start-Sleep -Seconds $RetryInterval # Pool might not like immediate requests + } + } + + If ($Balance = $UserAllBalances.Where({ $_.confirmed -eq $CoinBalance.confirmed -and $_.unconfirmed -eq $CoinBalance.unconfirmed })) { + $Currency = "" + $RetryCount2 = $Config.PoolsConfig.$Name.PoolAPIretryInterval + $PoolInfo = $null + + While (-not ($PoolInfo) -and $RetryCount2 -gt 0) { + $RetryCount2-- + Try { + $PoolInfo = ((Invoke-RestMethod "http://$($_).miningpoolhub.com/index.php?page=api&action=getpoolinfo&api_key=$($Config.MiningPoolHubAPIKey)" -Headers $Headers -UserAgent $UserAgent -TimeoutSec $PoolAPItimeout -ErrorAction Ignore).getpoolinfo).data + If ($Config.LogBalanceAPIResponse) { + $APIResponse | ConvertTo-Json -Depth 10 | Out-File -LiteralPath ".\Logs\BalanceAPIResponse_$Name.json" -Append -Force -ErrorAction Ignore + } + $Currency = $PoolInfo.currency + } + Catch { + Start-Sleep -Seconds $RetryInterval # Pool might not like immediate requests + } + } + + If ($Currency) { + # Prefer custom payout threshold + $PayoutThreshold = $Config.PoolsConfig.$Name.PayoutThreshold.$Currency + + If ((-not $PayoutThreshold) -and $Currency -eq "BTC" -and $Config.PoolsConfig.$Name.PayoutThreshold.mBTC) { $PayoutThreshold = $Config.PoolsConfig.$Name.PayoutThreshold.mBTC / 1000 } + If (-not $PayoutThreshold) { $PayoutThreshold = $PoolInfo.min_ap_threshold } + + [PSCustomObject]@{ + DateTime = [DateTime]::Now.ToUniversalTime() + Pool = $Name + Currency = $Currency + Wallet = $Config.MiningPoolHubUserName + Pending = [Double]$CoinBalance.unconfirmed + Balance = [Double]$CoinBalance.confirmed + Unpaid = [Double]($CoinBalance.confirmed + $CoinBalance.unconfirmed) + # Total = [Double]($CoinBalance.confirmed + $CoinBalance.unconfirmed + $CoinBalance.ae_confirmed + $CoinBalance.ae_unconfirmed + $CoinBalance.exchange) + PayoutThreshold = [Double]$PayoutThreshold + Url = "https://$($_).miningpoolhub.com/index.php?page=account&action=pooledit" + } + } + Else { + Write-Message -Level Warn "$($Name): Cannot determine balance for currency '$(If ($_) { $_ } Else { "unknown" })' - cannot convert some balances to BTC or other currencies." + } + } + } + ) + } + } + Catch { + Start-Sleep -Seconds $RetryInterval # Pool might not like immediate requests + } + + $RetryCount-- +} + +$Error.Clear() +[System.GC]::Collect() \ No newline at end of file diff --git a/Balances/NiceHash.ps1 b/Balances/NiceHash.ps1 index 965294cb..f4296dee 100644 --- a/Balances/NiceHash.ps1 +++ b/Balances/NiceHash.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Balances\NiceHash.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If ($Config.NiceHashWallet) { diff --git a/Balances/ProHashing.ps1 b/Balances/ProHashing.ps1 index 82328374..84a89fc0 100644 --- a/Balances/ProHashing.ps1 +++ b/Balances/ProHashing.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Balances\ProHashing.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName diff --git a/Balances/ZergPool.ps1 b/Balances/ZergPool.ps1 index 570e1dd5..0b75f85d 100644 --- a/Balances/ZergPool.ps1 +++ b/Balances/ZergPool.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Balances\ZergPool.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName diff --git a/Balances/Zpool.ps1 b/Balances/Zpool.ps1 index 3c26389a..4375181a 100644 --- a/Balances/Zpool.ps1 +++ b/Balances/Zpool.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Balances\Zpool.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName diff --git a/Brains/HashCryptos.ps1 b/Brains/HashCryptos.ps1 index 5c6a9ea1..8cc633ba 100644 --- a/Brains/HashCryptos.ps1 +++ b/Brains/HashCryptos.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Brains\MiningDutch.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module ..\Includes\Include.psm1 diff --git a/Brains/MiningDutch.ps1 b/Brains/MiningDutch.ps1 index 972d75f2..0d2ef5f1 100644 --- a/Brains/MiningDutch.ps1 +++ b/Brains/MiningDutch.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Brains\MiningDutch.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module ..\Includes\Include.psm1 diff --git a/Brains/ProHashing.ps1 b/Brains/ProHashing.ps1 index fd6c9f90..09c67284 100644 --- a/Brains/ProHashing.ps1 +++ b/Brains/ProHashing.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Brains\ProHashing.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module ..\Includes\Include.psm1 diff --git a/Brains/ZPool.ps1 b/Brains/ZPool.ps1 index 325120a4..56c15156 100644 --- a/Brains/ZPool.ps1 +++ b/Brains/ZPool.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Brains\ZPool.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module ..\Includes\Include.psm1 diff --git a/Brains/ZergPool.ps1 b/Brains/ZergPool.ps1 index 56d69248..4a3c36bb 100644 --- a/Brains/ZergPool.ps1 +++ b/Brains/ZergPool.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Brains\ZergPool.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module ..\Includes\Include.psm1 diff --git a/Data/Algorithms.json b/Data/Algorithms.json index 91a4a55e..7fdfaca8 100644 --- a/Data/Algorithms.json +++ b/Data/Algorithms.json @@ -284,7 +284,9 @@ "xdag": "RandomXDAG", "xelishash": "XelisHash", "xelisv2": "XelisHash", + "xelishashv2": "XelisHashV2", "xelisv2pepew": "XelisV2PepePow", + "xelishashv2pepew": "XelisV2PepePow", "xla": "Panthera", "yescryptr16": "YescryptR16", "yescryptr32": "YescryptR32", diff --git a/Data/CoinNames.json b/Data/CoinNames.json index 15f99e0b..763e7b89 100644 --- a/Data/CoinNames.json +++ b/Data/CoinNames.json @@ -46,6 +46,7 @@ "CLORE": "Clore", "CMS": "Cmusicai", "CPU": "Cpuchain", + "CRC": "Craft", "CRNC": "Crionic", "CTXC": "Cortex", "CURVE": "Curve", diff --git a/Data/CurrencyAlgorithm.json b/Data/CurrencyAlgorithm.json index f831a196..d334b11e 100644 --- a/Data/CurrencyAlgorithm.json +++ b/Data/CurrencyAlgorithm.json @@ -82,6 +82,7 @@ "COCO": "Scrypt", "CPMK": "Yespower", "CPU": "CpuPower", + "CRC": "Scrypt", "CRM": "Skein", "CRNC": "YespowerLtncg", "CTXC": "Cuckaroo30ctx", diff --git a/Data/DagData.json b/Data/DagData.json index b0d1ce14..797b3ecf 100644 --- a/Data/DagData.json +++ b/Data/DagData.json @@ -1,7 +1,7 @@ { "Algorithm": { "Autolykos2": { - "BlockHeight": 1417627, + "BlockHeight": 1421911, "CoinName": [ "Ergo" ], @@ -9,65 +9,65 @@ "ERG" ], "DAGsize": 4541157915, - "Epoch": 979 + "Epoch": 983 }, "EtcHash": { - "BlockHeight": 21278524, + "BlockHeight": 21316669, "CoinName": [ "EthereumClassic" ], "Currency": [ "ETC" ], - "DAGsize": 4060084352, - "Epoch": 356 + "DAGsize": 4068472448, + "Epoch": 357 }, "Ethash": { - "BlockHeight": 20873058, + "BlockHeight": 20912022, "CoinName": [ "EthereumPow" ], "Currency": [ "ETHW" ], - "DAGsize": 6920596864, - "Epoch": 697 + "DAGsize": 6937377152, + "Epoch": 699 }, "EthashB3": { - "BlockHeight": 5071396, + "BlockHeight": 5129715, "CoinName": [ "Hypra" ], "Currency": [ "HYP" ], - "DAGsize": 2508191872, - "Epoch": 171 + "DAGsize": 2516582272, + "Epoch": 172 }, "EvrProgPow": { - "BlockHeight": 1110734, + "BlockHeight": 1119300, "CoinName": [ "Evrmore" ], "Currency": [ "EVR" ], - "DAGsize": 4009751168, - "Epoch": 94 + "DAGsize": 4018141312, + "Epoch": 95 }, "FiroPow": { - "BlockHeight": 1010235, + "BlockHeight": 1013640, "CoinName": [ "Firo" ], "Currency": [ "FIRO" ], - "DAGsize": 7608466816, - "Epoch": 779 + "DAGsize": 7625244544, + "Epoch": 781 }, "FishHash": { - "BlockHeight": 874281, + "BlockHeight": 882959, "CoinName": [ "Ironfish" ], @@ -78,7 +78,7 @@ "Epoch": 448 }, "HeavyHashKarlsenV2": { - "BlockHeight": 35083126, + "BlockHeight": 35598597, "CoinName": [ "Karlsen" ], @@ -86,18 +86,18 @@ "KLS" ], "DAGsize": 4831838208, - "Epoch": 1171 + "Epoch": 1188 }, "KawPow": { - "BlockHeight": 3629314, + "BlockHeight": 3637851, "CoinName": [ "Raven" ], "Currency": [ "RVN" ], - "DAGsize": 5142215296, - "Epoch": 485 + "DAGsize": 5158993024, + "Epoch": 487 }, "MeowPow": { "BlockHeight": 971453, @@ -111,40 +111,40 @@ "Epoch": 131 }, "Octopus": { - "BlockHeight": 111641894, + "BlockHeight": 112088423, "CoinName": [ "Conflux" ], "Currency": [ "CFX" ], - "DAGsize": 7885290752, - "Epoch": 214 + "DAGsize": 7902064384, + "Epoch": 215 }, "ProgPowSero": { - "BlockHeight": 14041074, + "BlockHeight": 14080815, "CoinName": [ "Sero" ], "Currency": [ "SERO" ], - "DAGsize": 5016386432, - "Epoch": 470 + "DAGsize": 5024763776, + "Epoch": 471 }, "ProgPowTelestai": { - "BlockHeight": 191952, + "BlockHeight": 200527, "CoinName": [ "Telestai" ], "Currency": [ "TLS" ], - "DAGsize": 1216345216, - "Epoch": 17 + "DAGsize": 1224732032, + "Epoch": 18 }, "ProgPowZ": { - "BlockHeight": 2942198, + "BlockHeight": 2950851, "CoinName": [ "Zano" ], @@ -155,15 +155,15 @@ "Epoch": 100 }, "SCCpow": { - "BlockHeight": 1053889, + "BlockHeight": 1058236, "CoinName": [ "StakeCubeCoin" ], "Currency": [ "SCC" ], - "DAGsize": 3816815488, - "Epoch": 327 + "DAGsize": 3825204608, + "Epoch": 328 }, "UbqHash": { "BlockHeight": 5517628, @@ -185,36 +185,36 @@ }, "Currency": { "*": { - "BlockHeight": 111641894, + "BlockHeight": 112088423, "Currency": "*", - "DAGsize": 7885290752, - "Epoch": 1171 + "DAGsize": 7902064384, + "Epoch": 1188 }, "AIDP": { "Algorithm": "KawPow", - "BlockHeight": 333336, + "BlockHeight": 341862, "CoinName": "AiDepin", - "DAGsize": 1459615616, - "Date": "2024-12-15T09:41:27.2104745Z", - "Epoch": 46, + "DAGsize": 1468006016, + "Date": "2024-12-21T08:51:26.8130292Z", + "Epoch": 47, "Url": "https://whattomine.com/coins.json" }, "AIPG": { "Algorithm": "KawPow", - "BlockHeight": 532083, + "BlockHeight": 540609, "CoinName": "Aipowergrid", - "DAGsize": 1677721216, - "Date": "2024-12-15T09:41:27.1928132Z", - "Epoch": 72, + "DAGsize": 1694497664, + "Date": "2024-12-21T08:51:26.8448738Z", + "Epoch": 74, "Url": "https://whattomine.com/coins.json" }, "AITT": { "Algorithm": "KawPow", - "BlockHeight": 1646203, + "BlockHeight": 1680322, "CoinName": "AittCoin", - "DAGsize": 2927622784, - "Date": "2024-12-15T09:41:27.2593049Z", - "Epoch": 221, + "DAGsize": 2969565568, + "Date": "2024-12-21T08:51:26.8865218Z", + "Epoch": 226, "Url": "https://whattomine.com/coins.json" }, "AKA": { @@ -237,11 +237,11 @@ }, "ANOK": { "Algorithm": "KawPow", - "BlockHeight": 348562, + "BlockHeight": 356142, "CoinName": "Anokas", - "DAGsize": 1476394112, - "Date": "2024-12-15T09:41:27.214512Z", - "Epoch": 48, + "DAGsize": 1484782976, + "Date": "2024-12-21T08:51:26.8041429Z", + "Epoch": 49, "Url": "https://whattomine.com/coins.json" }, "AVS": { @@ -255,20 +255,20 @@ }, "BLOCX": { "Algorithm": "Autolykos2", - "BlockHeight": 425321, + "BlockHeight": 433500, "CoinName": "Blocx", "DAGsize": 2147483648, - "Date": "2024-12-15T09:41:28.7409568Z", + "Date": "2024-12-21T08:51:28.5317349Z", "Epoch": 0, "Url": "https://api-explorer.blocxscan.com/api/getblockcount" }, "BTN": { "Algorithm": "Ethash", - "BlockHeight": 3489977, + "BlockHeight": 3530041, "CoinName": "BitnetBtn", - "DAGsize": 2063596672, - "Date": "2024-12-15T09:41:27.2413978Z", - "Epoch": 118, + "DAGsize": 2071981952, + "Date": "2024-12-21T08:51:26.8750401Z", + "Epoch": 119, "Url": "https://whattomine.com/coins.json" }, "CAU": { @@ -282,11 +282,11 @@ }, "CFX": { "Algorithm": "Octopus", - "BlockHeight": 111641894, + "BlockHeight": 112088423, "CoinName": "Conflux", - "DAGsize": 7885290752, - "Date": "2024-12-15T09:41:28.309345Z", - "Epoch": 214, + "DAGsize": 7902064384, + "Date": "2024-12-21T08:51:28.1343175Z", + "Epoch": 215, "Url": "https://prohashing.com/api/v1/currencies" }, "CLO": { @@ -300,11 +300,11 @@ }, "CLORE": { "Algorithm": "KawPow", - "BlockHeight": 1054198, + "BlockHeight": 1062720, "CoinName": "Clore", - "DAGsize": 2264922752, - "Date": "2024-12-15T09:41:27.2162539Z", - "Epoch": 142, + "DAGsize": 2273312128, + "Date": "2024-12-21T08:51:26.8183938Z", + "Epoch": 143, "Url": "https://whattomine.com/coins.json" }, "CMS": { @@ -336,11 +336,11 @@ }, "EGAZ": { "Algorithm": "EtcHash", - "BlockHeight": 6515636, + "BlockHeight": 6555648, "CoinName": "Etica", - "DAGsize": 2910843008, - "Date": "2024-12-15T09:41:27.247509Z", - "Epoch": 219, + "DAGsize": 2919234688, + "Date": "2024-12-21T08:51:26.8792982Z", + "Epoch": 220, "Url": "https://whattomine.com/coins.json" }, "EGEM": { @@ -363,11 +363,11 @@ }, "ERG": { "Algorithm": "Autolykos2", - "BlockHeight": 1417627, + "BlockHeight": 1421911, "CoinName": "Ergo", "DAGsize": 4541157915, - "Date": "2024-12-15T09:41:28.3066424Z", - "Epoch": 979, + "Date": "2024-12-21T08:51:28.1273349Z", + "Epoch": 983, "Url": "https://prohashing.com/api/v1/currencies" }, "ESN": { @@ -381,11 +381,11 @@ }, "ETC": { "Algorithm": "EtcHash", - "BlockHeight": 21278524, + "BlockHeight": 21316669, "CoinName": "EthereumClassic", - "DAGsize": 4060084352, - "Date": "2024-12-15T09:41:28.3163437Z", - "Epoch": 356, + "DAGsize": 4068472448, + "Date": "2024-12-21T08:51:28.1364479Z", + "Epoch": 357, "Url": "https://prohashing.com/api/v1/currencies" }, "ETHF": { @@ -408,11 +408,11 @@ }, "ETHW": { "Algorithm": "Ethash", - "BlockHeight": 20873058, + "BlockHeight": 20912022, "CoinName": "EthereumPow", - "DAGsize": 6920596864, - "Date": "2024-12-15T09:41:28.3078743Z", - "Epoch": 697, + "DAGsize": 6937377152, + "Date": "2024-12-21T08:51:28.1313093Z", + "Epoch": 699, "Url": "https://prohashing.com/api/v1/currencies" }, "ETNT": { @@ -435,11 +435,11 @@ }, "EVR": { "Algorithm": "EvrProgPow", - "BlockHeight": 1110734, + "BlockHeight": 1119300, "CoinName": "Evrmore", - "DAGsize": 4009751168, - "Date": "2024-12-15T09:41:31.1569351Z", - "Epoch": 94, + "DAGsize": 4018141312, + "Date": "2024-12-21T08:51:28.6623878Z", + "Epoch": 95, "Url": "https://evr.cryptoscope.io/api/getblockcount" }, "EXP": { @@ -453,11 +453,11 @@ }, "FIRO": { "Algorithm": "FiroPow", - "BlockHeight": 1010235, + "BlockHeight": 1013640, "CoinName": "Firo", - "DAGsize": 7608466816, - "Date": "2024-12-15T09:41:27.2213238Z", - "Epoch": 779, + "DAGsize": 7625244544, + "Date": "2024-12-21T08:51:26.8342543Z", + "Epoch": 781, "Url": "https://whattomine.com/coins.json" }, "FLORA": { @@ -471,11 +471,11 @@ }, "FREN": { "Algorithm": "KawPow", - "BlockHeight": 1679107, + "BlockHeight": 1696175, "CoinName": "Fren", - "DAGsize": 2961177728, - "Date": "2024-12-15T09:41:27.1944729Z", - "Epoch": 225, + "DAGsize": 2986338944, + "Date": "2024-12-21T08:51:26.8373377Z", + "Epoch": 228, "Url": "https://whattomine.com/coins.json" }, "GPN": { @@ -498,47 +498,47 @@ }, "HYP": { "Algorithm": "EthashB3", - "BlockHeight": 5071396, + "BlockHeight": 5129715, "CoinName": "Hypra", - "DAGsize": 2508191872, - "Date": "2024-12-15T09:41:27.2294359Z", - "Epoch": 171, + "DAGsize": 2516582272, + "Date": "2024-12-21T08:51:26.8643066Z", + "Epoch": 172, "Url": "https://whattomine.com/coins.json" }, "IRON": { "Algorithm": "FishHash", - "BlockHeight": 874281, + "BlockHeight": 882959, "CoinName": "Ironfish", "DAGsize": 4831838208, - "Date": "2024-12-15T09:41:27.2263544Z", + "Date": "2024-12-21T08:51:26.8394965Z", "Epoch": 448, "Url": "https://whattomine.com/coins.json" }, "KIIRO": { "Algorithm": "FiroPow", - "BlockHeight": 295001, + "BlockHeight": 298477, "CoinName": "KiiroCoin", - "DAGsize": 2986338944, - "Date": "2024-12-15T09:41:27.2381392Z", - "Epoch": 228, + "DAGsize": 3011508352, + "Date": "2024-12-21T08:51:26.8422987Z", + "Epoch": 231, "Url": "https://whattomine.com/coins.json" }, "KLS": { "Algorithm": "HeavyHashKarlsenV2", - "BlockHeight": 35083126, + "BlockHeight": 35598597, "CoinName": "Karlsen", "DAGsize": 4831838208, - "Date": "2024-12-15T09:41:27.227779Z", - "Epoch": 1171, + "Date": "2024-12-21T08:51:26.8297495Z", + "Epoch": 1188, "Url": "https://whattomine.com/coins.json" }, "LRS": { "Algorithm": "Ethash", - "BlockHeight": 2259926, + "BlockHeight": 2299851, "CoinName": "Larissa", - "DAGsize": 1719661184, - "Date": "2024-12-15T09:41:27.2554107Z", - "Epoch": 77, + "DAGsize": 1728047744, + "Date": "2024-12-21T08:51:26.8845224Z", + "Epoch": 78, "Url": "https://whattomine.com/coins.json" }, "META": { @@ -570,11 +570,11 @@ }, "NEOX": { "Algorithm": "KawPow", - "BlockHeight": 1347321, + "BlockHeight": 1355870, "CoinName": "Neoxa", - "DAGsize": 2592073856, - "Date": "2024-12-15T09:41:27.2320383Z", - "Epoch": 181, + "DAGsize": 2600467328, + "Date": "2024-12-21T08:51:26.8323322Z", + "Epoch": 182, "Url": "https://whattomine.com/coins.json" }, "NILU": { @@ -588,11 +588,11 @@ }, "NIR": { "Algorithm": "ProgPowZ", - "BlockHeight": 959494, + "BlockHeight": 976616, "CoinName": "Nirmata", - "DAGsize": 1350561664, - "Date": "2024-12-15T09:41:27.2188865Z", - "Epoch": 33, + "DAGsize": 1358954368, + "Date": "2024-12-21T08:51:26.8208811Z", + "Epoch": 34, "Url": "https://whattomine.com/coins.json" }, "NUKO": { @@ -606,11 +606,11 @@ }, "OCTA": { "Algorithm": "Ethash", - "BlockHeight": 6075888, + "BlockHeight": 6115903, "CoinName": "Octaspace", - "DAGsize": 2785017728, - "Date": "2024-12-15T09:41:27.2535455Z", - "Epoch": 204, + "DAGsize": 2793401984, + "Date": "2024-12-21T08:51:26.8727815Z", + "Epoch": 205, "Url": "https://whattomine.com/coins.json" }, "PAPRY": { @@ -642,11 +642,11 @@ }, "QKC": { "Algorithm": "Ethash", - "BlockHeight": 18117320, + "BlockHeight": 18169792, "CoinName": "Quarkchain", - "DAGsize": 6148849024, - "Date": "2024-12-15T09:41:27.2513712Z", - "Epoch": 605, + "DAGsize": 6165624704, + "Date": "2024-12-21T08:51:26.8700405Z", + "Epoch": 607, "Url": "https://whattomine.com/coins.json" }, "REDEV2": { @@ -669,38 +669,38 @@ }, "RVN": { "Algorithm": "KawPow", - "BlockHeight": 3629314, + "BlockHeight": 3637851, "CoinName": "Raven", - "DAGsize": 5142215296, - "Date": "2024-12-15T09:41:28.3086864Z", - "Epoch": 485, + "DAGsize": 5158993024, + "Date": "2024-12-21T08:51:28.1328285Z", + "Epoch": 487, "Url": "https://prohashing.com/api/v1/currencies" }, "SATOX": { "Algorithm": "KawPow", - "BlockHeight": 1002555, + "BlockHeight": 1011123, "CoinName": "Sato", - "DAGsize": 2206203008, - "Date": "2024-12-15T09:41:27.2253765Z", - "Epoch": 135, + "DAGsize": 2214587264, + "Date": "2024-12-21T08:51:26.7910736Z", + "Epoch": 136, "Url": "https://whattomine.com/coins.json" }, "SCC": { "Algorithm": "SCCpow", - "BlockHeight": 1053889, + "BlockHeight": 1058236, "CoinName": "StakeCubeCoin", - "DAGsize": 3816815488, - "Date": "2024-12-15T09:41:28.6025131Z", - "Epoch": 327, + "DAGsize": 3825204608, + "Date": "2024-12-21T08:51:28.4151476Z", + "Epoch": 328, "Url": "https://scc.ccore.online/api/getblockcount" }, "SERO": { "Algorithm": "ProgPowSero", - "BlockHeight": 14041074, + "BlockHeight": 14080815, "CoinName": "Sero", - "DAGsize": 5016386432, - "Date": "2024-12-15T09:41:27.2358956Z", - "Epoch": 470, + "DAGsize": 5024763776, + "Date": "2024-12-21T08:51:26.861804Z", + "Epoch": 471, "Url": "https://whattomine.com/coins.json" }, "SLX": { @@ -714,11 +714,11 @@ }, "TLS": { "Algorithm": "ProgPowTelestai", - "BlockHeight": 191952, + "BlockHeight": 200527, "CoinName": "Telestai", - "DAGsize": 1216345216, - "Date": "2024-12-15T09:41:28.4634498Z", - "Epoch": 17, + "DAGsize": 1224732032, + "Date": "2024-12-21T08:51:28.2857411Z", + "Epoch": 18, "Url": "https://telestai.cryptoscope.io/api/getblockcount" }, "UBQ": { @@ -741,11 +741,11 @@ }, "XNA": { "Algorithm": "KawPow", - "BlockHeight": 868444, + "BlockHeight": 876991, "CoinName": "Neurai", - "DAGsize": 2055208576, - "Date": "2024-12-15T09:41:27.2123648Z", - "Epoch": 117, + "DAGsize": 2063596672, + "Date": "2024-12-21T08:51:26.8144823Z", + "Epoch": 118, "Url": "https://whattomine.com/coins.json" }, "XPB": { @@ -759,24 +759,24 @@ }, "ZANO": { "Algorithm": "ProgPowZ", - "BlockHeight": 2942198, + "BlockHeight": 2950851, "CoinName": "Zano", "DAGsize": 1912601216, - "Date": "2024-12-15T09:41:27.187173Z", + "Date": "2024-12-21T08:51:26.7942429Z", "Epoch": 100, "Url": "https://whattomine.com/coins.json" } }, "Updated": { - "https://api-explorer.blocxscan.com/api/getblockcount": "2024-12-15T09:41:28.7412755Z", - "https://evr.cryptoscope.io/api/getblockcount": "2024-12-15T09:41:31.1572949Z", + "https://api-explorer.blocxscan.com/api/getblockcount": "2024-12-21T08:51:28.5320675Z", + "https://evr.cryptoscope.io/api/getblockcount": "2024-12-21T08:51:28.6627142Z", "https://mewc.cryptoscope.io/api/getblockcount": "2024-07-14T13:29:49.1181315Z", - "https://minerstat.com/dag-size-calculator": "2024-12-15T09:41:27.3576191Z", - "https://prohashing.com/api/v1/currencies": "2024-12-15T09:41:28.3168755Z", - "https://scc.ccore.online/api/getblockcount": "2024-12-15T09:41:28.6029066Z", - "https://telestai.cryptoscope.io/api/getblockcount": "2024-12-15T09:41:28.4637821Z", + "https://minerstat.com/dag-size-calculator": "2024-12-21T08:51:26.9687121Z", + "https://prohashing.com/api/v1/currencies": "2024-12-21T08:51:28.1368429Z", + "https://scc.ccore.online/api/getblockcount": "2024-12-21T08:51:28.4154783Z", + "https://telestai.cryptoscope.io/api/getblockcount": "2024-12-21T08:51:28.2860851Z", "https://telestai.cryptoscope.io/api/getblockcount/": "2024-10-23T21:02:21.4975231Z", - "https://whattomine.com/coins.json": "2024-12-15T09:41:27.2595757Z", + "https://whattomine.com/coins.json": "2024-12-21T08:51:26.8869543Z", "https://www.coinexplorer.net/api/v1/SCC/getblockcount": "2024-09-02T06:05:35.3039058Z", "https://zergpool.com/api/currencies": "2024-08-26T19:03:15.0996499Z" } diff --git a/Includes/APIServer.psm1 b/Includes/APIServer.psm1 index 0c656a7b..dba06b38 100644 --- a/Includes/APIServer.psm1 +++ b/Includes/APIServer.psm1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\APIServer.psm1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Function Start-APIServer { diff --git a/Includes/BalancesTracker.ps1 b/Includes/BalancesTracker.ps1 index a8f77faf..09df76c3 100644 --- a/Includes/BalancesTracker.ps1 +++ b/Includes/BalancesTracker.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\BalancesTracker.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module .\Include.psm1 diff --git a/Includes/Core.ps1 b/Includes/Core.ps1 index a7b6fad4..520e4a2d 100644 --- a/Includes/Core.ps1 +++ b/Includes/Core.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: Core.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module .\Include.psm1 @@ -499,7 +499,7 @@ Try { # At least one port (SSL or non-SSL) must be available $Pools.Where({ -not ($_.PoolPorts | Select-Object) }).ForEach({ $_.Reasons.Add("No ports available") }) # Apply watchdog to pools - $Pools = Update-PoolWatchdog -Pools $Pools + If ($Pools) { $Pools = Update-PoolWatchdog -Pools $Pools } # Second best pools per algorithm ($Pools.Where({ -not $_.Reasons }) | Group-Object -Property AlgorithmVariant, Name).ForEach({ ($_.Group | Sort-Object -Property Price_Bias -Descending | Select-Object -Skip 1).ForEach({ $_.Reasons = "Second best algorithm" }) }) @@ -567,7 +567,10 @@ Try { $Variables.PoolsBest = $Variables.Pools.Where({ $_.Best }) | Sort-Object -Property Algorithm If (-not $Variables.PoolsBest) { - Write-Message -Level Warn "No available pools - retrying in $($Config.Interval) seconds..." + $Message = "No available pools - retrying in $($Config.Interval) seconds..." + Write-Message -Level Warn $Message + $Variables.Summary = $Message + Remove-Variable Message Start-Sleep -Seconds $Config.Interval Write-Message -Level Info "Ending cycle (No available pools)." Continue @@ -623,7 +626,7 @@ Try { If ($Shares = ($Miner.Data | Select-Object -Last 1).Shares) { ForEach ($Algorithm in $Miner.Algorithms) { If ($Shares.$Algorithm -and $Shares.$Algorithm[1] -gt 0 -and $Shares.$Algorithm[3] -gt [Math]::Floor(1 / $Config.BadShareRatioThreshold) -and $Shares.$Algorithm[1] / $Shares.$Algorithm[3] -gt $Config.BadShareRatioThreshold) { - $Miner.StatusInfo = "'$($Miner.Info)' stopped. Too many bad shares: ($($Algorithm): A$($Shares.$Algorithm[0])+R$($Shares.$Algorithm[1])+I$($Shares.$Algorithm[2])=T$($Shares.$Algorithm[3]))" + $Miner.StatusInfo = "$($Miner.Info) stopped. Too many bad shares: ($($Algorithm): A$($Shares.$Algorithm[0])+R$($Shares.$Algorithm[1])+I$($Shares.$Algorithm[2])=T$($Shares.$Algorithm[3]))" $Miner.SetStatus([MinerStatus]::Failed) $Variables.Devices.Where({ $Miner.DeviceNames -contains $_.Name }).ForEach({ $_.Status = $Miner.Status; $_.StatusInfo = $Miner.StatusInfo; $_.SubStatus = $Miner.SubStatus }) } @@ -633,7 +636,7 @@ Try { } } Else { - $Miner.StatusInfo = "'$($Miner.Info)' ($($Miner.Data.Count) Sample$(If ($Miner.Data.Count -ne 1) { "s" })) exited unexpectedly" + $Miner.StatusInfo = "$($Miner.Info) ($($Miner.Data.Count) Sample$(If ($Miner.Data.Count -ne 1) { "s" })) exited unexpectedly" $Miner.SetStatus([MinerStatus]::Failed) $Variables.Devices.Where({ $Miner.DeviceNames -contains $_.Name }).ForEach({ $_.Status = $Miner.Status; $_.StatusInfo = $Miner.StatusInfo; $_.SubStatus = $Miner.SubStatus }) } @@ -684,7 +687,7 @@ Try { } ElseIf ($MinerHashrates.$Algorithm -gt 0 -and $Miner.Status -eq [MinerStatus]::Running -and $Stat.Week -and ($MinerHashrates.$Algorithm -gt $Stat.Week * 2 -or $MinerHashrates.$Algorithm -lt $Stat.Week / 2)) { # Stop miner if new value is outside ±200% of current value - $Miner.StatusInfo = "'$($Miner.Info)' reported hashrate is unreal ($($Algorithm): $(($MinerHashrates.$Algorithm | ConvertTo-Hash) -replace " ") is not within ±200% of stored value of $(($Stat.Week | ConvertTo-Hash) -replace " "))" + $Miner.StatusInfo = "$($Miner.Info) reported hashrate is unreal ($($Algorithm): $(($MinerHashrates.$Algorithm | ConvertTo-Hash) -replace " ") is not within ±200% of stored value of $(($Stat.Week | ConvertTo-Hash) -replace " "))" $Miner.SetStatus([MinerStatus]::Failed) $Variables.Devices.Where({ $Miner.DeviceNames -contains $_.Name }).ForEach({ $_.Status = $Miner.Status; $_.StatusInfo = $Miner.StatusInfo; $_.SubStatus = $Miner.SubStatus }) } @@ -701,7 +704,7 @@ Try { } ElseIf ($MinerPowerConsumption -gt 0 -and $Miner.Status -eq [MinerStatus]::Running -and $Stat.Week -and ($MinerPowerConsumption -gt $Stat.Week * 2 -or $MinerPowerConsumption -lt $Stat.Week / 2)) { # Stop miner if new value is outside ±200% of current value - $Miner.StatusInfo = "'$($Miner.Info)' reported power consumption is unreal ($($PowerConsumption.ToString("N2"))W is not within ±200% of stored value of $(([Double]$Stat.Week).ToString("N2"))W)" + $Miner.StatusInfo = "$($Miner.Info) reported power consumption is unreal ($($PowerConsumption.ToString("N2"))W is not within ±200% of stored value of $(([Double]$Stat.Week).ToString("N2"))W)" $Miner.SetStatus([MinerStatus]::Failed) $Variables.Devices.Where({ $Miner.DeviceNames -contains $_.Name }).ForEach({ $_.Status = $Miner.Status; $_.StatusInfo = $Miner.StatusInfo; $_.SubStatus = $Miner.SubStatus }) } @@ -1061,85 +1064,74 @@ Try { $Variables.MinersNeedingBenchmark = $Miners.Where({ $_.Available -and $_.Benchmark }) | Sort-Object -Property Name -Unique $Variables.MinersNeedingPowerConsumptionMeasurement = $Miners.Where({ $_.Available -and $_.MeasurePowerConsumption }) | Sort-Object -Property Name -Unique - $Miners.ForEach({ $_.Best = $false }) - - # ProfitabilityThreshold check - OK to run miners? + $Summary = "" If ($Variables.Rates.($Config.PayoutCurrency)) { - If ($Variables.DonationRunning -or $Variables.MinersNeedingBenchmark -or $Variables.MinersNeedingPowerConsumptionMeasurement -or -not $Variables.CalculatePowerCost -or $Variables.MiningProfit -ge ($Config.ProfitabilityThreshold / $Variables.Rates.BTC.($Config.FIATcurrency))) { + # ProfitabilityThreshold check - OK to run miners? + If ($Variables.CalculatePowerCost -and $Variables.MiningProfit -lt ($Config.ProfitabilityThreshold / $Variables.Rates.BTC.($Config.FIATcurrency))) { + # Mining earning/profit is below threshold + $MinersBest = [Miner[]]@() + $Text = "Mining profit {0} {1:n} / day is below the configured threshold of {0} {2:n} / day. Mining is suspended until threshold is reached." -f $Config.FIATcurrency, ($Variables.MiningProfit * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Config.ProfitabilityThreshold + Write-Message -Level Warn ($Text -replace " / day", "/day") + $Summary += "$Text`n" + Remove-Variable Text + } + Else { $MinersBest.ForEach({ $_.Best = $true }) - If ($Variables.MinersNeedingBenchmark.Count) { - $Variables.Summary = "Earning / day: n/a (Benchmarking: $($Variables.MinersNeedingBenchmark.Count) $(If ($Variables.MinersNeedingBenchmark.Count -eq 1) { "miner" } Else { "miners" }) left$(If ($Variables.EnabledDevices.Count -gt 1) { " [$((($Variables.MinersNeedingBenchmark | Group-Object { [String]$_.DeviceNames } | Sort-Object -Property Name).ForEach({ "$($_.Name): $($_.Count)" })) -join ", ")]" }))" + } + + If ($Variables.MinersNeedingBenchmark.Count) { + $Summary += "Earning / day: n/a (Benchmarking: $($Variables.MinersNeedingBenchmark.Count) $(If ($Variables.MinersNeedingBenchmark.Count -eq 1) { "miner" } Else { "miners" }) left$(If ($Variables.EnabledDevices.Count -gt 1) { " [$((($Variables.MinersNeedingBenchmark | Group-Object { [String]$_.DeviceNames } | Sort-Object -Property Name).ForEach({ "$($_.Name): $($_.Count)" })) -join ", ")]" }))" + } + ElseIf ($Variables.MiningEarning -gt 0) { + $Summary += "Earning / day: {0:n} {1}" -f ($Variables.MiningEarning * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Config.FIATcurrency + } + + If ($Variables.CalculatePowerCost) { + If ($Summary -ne "") { $Summary += " " } + If ($Variables.MinersNeedingPowerConsumptionMeasurement.Count -or [Double]::IsNaN($Variables.MiningPowerCost)) { + $Summary += "Profit / day: n/a (Measuring power consumption: $($Variables.MinersNeedingPowerConsumptionMeasurement.Count) $(If ($Variables.MinersNeedingPowerConsumptionMeasurement.Count -eq 1) { "miner" } Else { "miners" }) left$(If ($Variables.EnabledDevices.Count -gt 1) { " [$((($Variables.MinersNeedingPowerConsumptionMeasurement | Group-Object { [String]$_.DeviceNames } | Sort-Object -Property Name).ForEach({ "$($_.Name): $($_.Count)" })) -join ", ")]" }))" + } + ElseIf ($Variables.MinersNeedingBenchmark.Count) { + $Summary += "Profit / day: n/a" } - ElseIf ($Variables.MiningEarning -gt 0) { - $Variables.Summary = "Earning / day: {0:n} {1}" -f ($Variables.MiningEarning * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Config.FIATcurrency + ElseIf ($Variables.MiningPowerConsumption -gt 0) { + $Summary += "Profit / day: {0:n} {1}" -f ($Variables.MiningProfit * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Config.FIATcurrency } Else { - $Variables.Summary = "" + $Summary += "Profit / day: n/a (no power data)" } - If ($Variables.CalculatePowerCost -and $Variables.PoolsBest) { - If ($Variables.Summary -ne "") { $Variables.Summary += "   " } - - If ($Variables.MinersNeedingPowerConsumptionMeasurement.Count -or [Double]::IsNaN($Variables.MiningPowerCost)) { - $Variables.Summary += "Profit / day: n/a (Measuring power consumption: $($Variables.MinersNeedingPowerConsumptionMeasurement.Count) $(If ($Variables.MinersNeedingPowerConsumptionMeasurement.Count -eq 1) { "miner" } Else { "miners" }) left$(If ($Variables.EnabledDevices.Count -gt 1) { " [$((($Variables.MinersNeedingPowerConsumptionMeasurement | Group-Object { [String]$_.DeviceNames } | Sort-Object -Property Name).ForEach({ "$($_.Name): $($_.Count)" })) -join ", ")]" }))" - } - ElseIf ($Variables.MinersNeedingBenchmark.Count) { - $Variables.Summary += "Profit / day: n/a" - } - ElseIf ($Variables.MiningPowerConsumption -gt 0) { - $Variables.Summary += "Profit / day: {0:n} {1}" -f ($Variables.MiningProfit * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Config.FIATcurrency - } - Else { - $Variables.Summary += "Profit / day: n/a (no power data)" - } - - If ($Variables.CalculatePowerCost) { - If ($Variables.Summary -ne "") { $Variables.Summary += "   " } - - If ([Double]::IsNaN($Variables.MiningEarning) -or [Double]::IsNaN($Variables.MiningPowerCost)) { - $Variables.Summary += "Power cost / day: n/a [Miner$(If ($MinersBest.Count -ne 1) { "s" }): n/a; Base: {1:n} {0} ({2:n2} W)]" -f $Config.FIATcurrency, ($Variables.BasePowerCost * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Variables.PowerConsumptionIdleSystemW - } - ElseIf ($Variables.MiningPowerConsumption -gt 0) { - $Variables.Summary += "Power cost / day: {1:n} {0} [Miner$(If ($MinersBest.Count -ne 1) { "s" }): {2:n} {0} ({3:n2} W); Base: {4:n} {0} ({5:n2} W)]" -f $Config.FIATcurrency, (($Variables.MiningPowerCost + $Variables.BasePowerCost) * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), ($Variables.MiningPowerCost * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Variables.MiningPowerConsumption, ($Variables.BasePowerCost * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Variables.PowerConsumptionIdleSystemW - } - Else { - $Variables.Summary += "Power cost / day: n/a [Miner: n/a; Base: {1:n} {0} ({2:n2} W)]" -f $Config.FIATcurrency, ($Variables.BasePowerCost * $Variables.Rates.BTC.($Config.FIATcurrency)), $Variables.PowerConsumptionIdleSystemW - } - } + If ($Summary -ne "") { $Summary += " " } + If ([Double]::IsNaN($Variables.MiningEarning) -or [Double]::IsNaN($Variables.MiningPowerCost)) { + $Summary += "Power cost / day: n/a [Miner$(If ($MinersBest.Count -ne 1) { "s" }): n/a; Base: {1:n} {0} ({2:n2} W)]" -f $Config.FIATcurrency, ($Variables.BasePowerCost * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Variables.PowerConsumptionIdleSystemW } - If ($Variables.Summary -ne "") { $Variables.Summary += "
" } - - # Add currency conversion rates - ((@(If ($Config.UsemBTC) { "mBTC" } Else { ($Config.PayoutCurrency) }) + @($Config.ExtraCurrencies)) | Select-Object -Unique).Where({ $Variables.Rates.$_.($Config.FIATcurrency) }).ForEach( - { - $Variables.Summary += "1 $_ = {0:N$(Get-DecimalsFromValue -Value $Variables.Rates.$_.($Config.FIATcurrency) -DecimalsMax $Config.DecimalsMax)} $($Config.FIATcurrency)   " -f $Variables.Rates.$_.($Config.FIATcurrency) - } - ) - } - Else { - # Mining earning/profit is below threshold - $MinersBest = [Miner[]]@() - $Variables.Summary = "Mining profit {0} {1:n$($Config.DecimalsMax)} / day is below the configured threshold of {0} {2:n$($Config.DecimalsMax)} / day. Mining is suspended until threshold is reached." -f $Config.FIATcurrency, (($Variables.MiningEarning - $(If ($Config.CalculatePowerCost) { $Variables.MiningPowerCost - $Variables.BasePowerCost } Else { 0 })) * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Config.ProfitabilityThreshold - Write-Message -Level Warn ($Variables.Summary -replace "
", " " -replace " / day", "/day") - If ($Variables.Rates) { - # Add currency conversion rates - If ($Variables.Summary -ne "") { $Variables.Summary += "
" } - ((@(If ($Config.UsemBTC) { "mBTC" } Else { $Config.PayoutCurrency }) + @($Config.ExtraCurrencies)) | Select-Object -Unique).Where({ $Variables.Rates.$_.($Config.FIATcurrency) }).ForEach( - { - $Variables.Summary += "1 $_ = {0:N$(Get-DecimalsFromValue -Value $Variables.Rates.$_.($Config.FIATcurrency) -DecimalsMax $Config.DecimalsMax)} $($Config.FIATcurrency)   " -f $Variables.Rates.$_.($Config.FIATcurrency) - } - ) + ElseIf ($Variables.MiningPowerConsumption -gt 0) { + $Summary += "Power cost / day: {1:n} {0} [Miner$(If ($MinersBest.Count -ne 1) { "s" }): {2:n} {0} ({3:n2} W); Base: {4:n} {0} ({5:n2} W)]" -f $Config.FIATcurrency, (($Variables.MiningPowerCost + $Variables.BasePowerCost) * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), ($Variables.MiningPowerCost * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Variables.MiningPowerConsumption, ($Variables.BasePowerCost * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Variables.PowerConsumptionIdleSystemW + } + Else { + $Summary += "Power cost / day: n/a [Miner: n/a; Base: {1:n} {0} ({2:n2} W)]" -f $Config.FIATcurrency, ($Variables.BasePowerCost * $Variables.Rates.BTC.($Config.FIATcurrency)), $Variables.PowerConsumptionIdleSystemW } } + + # Add currency conversion rates + If ($Summary -ne "") { $Summary += "`n" } + ((@(If ($Config.UsemBTC) { "mBTC" } Else { ($Config.PayoutCurrency) }) + @($Config.ExtraCurrencies)) | Select-Object -Unique).Where({ $Variables.Rates.$_.($Config.FIATcurrency) }).ForEach( + { + $Summary += "1 $_ = {0:N$(Get-DecimalsFromValue -Value $Variables.Rates.$_.($Config.FIATcurrency) -DecimalsMax $Config.DecimalsMax)} $($Config.FIATcurrency) " -f $Variables.Rates.$_.($Config.FIATcurrency) + } + ) } Else { - $Variables.Summary = "Error:
Could not get BTC exchange rate from min-api.cryptocompare.com" + $Summary = "Error: Could not get BTC exchange rate from min-api.cryptocompare.com" + $MinersBest = [Miner[]]@() } + $Variables.Summary = $Summary + Remove-Variable $Summary # Stop running miners ForEach ($Miner in @($Miners.Where({ [MinerStatus]::DryRun, [MinerStatus]::Running -contains $_.Status }) | Sort-Object { [String]$_.DeviceNames })) { If ($Miner.Status -eq [MinerStatus]::Running -and $Miner.GetStatus() -ne [MinerStatus]::Running) { - $Miner.StatusInfo = "'$($Miner.Info)' ($($Miner.Data.Count) Sample$(If ($Miner.Data.Count -ne 1) { "s" })) exited unexpectedly" + $Miner.StatusInfo = "$($Miner.Info) ($($Miner.Data.Count) Sample$(If ($Miner.Data.Count -ne 1) { "s" })) exited unexpectedly" $Miner.SetStatus([MinerStatus]::Failed) } Else { @@ -1224,17 +1216,26 @@ Try { $Variables.Miners = [Miner[]]@() $Variables.RefreshNeeded = $true If (-not $Variables.EnabledDevices) { - Write-Message -Level Warn "No enabled devices - retrying in $($Config.Interval) seconds..." + $Message = "No enabled devices - retrying in $($Config.Interval) seconds..." + Write-Message -Level Warn $Message + $Variables.Summary = $Message + Remove-Variable Message Start-Sleep -Seconds $Config.Interval Write-Message -Level Info "Ending cycle (No enabled devices)." } ElseIf (-not $Variables.PoolName) { - Write-Message -Level Warn "No configured pools - retrying in $($Config.Interval) seconds..." + $Message = "No configured pools - retrying in $($Config.Interval) seconds..." + Write-Message -Level Warn $Message + $Variables.Summary = $Message + Remove-Variable Message Start-Sleep -Seconds $Config.Interval Write-Message -Level Info "Ending cycle (No configured pools)." } Else { - Write-Message -Level Warn "No available miners - retrying in $($Config.Interval) seconds..." + $Message = "No available miners - retrying in $($Config.Interval) seconds..." + Write-Message -Level Warn $Message + $Variables.Summary = $Message + Remove-Variable Message Start-Sleep -Seconds $Config.Interval Write-Message -Level Info "Ending cycle (No available miners)." } @@ -1307,9 +1308,6 @@ Try { } $Variables.Devices.Where({ $Miner.DeviceNames -contains $_.Name }).ForEach({ $_.Status = $Miner.Status; $_.StatusInfo = $Miner.StatusInfo; $_.SubStatus = $Miner.SubStatus }) - # Set window title - If ($Miner.Process.MainWindowHandle) { [Void][Win32]::SetWindowText($Miner.Process.MainWindowHandle, $Miner.StatusInfo) } - # Add watchdog timer If ($Config.Watchdog) { ForEach ($Worker in $Miner.Workers) { @@ -1336,21 +1334,11 @@ Try { $Miner.DataCollectInterval = $DataCollectInterval $Miner.RestartDataReader() } - } - Remove-Variable DataCollectInterval - - ForEach ($Miner in $Variables.MinersBest) { If ($Message = "$(If ($Miner.Benchmark) { "Benchmarking" })$(If ($Miner.Benchmark -and $Miner.MeasurePowerConsumption) { " and measuring power consumption" } ElseIf ($Miner.MeasurePowerConsumption) { "Measuring power consumption" })") { Write-Message -Level Verbose "$Message for miner '$($Miner.Info)' in progress [Attempt $($Miner.Activated) of $($Variables.WatchdogCount + 1); min. $($Miner.MinDataSample) sample$(If ($Miner.MinDataSample -ne 1) { "s" })]..." } - Try { - $Miner.Process.PriorityClass = $Global:PriorityNames.($Miner.ProcessPriority) - # Set window title - [Void][Win32]::SetWindowText($Miner.Process.MainWindowHandle, $Miner.StatusInfo) - } - Catch { } } - Remove-Variable Miner, Message -ErrorAction Ignore + Remove-Variable DataCollectInterval, Miner, Message -ErrorAction Ignore ($Variables.Miners.Where({ $_.Available }) | Group-Object { [String]$_.DeviceNames }).ForEach( { @@ -1392,13 +1380,13 @@ Try { ForEach ($Miner in $Variables.MinersRunning.Where({ $_.Status -ne [MinerStatus]::DryRun })) { If ($Miner.GetStatus() -ne [MinerStatus]::Running) { # Miner crashed - $Miner.StatusInfo = "'$($Miner.Info)' ($($Miner.Data.Count) Sample$(If ($Miner.Data.Count -ne 1) { "s" })) exited unexpectedly" + $Miner.StatusInfo = "$($Miner.Info) ($($Miner.Data.Count) sample$(If ($Miner.Data.Count -ne 1) { "s" })) exited unexpectedly" $Miner.SetStatus([MinerStatus]::Failed) $Variables.MinersFailed += $Miner } ElseIf ($Miner.DataReaderJob.State -ne [MinerStatus]::Running) { # Miner data reader process failed - $Miner.StatusInfo = "'$($Miner.Info)' ($($Miner.Data.Count) Sample$(If ($Miner.Data.Count -ne 1) { "s" })) miner data reader exited unexpectedly" + $Miner.StatusInfo = "$($Miner.Info) ($($Miner.Data.Count) sample$(If ($Miner.Data.Count -ne 1) { "s" })) miner data reader exited unexpectedly" $Miner.SetStatus([MinerStatus]::Failed) $Variables.MinersFailed += $Miner } @@ -1415,17 +1403,17 @@ Try { $Samples.Where({ $_.Date -ge $Miner.ValidDataSampleTimestamp -and $_.Hashrate.PSObject.Properties.Value -notcontains 0 }).ForEach({ $Miner.Data.Add($_) }) Write-Message -Level Verbose "$($Miner.Name) data sample collected [$(($Sample.Hashrate.PSObject.Properties.Name.ForEach({ "$($_): $(($Sample.Hashrate.$_ | ConvertTo-Hash) -replace " ")$(If ($Config.ShowShares) { " (Shares: A$($Sample.Shares.$_[0])+R$($Sample.Shares.$_[1])+I$($Sample.Shares.$_[2])=T$($Sample.Shares.$_[3]))" })" })) -join " & ")$(If ($Sample.PowerConsumption) { " | Power: $($Sample.PowerConsumption.ToString("N2"))W" })] ($($Miner.Data.Count) Sample$(If ($Miner.Data.Count -ne 1) { "s" }))" If ($Miner.Activated -gt 0 -and ($Miner.Benchmark -or $Miner.MeasurePowerConsumption)) { - $Miner.StatusInfo = "$(If ($Miner.Benchmark) { "Benchmarking" })$(If ($Miner.Benchmark -and $Miner.MeasurePowerConsumption) { " and measuring power consumption" } ElseIf ($Miner.MeasurePowerConsumption) { "Measuring power consumption" }) '$($Miner.Info)'" + $Miner.StatusInfo = " '$($Miner.Info)' is $(If ($Miner.Benchmark) { "benchmarking" })$(If ($Miner.Benchmark -and $Miner.MeasurePowerConsumption) { " and measuring power consumption" } ElseIf ($Miner.MeasurePowerConsumption) { "measuring power consumption" })" $Miner.SubStatus = "benchmarking" } Else { - $Miner.StatusInfo = "Mining '$($Miner.Info)'" + $Miner.StatusInfo = "$($Miner.Info) is mining" $Miner.SubStatus = "running" } } ElseIf (-not $Config.Ignore0HashrateSample -or $Miner.ValidDataSampleTimestamp -ne [DateTime]0) { Write-Message -Level Verbose "$($Miner.Name) data sample discarded [$(($Sample.Hashrate.PSObject.Properties.Name.ForEach({ "$($_): $(($Sample.Hashrate.$_ | ConvertTo-Hash) -replace " ")$(If ($Config.ShowShares) { " (Shares: A$($Sample.Shares.$_[0])+R$($Sample.Shares.$_[1])+I$($Sample.Shares.$_[2])=T$($Sample.Shares.$_[3]))" })" })) -join " & ")$(If ($Sample.PowerConsumption) { " | Power: $($Sample.PowerConsumption.ToString("N2"))W" })]$(If ($Miner.ValidDataSampleTimestamp -ne [DateTime]0) { " (Miner is warming up [$(([DateTime]::Now.ToUniversalTime() - $Miner.ValidDataSampleTimestamp).TotalSeconds.ToString("0") -replace "-0", "0") sec])" })" - $Miner.StatusInfo = "Warming up '$($Miner.Info)'" + $Miner.StatusInfo = "$($Miner.Info) is warming up" $Miner.SubStatus = "warmingup" } } @@ -1433,24 +1421,21 @@ Try { If ($Variables.NewMiningStatus -eq "Running") { # Stop miner, it has not provided hash rate on time If ($Miner.ValidDataSampleTimestamp -eq [DateTime]0 -and [DateTime]::Now.ToUniversalTime() -gt $Miner.BeginTime.AddSeconds($Miner.WarmupTimes[0])) { - $Miner.StatusInfo = "'$($Miner.Info)' has not provided first valid data sample in $($Miner.WarmupTimes[0]) seconds" + $Miner.StatusInfo = "$($Miner.Info) has not provided first valid data sample in $($Miner.WarmupTimes[0]) seconds" $Miner.SetStatus([MinerStatus]::Failed) $Variables.MinersFailed += $Miner } # Miner stuck - no sample received in last few data collect intervals ElseIf ($Miner.ValidDataSampleTimestamp -gt [DateTime]0 -and [DateTime]::Now.ToUniversalTime() -gt $Miner.DataSampleTimestamp.AddSeconds((($Miner.DataCollectInterval * 5), 10 | Measure-Object -Maximum).Maximum * $Miner.Algorithms.Count)) { - $Miner.StatusInfo = "'$($Miner.Info)' has not updated data for more than $((($Miner.DataCollectInterval * 5), 10 | Measure-Object -Maximum).Maximum * $Miner.Algorithms.Count) seconds" + $Miner.StatusInfo = "$($Miner.Info) has not updated data for more than $((($Miner.DataCollectInterval * 5), 10 | Measure-Object -Maximum).Maximum * $Miner.Algorithms.Count) seconds" $Miner.SetStatus([MinerStatus]::Failed) $Variables.MinersFailed += $Miner } } } - Try { - $Miner.Process.PriorityClass = $Global:PriorityNames.($Miner.ProcessPriority) - # Set window title - [Void][Win32]::SetWindowText($Miner.Process.MainWindowHandle, $Miner.StatusInfo) - } - Catch { } + Try { $Miner.Process.PriorityClass = $Global:PriorityNames.($Miner.ProcessPriority) } Catch { } + # Set window title + Try { [Void][Win32]::SetWindowText($Miner.Process.MainWindowHandle, $Miner.StatusInfo) } Catch { } $Variables.Devices.Where({ $Miner.DeviceNames -contains $_.Name }).ForEach({ $_.Status = $Miner.Status; $_.StatusInfo = $Miner.StatusInfo; $_.SubStatus = $Miner.SubStatus }) } Remove-Variable Miner, Sample, Samples -ErrorAction Ignore diff --git a/Includes/Downloader.ps1 b/Includes/Downloader.ps1 index edfd275e..c44c483e 100644 --- a/Includes/Downloader.ps1 +++ b/Includes/Downloader.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\Downloader.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module .\Includes\Include.psm1 diff --git a/Includes/Include.psm1 b/Includes/Include.psm1 index be9f0145..fac91272 100644 --- a/Includes/Include.psm1 +++ b/Includes/Include.psm1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\include.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> $Global:DebugPreference = "SilentlyContinue" @@ -327,7 +327,7 @@ Class Miner : IDisposable { [String]$URI [DateTime]$ValidDataSampleTimestamp = 0 [String]$Version - [UInt16[]]$WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + [UInt16[]]$WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking [String]$WindowStyle [Worker[]]$Workers = @() [Worker[]]$WorkersRunning = @() @@ -417,14 +417,14 @@ Class Miner : IDisposable { $this.PowerConsumption_Live = [Double]::NaN If ($this.Status -eq [MinerStatus]::DryRun) { - $this.StatusInfo = "Dry run '$($this.Info)'" - $this.SubStatus = "idle" Write-Message -Level Info "Dry run for miner '$($this.Info)'..." + $this.StatusInfo = "$($this.Info) (Dry run)" + $this.SubStatus = "idle" $this.StatStart = $this.BeginTime = [DateTime]::Now.ToUniversalTime() } Else { - $this.StatusInfo = "Starting '$($this.Info)'" Write-Message -Level Info "Starting miner '$($this.Info)'..." + $this.StatusInfo = "$($this.Info) is starting" } Write-Message -Level Verbose $this.CommandLine @@ -457,7 +457,7 @@ Class Miner : IDisposable { If ($this.Status -ne [MinerStatus]::DryRun) { - $this.ProcessJob = Invoke-CreateProcess -InformationVariable $null -WarningVariable $null -BinaryPath "$PWD\$($this.Path)" -ArgumentList $this.GetCommandLineParameters() -WorkingDirectory (Split-Path "$PWD\$($this.Path)") -WindowStyle $this.WindowStyle -EnvBlock $this.EnvVars -JobName $this.Name -LogFile $this.LogFile + $this.ProcessJob = Invoke-CreateProcess -InformationVariable $null -WarningVariable $null -BinaryPath "$PWD\$($this.Path)" -ArgumentList $this.GetCommandLineParameters() -WorkingDirectory (Split-Path "$PWD\$($this.Path)") -WindowStyle $this.WindowStyle -EnvBlock $this.EnvVars -JobName $this.Name -LogFile $this.LogFile -Status $this.StatusInfo # Sometimes the process cannot be found instantly $Loops = 100 @@ -483,8 +483,8 @@ Class Miner : IDisposable { hidden [Void]StopMining() { If ([MinerStatus]::Running, [MinerStatus]::Disabled, [MinerStatus]::DryRun -contains $this.Status) { - $this.StatusInfo = "Stopping miner '$($this.Info)'..." - Write-Message -Level Info $this.StatusInfo + Write-Message -Level Info "Stopping miner '$($this.Info)'..." + $this.StatusInfo = "$($this.Info) is stopping..." } Else { $this.SubStatus = [MinerStatus]::Failed @@ -2647,18 +2647,20 @@ Function Invoke-CreateProcess { [Parameter(Mandatory = $false)] [String]$JobName, [Parameter(Mandatory = $false)] - [String]$LogFile + [String]$LogFile, + [Parameter(Mandatory = $false)] + [String]$StatusInfo ) # Cannot use Start-ThreadJob, $ControllerProcess.WaitForExit(500) would not work and miners remain running - Start-Job -InformationVariable $null -WarningVariable $null -Name $JobName -ArgumentList $BinaryPath, $ArgumentList, $WorkingDirectory, $EnvBlock, $CreationFlags, $WindowStyle, $StartF, $PID { - Param ($BinaryPath, $ArgumentList, $WorkingDirectory, $EnvBlock, $CreationFlags, $WindowStyle, $StartF, $ControllerProcessID) + Start-Job -InformationVariable $null -WarningVariable $null -Name $JobName -ArgumentList $BinaryPath, $ArgumentList, $WorkingDirectory, $EnvBlock, $CreationFlags, $WindowStyle, $StartF, $PID, $StatusInfo { + Param ($BinaryPath, $ArgumentList, $WorkingDirectory, $EnvBlock, $CreationFlags, $WindowStyle, $StartF, $ControllerProcessID, $StatusInfo) $ControllerProcess = Get-Process -Id $ControllerProcessID If ($null -eq $ControllerProcess) { Return } # Define all the structures for CreateProcess - Add-Type -TypeDefinition @" + Add-Type -TypeDefinition @" using System; using System.Diagnostics; using System.Runtime.InteropServices; @@ -2672,7 +2674,7 @@ public struct PROCESS_INFORMATION [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] public struct STARTUPINFO { - public uint cb; public string lpReserved; public string lpDesktop; [MarshalAs(UnmanagedType.LPWStr)] public string lpTitle; + public uint cb; public string lpReserved; public string lpDesktop; [MarshalAs(UnmanagedType.LPUTF8Str)] public string lpTitle; public uint dwX; public uint dwY; public uint dwXSize; public uint dwYSize; public uint dwXCountChars; public uint dwYCountChars; public uint dwFillAttribute; public uint dwFlags; public short wShowWindow; public short cbReserved2; public IntPtr lpReserved2; public IntPtr hStdInput; public IntPtr hStdOutput; @@ -2705,11 +2707,12 @@ public static class Kernel32 # Set local environment ($EnvBlock | Select-Object).ForEach({ Set-Item -Path "Env:$(($_ -split "=")[0])" "$(($_ -split "=")[1])" -Force }) - # StartupInfo Struct + # StartupInfo struct $StartupInfo = New-Object STARTUPINFO $StartupInfo.dwFlags = $StartF # StartupInfo.dwFlag $StartupInfo.wShowWindow = $ShowWindow # StartupInfo.ShowWindow - $StartupInfo.cb = [System.Runtime.InteropServices.Marshal]::SizeOf($StartupInfo) # Struct Size + $StartupInfo.lpTitle = $StatusInfo + $StartupInfo.cb = [System.Runtime.InteropServices.Marshal]::SizeOf($StartupInfo) # Struct size # SECURITY_ATTRIBUTES Struct (Process & Thread) $SecAttr = New-Object SECURITY_ATTRIBUTES @@ -2718,7 +2721,7 @@ public static class Kernel32 # CreateProcess --> lpCurrentDirectory If (-not $WorkingDirectory) { $WorkingDirectory = [IntPtr]::Zero } - # ProcessInfo Struct + # ProcessInfo struct $ProcessInfo = New-Object PROCESS_INFORMATION # Call CreateProcess diff --git a/Includes/LegacyGUI.ps1 b/Includes/LegacyGUI.ps1 index 82020d0a..9c4ce0bf 100644 --- a/Includes/LegacyGUI.ps1 +++ b/Includes/LegacyGUI.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\LegacyGUI.psm1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> [Void][System.Reflection.Assembly]::Load("System.Windows.Forms") diff --git a/Includes/MinerAPIs/BzMiner.ps1 b/Includes/MinerAPIs/BzMiner.ps1 index 8d3831e2..a4a6f17e 100644 --- a/Includes/MinerAPIs/BzMiner.ps1 +++ b/Includes/MinerAPIs/BzMiner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\BzMiner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class BzMiner : Miner { diff --git a/Includes/MinerAPIs/Ccminer.ps1 b/Includes/MinerAPIs/Ccminer.ps1 index d823270b..ca8b0f87 100644 --- a/Includes/MinerAPIs/Ccminer.ps1 +++ b/Includes/MinerAPIs/Ccminer.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\CCminer.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class CcMiner : Miner { diff --git a/Includes/MinerAPIs/EthMiner.ps1 b/Includes/MinerAPIs/EthMiner.ps1 index cce40902..818e5373 100644 --- a/Includes/MinerAPIs/EthMiner.ps1 +++ b/Includes/MinerAPIs/EthMiner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\EthMiner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class EthMiner : Miner { diff --git a/Includes/MinerAPIs/FireIce.ps1 b/Includes/MinerAPIs/FireIce.ps1 index b03fe47d..ba426475 100644 --- a/Includes/MinerAPIs/FireIce.ps1 +++ b/Includes/MinerAPIs/FireIce.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\FireIce.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class Fireice : Miner { diff --git a/Includes/MinerAPIs/Gminer.ps1 b/Includes/MinerAPIs/Gminer.ps1 index f131c540..25ea1a22 100644 --- a/Includes/MinerAPIs/Gminer.ps1 +++ b/Includes/MinerAPIs/Gminer.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\GMiner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class GMiner : Miner { diff --git a/Includes/MinerAPIs/HellMiner.ps1 b/Includes/MinerAPIs/HellMiner.ps1 index 46939773..480d9f07 100644 --- a/Includes/MinerAPIs/HellMiner.ps1 +++ b/Includes/MinerAPIs/HellMiner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\lolMiner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class HellMiner : Miner { diff --git a/Includes/MinerAPIs/MiniZ.ps1 b/Includes/MinerAPIs/MiniZ.ps1 index 2bcc4f0e..bbd81b79 100644 --- a/Includes/MinerAPIs/MiniZ.ps1 +++ b/Includes/MinerAPIs/MiniZ.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\MiniZ.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class MiniZ : Miner { diff --git a/Includes/MinerAPIs/NanoMiner.ps1 b/Includes/MinerAPIs/NanoMiner.ps1 index 92f375c1..478ba30c 100644 --- a/Includes/MinerAPIs/NanoMiner.ps1 +++ b/Includes/MinerAPIs/NanoMiner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\NanoMiner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class NanoMiner : Miner { diff --git a/Includes/MinerAPIs/OneZero.ps1 b/Includes/MinerAPIs/OneZero.ps1 index e7dc14ae..d61787ad 100644 --- a/Includes/MinerAPIs/OneZero.ps1 +++ b/Includes/MinerAPIs/OneZero.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\Trex.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class OneZero : Miner { diff --git a/Includes/MinerAPIs/Rigel.ps1 b/Includes/MinerAPIs/Rigel.ps1 index db5cac20..7929b271 100644 --- a/Includes/MinerAPIs/Rigel.ps1 +++ b/Includes/MinerAPIs/Rigel.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\Rigel.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class Rigel : Miner { diff --git a/Includes/MinerAPIs/SRBMiner.ps1 b/Includes/MinerAPIs/SRBMiner.ps1 index f34b72c7..7ec7864a 100644 --- a/Includes/MinerAPIs/SRBMiner.ps1 +++ b/Includes/MinerAPIs/SRBMiner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\SRBminer.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class SRBMiner : Miner { diff --git a/Includes/MinerAPIs/TeamBlackMiner.ps1 b/Includes/MinerAPIs/TeamBlackMiner.ps1 index 32e4ad20..861c3090 100644 --- a/Includes/MinerAPIs/TeamBlackMiner.ps1 +++ b/Includes/MinerAPIs/TeamBlackMiner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\lolMiner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class TeamBlackMiner : Miner { diff --git a/Includes/MinerAPIs/Trex.ps1 b/Includes/MinerAPIs/Trex.ps1 index 4b5b4944..2f5f60ab 100644 --- a/Includes/MinerAPIs/Trex.ps1 +++ b/Includes/MinerAPIs/Trex.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\Trex.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class Trex : Miner { diff --git a/Includes/MinerAPIs/Xgminer.ps1 b/Includes/MinerAPIs/Xgminer.ps1 index 1b3b0e81..708be012 100644 --- a/Includes/MinerAPIs/Xgminer.ps1 +++ b/Includes/MinerAPIs/Xgminer.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\Xgminer.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class XgMiner : Miner { diff --git a/Includes/MinerAPIs/XmRig.ps1 b/Includes/MinerAPIs/XmRig.ps1 index a815e641..863c57d2 100644 --- a/Includes/MinerAPIs/XmRig.ps1 +++ b/Includes/MinerAPIs/XmRig.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\XmRig.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class XmRig : Miner { diff --git a/Includes/MinerAPIs/lolMiner.ps1 b/Includes/MinerAPIs/lolMiner.ps1 index 3670f1b5..b8b4f3d8 100644 --- a/Includes/MinerAPIs/lolMiner.ps1 +++ b/Includes/MinerAPIs/lolMiner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Includes\MinerAPIs\lolMiner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Class lolMiner : Miner { diff --git a/Miners/BzMiner-v21.5.3.ps1 b/Miners/BzMiner-v21.5.3.ps1 index f808d9a9..0a62fe4a 100644 --- a/Miners/BzMiner-v21.5.3.ps1 +++ b/Miners/BzMiner-v21.5.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ "AMD", "INTEL" -contains $_.Type -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.OpenCL.DriverVersion -ge [System.Version]"460.27.03") }))) { Return } @@ -41,7 +41,7 @@ $Algorithms = @( @{ Algorithms = @("HeavyHashKarlsenV2", "JanusHash"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 2; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" -a karlsen", " --a2 warthog") } # @{ Algorithms = @("HeavyHashKaspa"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 2; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" -a kaspa") } # ASIC @{ Algorithms = @("JanusHash"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@(), @()); Arguments = @(" -a warthog") } - @{ Algorithms = @("KawPow"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @("GCN4"); ExcludeGPUmodel = ""; ExcludePools = @(@(), @()); Arguments = @(" -a rvn") } # https://github.com/bzminer/bzminer/issues/264 + @{ Algorithms = @("KawPow"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @("GCN4"); ExcludeGPUmodel = ""; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" -a rvn") } # https://github.com/bzminer/bzminer/issues/264 @{ Algorithms = @("NexaPow"); Type = "AMD"; Fee = @(0.02); MinMemGiB = 3; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@(), @()); Arguments = @(" -a nexa") } @{ Algorithms = @("SHA512256d"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @("GCN1"); ExcludeGPUmodel = ""; ExcludePools = @(@(), @()); Arguments = @(" -a radiant") } @{ Algorithms = @("SHA256dt"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@(), @()); Arguments = @(" -a novo") } @@ -82,7 +82,7 @@ $Algorithms = @( @{ Algorithms = @("HeavyHashKarlsenV2"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 2; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" -a karlsen") } @{ Algorithms = @("HeavyHashKarlsenV2", "JanusHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 2; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" -a karlsen", " --a2 warthog") } # @{ Algorithms = @("HeavyHashKaspa"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 2; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = "^MX[1|2]\d+"; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" -a kaspa") } # ASIC - @{ Algorithms = @("JanusHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@(), @()); Arguments = @(" -a warthog") } + @{ Algorithms = @("JanusHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" -a warthog") } @{ Algorithms = @("KawPow"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = "^MX[1|2]\d+"; ExcludePools = @(@(), @()); Arguments = @(" -a rvn") } @{ Algorithms = @("NexaPow"); Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 3; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = ""; ExcludePools = @(@(), @()); Arguments = @(" -a nexa") } @{ Algorithms = @("SHA512256d"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; Tuning = " --oc_mem_tweak 2"; WarmupTimes = @(45, 5); ExcludeGPUarchitectures = @(); ExcludeGPUmodel = "^MX[1|2]\d+"; ExcludePools = @(@(), @()); Arguments = @(" -a radiant") } @@ -169,7 +169,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/CcminerAlexis78-v1.5.2.ps1 b/Miners/CcminerAlexis78-v1.5.2.ps1 index 9b5eebf5..50db4583 100644 --- a/Miners/CcminerAlexis78-v1.5.2.ps1 +++ b/Miners/CcminerAlexis78-v1.5.2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.1" }))) { Return } @@ -80,7 +80,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerDyn-v1.0.2.ps1 b/Miners/CcminerDyn-v1.0.2.ps1 index f8edd2f7..d945c676 100644 --- a/Miners/CcminerDyn-v1.0.2.ps1 +++ b/Miners/CcminerDyn-v1.0.2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } # Cuda error in func 'argon2d_hash_cuda' at line 89 : an illegal instruction was encountered on GTX 750 @@ -66,7 +66,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerKlausT-v8.25.ps1 b/Miners/CcminerKlausT-v8.25.ps1 index 75dbefe5..7978f6fb 100644 --- a/Miners/CcminerKlausT-v8.25.ps1 +++ b/Miners/CcminerKlausT-v8.25.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -and $_.OpenCL.ComputeCapability -lt "6.0" -and $_.Architecture -ne "Other" }))) { Return } @@ -82,7 +82,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerKlausT-v8.26x2.ps1 b/Miners/CcminerKlausT-v8.26x2.ps1 index 3bef7bf6..e86bc7f8 100644 --- a/Miners/CcminerKlausT-v8.26x2.ps1 +++ b/Miners/CcminerKlausT-v8.26x2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge [System.Version]"6.0" }))) { Return } @@ -86,7 +86,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerLyra2z330-v8.21r9.ps1 b/Miners/CcminerLyra2z330-v8.21r9.ps1 index 9b97a97a..1c4e76f8 100644 --- a/Miners/CcminerLyra2z330-v8.21r9.ps1 +++ b/Miners/CcminerLyra2z330-v8.21r9.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.1" }))) { Return } @@ -74,7 +74,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerLyraYesscrypt-v8.21r18v5.ps1 b/Miners/CcminerLyraYesscrypt-v8.21r18v5.ps1 index 5bf65196..eaf81cfb 100644 --- a/Miners/CcminerLyraYesscrypt-v8.21r18v5.ps1 +++ b/Miners/CcminerLyraYesscrypt-v8.21r18v5.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.1" }))) { Return } @@ -75,7 +75,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerMemeHash-v2.5.5.9.ps1 b/Miners/CcminerMemeHash-v2.5.5.9.ps1 index 5ef2f325..ffa6064c 100644 --- a/Miners/CcminerMemeHash-v2.5.5.9.ps1 +++ b/Miners/CcminerMemeHash-v2.5.5.9.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -70,7 +70,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerNeoscryptXaya-v0.2.ps1 b/Miners/CcminerNeoscryptXaya-v0.2.ps1 index fda6bdff..8c7133f1 100644 --- a/Miners/CcminerNeoscryptXaya-v0.2.ps1 +++ b/Miners/CcminerNeoscryptXaya-v0.2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" -and $_.Architecture -ne "Other" }))) { Return } # Cuda error in func 'neoscrypt_hash_k4' at line 1518 : an illegal instruction was encountered on GTX 750 @@ -69,7 +69,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerVerusCpu-v3.8.3.ps1 b/Miners/CcminerVerusCpu-v3.8.3.ps1 index 6351bfe6..bc093a7d 100644 --- a/Miners/CcminerVerusCpu-v3.8.3.ps1 +++ b/Miners/CcminerVerusCpu-v3.8.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -58,7 +58,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CcminerVerusGpu-v3.8.3.ps1 b/Miners/CcminerVerusGpu-v3.8.3.ps1 index 58c03a47..80c306f6 100644 --- a/Miners/CcminerVerusGpu-v3.8.3.ps1 +++ b/Miners/CcminerVerusGpu-v3.8.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "7.5" }))) { Return } @@ -68,7 +68,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/ClaymoreNeoscrypt-v1.2.ps1 b/Miners/ClaymoreNeoscrypt-v1.2.ps1 index abf57aea..873aa6b0 100644 --- a/Miners/ClaymoreNeoscrypt-v1.2.ps1 +++ b/Miners/ClaymoreNeoscrypt-v1.2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -and $Variables.DriverVersion.CIM.AMD -lt [System.Version]"26.20.15011.10003" }))) { Return } @@ -76,7 +76,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "AMD" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CpuMiner-v1.4.ps1 b/Miners/CpuMiner-v1.4.ps1 index 13e85f0e..62787fd6 100644 --- a/Miners/CpuMiner-v1.4.ps1 +++ b/Miners/CpuMiner-v1.4.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -58,7 +58,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CpuMinerAurum-v3.23.1.ps1 b/Miners/CpuMinerAurum-v3.23.1.ps1 index 7135c266..b157fb7e 100644 --- a/Miners/CpuMinerAurum-v3.23.1.ps1 +++ b/Miners/CpuMinerAurum-v3.23.1.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -67,7 +67,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CryptoDredge-v0.16.0.ps1 b/Miners/CryptoDredge-v0.16.0.ps1 index e744b66c..024ab28f 100644 --- a/Miners/CryptoDredge-v0.16.0.ps1 +++ b/Miners/CryptoDredge-v0.16.0.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -83,7 +83,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/CryptoDredge-v0.27.0.ps1 b/Miners/CryptoDredge-v0.27.0.ps1 index c5246465..549681b4 100644 --- a/Miners/CryptoDredge-v0.27.0.ps1 +++ b/Miners/CryptoDredge-v0.27.0.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" -and $_.Architecture -ne "Other" }))) { Return } @@ -89,7 +89,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/EthMiner-v0.19.0.18.ps1 b/Miners/EthMiner-v0.19.0.18.ps1 index 4e3a6e8c..b626d654 100644 --- a/Miners/EthMiner-v0.19.0.18.ps1 +++ b/Miners/EthMiner-v0.19.0.18.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.CUDAversion -ge [System.Version]"9.1") }))) { Return } @@ -87,7 +87,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/EvrProgPow-v1p3p0.ps1 b/Miners/EvrProgPow-v1p3p0.ps1 index db84ce96..556b6d35 100644 --- a/Miners/EvrProgPow-v1p3p0.ps1 +++ b/Miners/EvrProgPow-v1p3p0.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -78,7 +78,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/FrkHashMiner-v1.3.14.ps1 b/Miners/FrkHashMiner-v1.3.14.ps1 index 193f911f..7d62d4bd 100644 --- a/Miners/FrkHashMiner-v1.3.14.ps1 +++ b/Miners/FrkHashMiner-v1.3.14.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" -and $_.CUDAversion -ge [System.Version]"9.1" }))) { Return } @@ -69,7 +69,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/GMiner-v2.75.ps1 b/Miners/GMiner-v2.75.ps1 index db6571cc..c39a2c0b 100644 --- a/Miners/GMiner-v2.75.ps1 +++ b/Miners/GMiner-v2.75.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ ($_.Type -eq "AMD" -and $_.OpenCL.ClVersion -ge "OpenCL C 1.2") -or $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -84,7 +84,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/GMiner-v3.44.ps1 b/Miners/GMiner-v3.44.ps1 index a1ac34b0..b223fe2e 100644 --- a/Miners/GMiner-v3.44.ps1 +++ b/Miners/GMiner-v3.44.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ ($_.Type -eq "AMD" -and $_.OpenCL.ClVersion -ge "OpenCL C 1.2") -or $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -134,7 +134,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/HellMiner-v0.59.1.ps1 b/Miners/HellMiner-v0.59.1.ps1 index 35f920f0..17b33ace 100644 --- a/Miners/HellMiner-v0.59.1.ps1 +++ b/Miners/HellMiner-v0.59.1.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -61,7 +61,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/JayddeeCpu-v24.6.ps1 b/Miners/JayddeeCpu-v24.7.ps1 similarity index 98% rename from Miners/JayddeeCpu-v24.6.ps1 rename to Miners/JayddeeCpu-v24.7.ps1 index 6e75edb1..097a712c 100644 --- a/Miners/JayddeeCpu-v24.6.ps1 +++ b/Miners/JayddeeCpu-v24.7.ps1 @@ -17,13 +17,13 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } -$URI = "https://github.com/JayDDee/cpuminer-opt/releases/download/v24.6/cpuminer-opt-24.6-windows.zip" +$URI = "https://github.com/JayDDee/cpuminer-opt/releases/download/v27.4/cpuminer-opt-24.7-windows.zip" $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName $Path = "Bin\$Name\cpuminer-aes-sse42.exe" # Intel @@ -112,7 +112,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/KawpowMiner-v1.2.4cl.ps1 b/Miners/KawpowMiner-v1.2.4cl.ps1 index 85d0b886..208f1598 100644 --- a/Miners/KawpowMiner-v1.2.4cl.ps1 +++ b/Miners/KawpowMiner-v1.2.4cl.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" }))) { Return } @@ -78,7 +78,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "AMD" URI = $Uri - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/KawpowMiner-v1.2.4cuda.ps1 b/Miners/KawpowMiner-v1.2.4cuda.ps1 index de63c388..b2f0972b 100644 --- a/Miners/KawpowMiner-v1.2.4cuda.ps1 +++ b/Miners/KawpowMiner-v1.2.4cuda.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -78,7 +78,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $Uri - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/Kudaraidee-v1.2.0a.ps1 b/Miners/Kudaraidee-v1.2.0a.ps1 index 70afad6b..75a40d9d 100644 --- a/Miners/Kudaraidee-v1.2.0a.ps1 +++ b/Miners/Kudaraidee-v1.2.0a.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -or ($_.Type -eq "NVIDIA" -and $_.CUDAversion -ge [System.Version]"10.2") }))) { Return } @@ -87,7 +87,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/MeowPowMiner-v2.0.0cl.ps1 b/Miners/MeowPowMiner-v2.0.0cl.ps1 index b39e32b5..31d58159 100644 --- a/Miners/MeowPowMiner-v2.0.0cl.ps1 +++ b/Miners/MeowPowMiner-v2.0.0cl.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" }))) { Return } @@ -78,7 +78,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "AMD" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/MeowPowMiner-v2.0.0cuda.ps1 b/Miners/MeowPowMiner-v2.0.0cuda.ps1 index 222733d0..82f3538b 100644 --- a/Miners/MeowPowMiner-v2.0.0cuda.ps1 +++ b/Miners/MeowPowMiner-v2.0.0cuda.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -78,7 +78,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/MiniZ-v2.4d.ps1 b/Miners/MiniZ-v2.4d.ps1 index e52dbab3..542c2da6 100644 --- a/Miners/MiniZ-v2.4d.ps1 +++ b/Miners/MiniZ-v2.4d.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -or $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -47,26 +47,26 @@ $Algorithms = @( @{ Algorithm = "ProgPowVeriblock"; Type = "AMD"; Fee = @(0.01); MinMemGiB = 2.0; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = @("GCN1", "GCN2", "GCN3", "RDNA1"); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --amd --par=progpow --pers=VeriBlock" } @{ Algorithm = "ProgPowZ"; Type = "AMD"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @("GCN1", "GCN2", "GCN3"); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --amd --par=progpow --pers=auto" } - @{ Algorithm = "BeamV3"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 4.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); AutoCoinPers = ""; Arguments = " --nvidia --par=beam3" } - @{ Algorithm = "Equihash1254"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 3.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=125,4 --smart-pers" } - @{ Algorithm = "Equihash1445"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = " --par=144,5"; Arguments = " --nvidia" } # FPGA - @{ Algorithm = "Equihash1505"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 4.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=150,5 --smart-pers" } - @{ Algorithm = "Equihash1927"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.3; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = " --par=192,7"; Arguments = " --nvidia" } # FPGA - @{ Algorithm = "Equihash2109"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=210,9 --smart-pers" } - @{ Algorithm = "Equihash965"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=96,5 --smart-pers" } - @{ Algorithm = "EtcHash"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); AutoCoinPers = ""; Arguments = " --nvidia --par=etcHash --dag-fix" } - @{ Algorithm = "Ethash"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); AutoCoinPers = ""; Arguments = " --nvidia --par=ethash --dag-fix" } - @{ Algorithm = "EthashB3"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=ethashb3 --dag-fix" } - @{ Algorithm = "EvrProgPow"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=EVRMORE-PROGPOW --dag-fix" } - @{ Algorithm = "FiroPow"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(55, 45); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --algo=firo" } - @{ Algorithm = "HeavyHashKarlsen"; Type = "NVIDIA"; Fee = @(0.008); MinMemGiB = 2.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 10); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=kls" } - @{ Algorithm = "HeavyHashPyrin"; Type = "NVIDIA"; Fee = @(0.008); MinMemGiB = 2.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 10); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=pyr" } - @{ Algorithm = "KawPow"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 35); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=kawpow --dag-fix --pers=RAVENCOINKAWPOW" } - @{ Algorithm = "Octopus"; Type = "NVIDIA"; Fee = @(0.03); MinMemGiB = 1.24; Minerset = 0; Tuning = " --ocX"; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=octopus" } - @{ Algorithm = "ProgPowSero"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=sero" } - @{ Algorithm = "ProgPowVeil"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 8.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=veil" } - @{ Algorithm = "ProgPowVeriblock"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 2.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=VeriBlock" } - @{ Algorithm = "ProgPowZ"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 0.80; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=auto" } + @{ Algorithm = "BeamV3"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 4.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); AutoCoinPers = ""; Arguments = " --nvidia --par=beam3" } + @{ Algorithm = "Equihash1254"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 3.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=125,4 --smart-pers" } + @{ Algorithm = "Equihash1445"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = " --par=144,5"; Arguments = " --nvidia" } # FPGA + @{ Algorithm = "Equihash1505"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 4.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=150,5 --smart-pers" } + @{ Algorithm = "Equihash1927"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.3; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = " --par=192,7"; Arguments = " --nvidia" } # FPGA + @{ Algorithm = "Equihash2109"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=210,9 --smart-pers" } + @{ Algorithm = "Equihash965"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=96,5 --smart-pers" } + @{ Algorithm = "EtcHash"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); AutoCoinPers = ""; Arguments = " --nvidia --par=etcHash --dag-fix" } + @{ Algorithm = "Ethash"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); AutoCoinPers = ""; Arguments = " --nvidia --par=ethash --dag-fix" } + @{ Algorithm = "EthashB3"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=ethashb3 --dag-fix" } + @{ Algorithm = "EvrProgPow"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=EVRMORE-PROGPOW --dag-fix" } + @{ Algorithm = "FiroPow"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(55, 45); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --algo=firo" } + @{ Algorithm = "HeavyHashKarlsen"; Type = "NVIDIA"; Fee = @(0.008); MinMemGiB = 2.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 10); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=kls" } + @{ Algorithm = "HeavyHashPyrin"; Type = "NVIDIA"; Fee = @(0.008); MinMemGiB = 2.0; MinerSet = 0; Tuning = " --ocX"; WarmupTimes = @(45, 10); ExcludeGPUarchitectures = @("Other"); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=pyr" } + @{ Algorithm = "KawPow"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 35); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=kawpow --dag-fix --pers=RAVENCOINKAWPOW" } + @{ Algorithm = "Octopus"; Type = "NVIDIA"; Fee = @(0.03); MinMemGiB = 1.24; Minerset = 0; Tuning = " --ocX"; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --par=octopus" } + @{ Algorithm = "ProgPowSero"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.08; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=sero" } + @{ Algorithm = "ProgPowVeil"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 8.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=veil" } + @{ Algorithm = "ProgPowVeriblock"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 2.0; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=VeriBlock" } + @{ Algorithm = "ProgPowZ"; Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 0.80; MinerSet = 2; Tuning = " --ocX"; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = @(); ExcludePools = @(); AutoCoinPers = ""; Arguments = " --nvidia --pers=auto" } ) $Algorithms = $Algorithms.Where({ $_.MinerSet -le $Config.MinerSet }) @@ -114,7 +114,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/NBMiner-v42.3.ps1 b/Miners/NBMiner-v42.3.ps1 index 7999c957..d4e5930d 100644 --- a/Miners/NBMiner-v42.3.ps1 +++ b/Miners/NBMiner-v42.3.ps1 @@ -106,7 +106,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/NSFMiner-v1.3.14.ps1 b/Miners/NSFMiner-v1.3.14.ps1 index 89cfc3aa..66c5dc66 100644 --- a/Miners/NSFMiner-v1.3.14.ps1 +++ b/Miners/NSFMiner-v1.3.14.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.CUDAversion -ge [System.Version]"9.1") }))) { Return } @@ -87,7 +87,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/NanoMiner-v3.9.3.ps1 b/Miners/NanoMiner-v3.9.3.ps1 index 7b9ad5fa..3851457d 100644 --- a/Miners/NanoMiner-v3.9.3.ps1 +++ b/Miners/NanoMiner-v3.9.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" -or @("AMD", "INTEL") -contains $_.Type -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.OpenCL.DriverVersion -ge [System.Version]"455.23") }))) { Return } @@ -104,7 +104,7 @@ If ($Algorithms) { $Pools = @(($Pool0, $Pool1).Where({ $_ })) $MinMemGiB = $_.MinMemGiB + $Pool0.DAGSizeGiB + $Pool1.DAGSizeGiB - If ($AvailableMinerDevices = $SupportedMinerDevices.Where({ $_.Type -eq "CPU" -or $_.MemoryGiB -ge $MinMemGiB })) { + If ($AvailableMinerDevices = $SupportedMinerDevices.Where({ $_.MemoryGiB -ge $MinMemGiB })) { $MinerName = "$Name-$($AvailableMinerDevices.Count)x$Model-$($Pool0.AlgorithmVariant)$(If ($Pool1) { "&$($Pool1.AlgorithmVariant)" })" @@ -139,7 +139,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @($Pools.ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/Ninjarig-1.0.3.ps1 b/Miners/Ninjarig-1.0.3.ps1 index 92828316..9bc7b777 100644 --- a/Miners/Ninjarig-1.0.3.ps1 +++ b/Miners/Ninjarig-1.0.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -66,7 +66,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/NosuchCpu-v3.8.8.1.ps1 b/Miners/NosuchCpu-v3.8.8.1.ps1 index 4b1d4418..c71e41e6 100644 --- a/Miners/NosuchCpu-v3.8.8.1.ps1 +++ b/Miners/NosuchCpu-v3.8.8.1.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -62,7 +62,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/OneZeroMiner-v1.4.2.ps1 b/Miners/OneZeroMiner-v1.4.3.ps1 similarity index 70% rename from Miners/OneZeroMiner-v1.4.2.ps1 rename to Miners/OneZeroMiner-v1.4.3.ps1 index a6173c07..25ce5271 100644 --- a/Miners/OneZeroMiner-v1.4.2.ps1 +++ b/Miners/OneZeroMiner-v1.4.3.ps1 @@ -17,20 +17,22 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> -If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "NVIDIA" -and $_.OpenCL.DriverVersion -ge [System.Version]"450.80.02" }))) { Return } +If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -or ($_.Type -eq "NVIDIA" -and $_.OpenCL.ComputeCapability -ge "6.0" -and $_.OpenCL.DriverVersion -ge [System.Version]"450.80.02") }))) { Return } -$URI = "https://github.com/OneZeroMiner/onezerominer/releases/download/v1.4.2/onezerominer-win64-1.4.2.zip" +$URI = "https://github.com/OneZeroMiner/onezerominer/releases/download/v1.4.3/onezerominer-win64-1.4.3.zip" $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName $Path = "Bin\$Name\onezerominer.exe" -$DeviceEnumerator = "Type_Vendor_Slot" +$DeviceEnumerator = "Type_Slot" $Algorithms = @( - @{ Algorithm = "DynexSolve"; Fee = @(0.03); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(180, 120); ExcludeGPUarchitectures = @(); ExcludePools = @(); Arguments = @(" --algo dynex") } - @{ Algorithm = "XelisHash"; Fee = @(0.03); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(180, 120); ExcludeGPUarchitectures = @(); ExcludePools = @(); Arguments = @(" --algo xelis") } + @{ Algorithm = "XelisHashV2"; Type = "AMD"; Fee = @(0.03); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(180, 120); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); Arguments = @(" --algo xelis") } + + @{ Algorithm = "DynexSolve"; Type = "NVIDIA"; Fee = @(0.03); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(180, 120); ExcludeGPUarchitectures = @(); ExcludePools = @(); Arguments = @(" --algo dynex") } + @{ Algorithm = "XelisHashV2"; Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(180, 120); ExcludeGPUarchitectures = @(); ExcludePools = @("NiceHash"); Arguments = @(" --algo xelis") } ) # $Algorithms = $Algorithms.Where({ $_.MinerSet -le $Config.MinerSet }) @@ -38,13 +40,14 @@ $Algorithms = $Algorithms.Where({ $MinerPools[0][$_.Algorithm] }) If ($Algorithms) { - ($Devices | Sort-Object -Property Model -Unique).ForEach( + ($Devices | Sort-Object -Property Type, Model -Unique).ForEach( { $Model = $_.Model - $MinerDevices = $Devices.Where({ $_.Model -eq $Model }) + $Type = $_.Type + $MinerDevices = $Devices.Where({ $_.Type -eq $Type -and $_.Model -eq $Model }) $MinerAPIPort = $Config.APIPort + ($MinerDevices.Id | Sort-Object -Top 1) + 1 - $Algorithms.ForEach( + $Algorithms.Where({ $_.Type -eq $Type }).ForEach( { # $ExcludeGPUarchitectures = $_.ExcludeGPUarchitectures $MinMemGiB = $_.MinMemGiB @@ -53,9 +56,8 @@ If ($Algorithms) { $MinerName = "$Name-$($AvailableMinerDevices.Count)x$Model-$($_.Algorithm)" - # $ExcludePools = $_.ExcludePools - # ForEach ($Pool in $MinerPools[0][$_.Algorithm].Where({ $ExcludePools -notcontains $_.Name })) { - ForEach ($Pool in $MinerPools[0][$_.Algorithm]) { + $ExcludePools = $_.ExcludePools + ForEach ($Pool in $MinerPools[0][$_.Algorithm].Where({ $ExcludePools -notcontains $_.Name })) { [PSCustomObject]@{ API = "OneZero" @@ -68,7 +70,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/PhoenixMiner-v6.2c.ps1 b/Miners/PhoenixMiner-v6.2c.ps1 index 7e174889..819edaef 100644 --- a/Miners/PhoenixMiner-v6.2c.ps1 +++ b/Miners/PhoenixMiner-v6.2c.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -or $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -155,7 +155,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/Radiator-v1.0.0.ps1 b/Miners/Radiator-v1.0.0.ps1 index e7abfd8d..f64c313d 100644 --- a/Miners/Radiator-v1.0.0.ps1 +++ b/Miners/Radiator-v1.0.0.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -76,7 +76,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/Raptor3umCpu-v2.0.ps1 b/Miners/Raptor3umCpu-v2.0.ps1 index 317b7f6b..72cab7cf 100644 --- a/Miners/Raptor3umCpu-v2.0.ps1 +++ b/Miners/Raptor3umCpu-v2.0.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -64,7 +64,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/Rigel-v1.19.1.ps1 b/Miners/Rigel-v1.19.1.ps1 index d21e86d2..8ebdb145 100644 --- a/Miners/Rigel-v1.19.1.ps1 +++ b/Miners/Rigel-v1.19.1.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> # Return @@ -169,7 +169,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @($Pools.ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/RplantCpu-v5.0.41.ps1 b/Miners/RplantCpu-v5.0.41.ps1 index c3d2155d..b1f8968b 100644 --- a/Miners/RplantCpu-v5.0.41.ps1 +++ b/Miners/RplantCpu-v5.0.41.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -108,7 +108,7 @@ $Algorithms = @( @{ Algorithm = "YespowerRes"; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo yespowerRes" } @{ Algorithm = "YespowerSugar"; MinerSet = 1; WarmupTimes = @(45, 15); ExcludePools = @(); Arguments = " --algo yespowerSugar" } # SRBMminerMulti is fastest, but has 0.85% miner fee @{ Algorithm = "YespowerTIDE"; MinerSet = 0; WarmupTimes = @(45, 5); ExcludePools = @(); Arguments = " --algo yespowerTIDE" } - @{ Algorithm = "YespowerUrx"; MinerSet = 2; WarmupTimes = @(45, 5); ExcludePools = @(); Arguments = " --algo yespowerURX" } # JayddeeCpu-v24.4 is faster, SRBMminerMulti is fastest, but has 0.85% miner fee + @{ Algorithm = "YespowerUrx"; MinerSet = 2; WarmupTimes = @(45, 5); ExcludePools = @(); Arguments = " --algo yespowerURX" } # JayddeeCpu-v24.7 is faster, SRBMminerMulti is fastest, but has 0.85% miner fee ) $Algorithms = $Algorithms.Where({ $_.MinerSet -le $Config.MinerSet }) @@ -136,7 +136,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/RrkzCpu-v4.2.ps1 b/Miners/RrkzCpu-v4.2.ps1 index 808e9f14..212cf192 100644 --- a/Miners/RrkzCpu-v4.2.ps1 +++ b/Miners/RrkzCpu-v4.2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($AvailableMinerDevices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" }))) { Return } @@ -60,7 +60,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/SCCminer-v1.1.0.ps1 b/Miners/SCCminer-v1.1.0.ps1 index d8139fbd..44e57eaa 100644 --- a/Miners/SCCminer-v1.1.0.ps1 +++ b/Miners/SCCminer-v1.1.0.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Return # Bad shares @@ -85,7 +85,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/SRBMinerMulti-v0.9.4.ps1 b/Miners/SRBMinerMulti-v0.9.4.ps1 index 86853d5c..a85d59f6 100644 --- a/Miners/SRBMinerMulti-v0.9.4.ps1 +++ b/Miners/SRBMinerMulti-v0.9.4.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> # Support for Pitcairn, Tahiti, Hawaii, Fiji and Tonga was removed in later versions @@ -125,7 +125,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = "AMD" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/SRBMinerMulti-v2.6.8.ps1 b/Miners/SRBMinerMulti-v2.6.8.ps1 index 6e7ad143..053c4e57 100644 --- a/Miners/SRBMinerMulti-v2.6.8.ps1 +++ b/Miners/SRBMinerMulti-v2.6.8.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" -or $_.Type -eq "INTEL" -or ($_.Type -eq "AMD" -and $_.Model -notmatch "^GCN[1-3]" -and $_.OpenCL.ClVersion -ge "OpenCL C 2.0") -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.OpenCL.DriverVersion -ge "510.00") }))) { Return } @@ -155,7 +155,7 @@ If ($Algorithms) { ForEach ($Pool1 in $MinerPools[1][$_.Algorithms[1]].Where({ $ExcludePools[1] -notcontains $_.Name }) | Select-Object -Last $(If ($Config.BenchmarkAllPoolAlgorithmCombinations) { $MinerPools[1][$_.Algorithms[1]].Count } Else { 1 })) { $Pools = @(($Pool0, $Pool1).Where({ $_ })) $MinMemGiB = $_.MinMemGiB + $Pool0.DAGSizeGiB + $Pool1.DAGSizeGiB - If ($AvailableMinerDevices = $SupportedMinerDevices.Where({ $_.Type -eq "CPU" -or $_.MemoryGiB -gt $MinMemGiB })) { + If ($AvailableMinerDevices = $SupportedMinerDevices.Where({ $_.MemoryGiB -gt $MinMemGiB })) { $MinerName = "$Name-$($AvailableMinerDevices.Count)x$Model-$($Pool0.AlgorithmVariant)$(If ($Pool1) { "&$($Pool1.AlgorithmVariant)" })$(If ($_.GpuDualMaxLoss) { "-$($_.GpuDualMaxLoss)" })" @@ -201,7 +201,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @($Pools.ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/SRBMinerMulti-v2.7.2.ps1 b/Miners/SRBMinerMulti-v2.7.2.ps1 index d08478ff..6b27312b 100644 --- a/Miners/SRBMinerMulti-v2.7.2.ps1 +++ b/Miners/SRBMinerMulti-v2.7.2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "CPU" -or $_.Type -eq "INTEL" -or ($_.Type -eq "AMD" -and $_.Model -notmatch "^GCN[1-3]" -and $_.OpenCL.ClVersion -ge "OpenCL C 2.0") -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.OpenCL.DriverVersion -ge "510.00") }))) { Return } @@ -30,63 +30,63 @@ $DeviceEnumerator = "Type_Vendor_Slot" # Algorithm parameter values are case sensitive! $Algorithms = @( - @{ Algorithms = @("0x10"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm 0x10") } - @{ Algorithms = @("Argon2d16000"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2d_16000") } - @{ Algorithms = @("Argon2d500"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2d_dynamic") } - @{ Algorithms = @("Argon2Chukwa"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2id_chukwa") } - @{ Algorithms = @("Argon2Chukwa2"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2id_chukwa2") } - @{ Algorithms = @("AstrixHash"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm astrixhash") } - @{ Algorithms = @("Aurum"); Type = "AMD"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm aurum") } - @{ Algorithms = @("Autolykos2"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload") } - @{ Algorithms = @("Autolykos2", "Decred"); Type = "AMD"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm blake3_decred") } - @{ Algorithms = @("Autolykos2", "HeavyHash"); Type = "AMD"; Fee = @(0.01, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm heavyhash") } - @{ Algorithms = @("Autolykos2", "HooHash"); Type = "AMD"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm hoohash") } - @{ Algorithms = @("CryptonightGpu"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_gpu") } - @{ Algorithms = @("CryptonightHeavyXhv"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_xhv") } - @{ Algorithms = @("CryptonightTurtle"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_turtle") } # TeamRedMiner-v0.10.21 is fastest - @{ Algorithms = @("CryptonightUpx"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_upx") } - @{ Algorithms = @("CurveHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 2; MinerSet = 1; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm curvehash") } - @{ Algorithms = @("Decred"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm blake3d_decred") } - @{ Algorithms = @("EtcHash"); Type = "AMD"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool - @{ Algorithms = @("EtcHash", "Decred"); Type = "AMD"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash", " --algorithm blake3_decred") } - @{ Algorithms = @("EtcHash", "HeavyHash"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash", " --algorithm heavyhash") } - @{ Algorithms = @("EtcHash", "SHA256dt"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash", " --algorithm sha256dt") } - @{ Algorithms = @("Ethash"); Type = "AMD"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool - @{ Algorithms = @("Ethash", "Decred"); Type = "AMD"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash", " --algorithm blake3_decred") } - @{ Algorithms = @("Ethash", "Heavyhash"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash", " --algorithm heavyhash") } - @{ Algorithms = @("Ethash", "SHA256dt"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash", " --algorithm sha256dt") } - @{ Algorithms = @("EthashB3"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethashb3") } - @{ Algorithms = @("EthashB3", "Decred"); Type = "AMD"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethashb3", " --algorithm blake3_decred") } - @{ Algorithms = @("EthashB3", "SHA256dt"); Type = "AMD"; Fee = @(0.01, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 40); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethashb3", " --algorithm sha256dt") } - @{ Algorithms = @("EvrProgPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm evrprogpow") } - @{ Algorithms = @("FiroPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm firopow") } - @{ Algorithms = @("FishHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm fishhash") } - @{ Algorithms = @("FishHash", "Decred"); Type = "AMD"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm fishhash", " --algorithm blake3_decred") } - @{ Algorithms = @("FishHash", "HooHash"); Type = "AMD"; Fee = @(0.0085, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm fishhash", " --algorithm hoohash") } - @{ Algorithms = @("HeavyHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm heavyhash") } # FPGA - @{ Algorithms = @("HeavyHashKarlsenV2"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm karlsenhashv2") } - @{ Algorithms = @("HeavyHashKarlsenV2", "Decred"); Type = "AMD"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm blake3_decred") } - @{ Algorithms = @("HeavyHashKarlsenV2", "HooHash"); Type = "AMD"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm hoohash") } - @{ Algorithms = @("HeavyHashKaspa"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm nxlhash") } - @{ Algorithms = @("HooHash"); Type = "AMD"; Fee = @(0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm hoohash") } - @{ Algorithms = @("KawPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@("ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm kawpow") } - @{ Algorithms = @("Lyra2v2Webchain"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm lyra2v2_webchain") } - @{ Algorithms = @("MeowPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm meowpow") } - @{ Algorithms = @("ProgPowEpic"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_epic") } - @{ Algorithms = @("ProgPowQuai"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_quai") } - @{ Algorithms = @("ProgPowSero"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_sero") } - @{ Algorithms = @("ProgPowTelestai"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_telestai") } - @{ Algorithms = @("ProgPowVeil"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_veil") } - @{ Algorithms = @("ProgPowZ"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_zano") } - @{ Algorithms = @("SCCpow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm firopow") } - @{ Algorithms = @("SHA256dt"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm sha256dt") } - @{ Algorithms = @("VerusHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm verushash") } - @{ Algorithms = @("VertHash"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = "^Other$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm verthash --verthash-dat-path ..\.$($Variables.VerthashDatPath)") } - @{ Algorithms = @("WalahAsh"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm walahash") } - @{ Algorithms = @("Yescrypt"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(90, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("MiningDutch"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescrypt") } - @{ Algorithms = @("YescryptR8"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(90, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescryptr8") } - @{ Algorithms = @("YescryptR16"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescryptr16") } - @{ Algorithms = @("YescryptR32"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(90, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescryptr32") } + @{ Algorithms = @("0x10"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm 0x10") } + @{ Algorithms = @("Argon2d16000"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2d_16000") } + @{ Algorithms = @("Argon2d500"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2d_dynamic") } + @{ Algorithms = @("Argon2Chukwa"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2id_chukwa") } + @{ Algorithms = @("Argon2Chukwa2"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 45); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm argon2id_chukwa2") } + @{ Algorithms = @("AstrixHash"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm astrixhash") } + @{ Algorithms = @("Aurum"); Type = "AMD"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm aurum") } + @{ Algorithms = @("Autolykos2"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload") } + @{ Algorithms = @("Autolykos2", "Decred"); Type = "AMD"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm blake3_decred") } + @{ Algorithms = @("Autolykos2", "HeavyHash"); Type = "AMD"; Fee = @(0.01, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm heavyhash") } + @{ Algorithms = @("Autolykos2", "HooHash"); Type = "AMD"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm hoohash") } + @{ Algorithms = @("CryptonightGpu"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_gpu") } + @{ Algorithms = @("CryptonightHeavyXhv"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_xhv") } + @{ Algorithms = @("CryptonightTurtle"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_turtle") } # TeamRedMiner-v0.10.21 is fastest + @{ Algorithms = @("CryptonightUpx"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm cryptonight_upx") } + @{ Algorithms = @("CurveHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 2; MinerSet = 1; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm curvehash") } + @{ Algorithms = @("Decred"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm blake3d_decred") } + @{ Algorithms = @("EtcHash"); Type = "AMD"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool + @{ Algorithms = @("EtcHash", "Decred"); Type = "AMD"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash", " --algorithm blake3_decred") } + @{ Algorithms = @("EtcHash", "HeavyHash"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash", " --algorithm heavyhash") } + @{ Algorithms = @("EtcHash", "SHA256dt"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm etchash", " --algorithm sha256dt") } + @{ Algorithms = @("Ethash"); Type = "AMD"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool + @{ Algorithms = @("Ethash", "Decred"); Type = "AMD"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash", " --algorithm blake3_decred") } + @{ Algorithms = @("Ethash", "Heavyhash"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash", " --algorithm heavyhash") } + @{ Algorithms = @("Ethash", "SHA256dt"); Type = "AMD"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethash", " --algorithm sha256dt") } + @{ Algorithms = @("EthashB3"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethashb3") } + @{ Algorithms = @("EthashB3", "Decred"); Type = "AMD"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethashb3", " --algorithm blake3_decred") } + @{ Algorithms = @("EthashB3", "SHA256dt"); Type = "AMD"; Fee = @(0.01, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 40); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm ethashb3", " --algorithm sha256dt") } + @{ Algorithms = @("EvrProgPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm evrprogpow") } + @{ Algorithms = @("FiroPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm firopow") } + @{ Algorithms = @("FishHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm fishhash") } + @{ Algorithms = @("FishHash", "Decred"); Type = "AMD"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm fishhash", " --algorithm blake3_decred") } + @{ Algorithms = @("FishHash", "HooHash"); Type = "AMD"; Fee = @(0.0085, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm fishhash", " --algorithm hoohash") } + @{ Algorithms = @("HeavyHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm heavyhash") } # FPGA + @{ Algorithms = @("HeavyHashKarlsenV2"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm karlsenhashv2") } + @{ Algorithms = @("HeavyHashKarlsenV2", "Decred"); Type = "AMD"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm blake3_decred") } + @{ Algorithms = @("HeavyHashKarlsenV2", "HooHash"); Type = "AMD"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm hoohash") } + @{ Algorithms = @("HeavyHashKaspa"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^GCN\d$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm nxlhash") } + @{ Algorithms = @("HooHash"); Type = "AMD"; Fee = @(0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm hoohash") } + @{ Algorithms = @("KawPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash", "ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm kawpow") } + @{ Algorithms = @("Lyra2v2Webchain"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm lyra2v2_webchain") } + @{ Algorithms = @("MeowPow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm meowpow") } + @{ Algorithms = @("ProgPowEpic"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_epic") } + @{ Algorithms = @("ProgPowQuai"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_quai") } + @{ Algorithms = @("ProgPowSero"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_sero") } + @{ Algorithms = @("ProgPowTelestai"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_telestai") } + @{ Algorithms = @("ProgPowVeil"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_veil") } + @{ Algorithms = @("ProgPowZ"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm progpow_zano") } + @{ Algorithms = @("SCCpow"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm firopow") } + @{ Algorithms = @("SHA256dt"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm sha256dt") } + @{ Algorithms = @("VerusHash"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm verushash") } + @{ Algorithms = @("VertHash"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = "^Other$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm verthash --verthash-dat-path ..\.$($Variables.VerthashDatPath)") } + @{ Algorithms = @("WalahAsh"); Type = "AMD"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm walahash") } + @{ Algorithms = @("Yescrypt"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(90, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("MiningDutch"), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescrypt") } + @{ Algorithms = @("YescryptR8"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(90, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescryptr8") } + @{ Algorithms = @("YescryptR16"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescryptr16") } + @{ Algorithms = @("YescryptR32"); Type = "AMD"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(90, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-intel --disable-gpu-nvidia --algorithm yescryptr32") } @{ Algorithms = @("Argon2d16000"); Type = "CPU"; Fee = @(0.0085); MinerSet = 2; WarmupTimes = @(60, 15); ExcludePools = @(@(), @()); Arguments = @(" --disable-gpu --algorithm argon2d_16000") } @{ Algorithms = @("Argon2d500"); Type = "CPU"; Fee = @(0.0085); MinerSet = 2; WarmupTimes = @(60, 15); ExcludePools = @(@(), @()); Arguments = @(" --disable-gpu --algorithm argon2d_dynamic") } @@ -130,90 +130,90 @@ $Algorithms = @( @{ Algorithms = @("XelisHashV2"); Type = "CPU"; Fee = @(0.015); MinerSet = 2; WarmupTimes = @(90, 20); ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-gpu --algorithm xelishashv2") } @{ Algorithms = @("XelisV2PepePow"); Type = "CPU"; Fee = @(0.015); MinerSet = 2; WarmupTimes = @(90, 20); ExcludePools = @(@(), @()); Arguments = @(" --disable-gpu --algorithm xelishashv2_pepew") } - @{ Algorithms = @("AstrixHash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm astrixhash") } - @{ Algorithms = @("Autolykos2"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload") } - @{ Algorithms = @("Autolykos2", "Decred"); Type = "INTEL"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm blake3_decred") } - @{ Algorithms = @("Autolykos2", "HooHash"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm hoohash") } - @{ Algorithms = @("Aurum"); Type = "INTEL"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm aurum") } - @{ Algorithms = @("Decred"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm blake3_decred") } - @{ Algorithms = @("EtcHash"); Type = "INTEL"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash") } - @{ Algorithms = @("EtcHash", "Decred"); Type = "INTEL"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash", " --algorithm blake3_decred") } - @{ Algorithms = @("EtcHash", "HeavyHash"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash", " --algorithm heavyhash") } - @{ Algorithms = @("EtcHash", "SHA256dt"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash", " --algorithm sha256dt") } - @{ Algorithms = @("Ethash"); Type = "INTEL"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash") } - @{ Algorithms = @("Ethash", "Decred"); Type = "INTEL"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash", " --algorithm blake3_decred") } - @{ Algorithms = @("Ethash", "Heavyhash"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash", " --algorithm heavyhash") } - @{ Algorithms = @("Ethash", "SHA256dt"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash", " --algorithm sha256dt") } - @{ Algorithms = @("EthashB3"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethashb3") } - @{ Algorithms = @("EthashB3", "Decred"); Type = "INTEL"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethashb3", " --algorithm blake3_decred") } - @{ Algorithms = @("EthashB3", "SHA256dt"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethashb3", " --algorithm sha256dt") } - @{ Algorithms = @("FiroPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm firopow") } - @{ Algorithms = @("FishHash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm fishhash") } - @{ Algorithms = @("FishHash", "Decred"); Type = "INTEL"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm fishhash", " --algorithm blake3_decred") } - @{ Algorithms = @("FishHash", "HooHash"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm fishhash", " --algorithm hoohash") } - @{ Algorithms = @("HeavyHash"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm heavyhash") } # FPGA - @{ Algorithms = @("HeavyHashKarlsenV2"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm karlsenhashv2") } - @{ Algorithms = @("HeavyHashKaspa"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm nxlhash") } - @{ Algorithms = @("HooHash"); Type = "INTEL"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm hoohash") } - @{ Algorithms = @("HeavyHashKarlsenV2", "Decred"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm blake3_decred") } - @{ Algorithms = @("HeavyHashKarlsenV2", "HooHash"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm hoohash") } - @{ Algorithms = @("KawPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm kawpow") } - @{ Algorithms = @("MeowPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@("ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm meowpow") } - @{ Algorithms = @("ProgPowEpic"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_epic") } - @{ Algorithms = @("ProgPowQuai"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_quai") } - @{ Algorithms = @("ProgPowSero"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_sero") } - @{ Algorithms = @("ProgPowTelestai"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_telestai") } - @{ Algorithms = @("ProgPowVeil"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_veil") } - @{ Algorithms = @("ProgPowZ"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_zano") } - @{ Algorithms = @("FiroPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm firopow") } - @{ Algorithms = @("SHA256dt"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm sha256dt") } - @{ Algorithms = @("VertHash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm verthash --verthash-dat-path ..\.$($Variables.VerthashDatPath)") } - @{ Algorithms = @("Walahash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm walahash") } + @{ Algorithms = @("AstrixHash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm astrixhash") } + @{ Algorithms = @("Autolykos2"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload") } + @{ Algorithms = @("Autolykos2", "Decred"); Type = "INTEL"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm blake3_decred") } + @{ Algorithms = @("Autolykos2", "HooHash"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm autolykos2 --autolykos2-preload", " --algorithm hoohash") } + @{ Algorithms = @("Aurum"); Type = "INTEL"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm aurum") } + @{ Algorithms = @("Decred"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm blake3_decred") } + @{ Algorithms = @("EtcHash"); Type = "INTEL"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash") } + @{ Algorithms = @("EtcHash", "Decred"); Type = "INTEL"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash", " --algorithm blake3_decred") } + @{ Algorithms = @("EtcHash", "HeavyHash"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash", " --algorithm heavyhash") } + @{ Algorithms = @("EtcHash", "SHA256dt"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm etchash", " --algorithm sha256dt") } + @{ Algorithms = @("Ethash"); Type = "INTEL"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash") } + @{ Algorithms = @("Ethash", "Decred"); Type = "INTEL"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash", " --algorithm blake3_decred") } + @{ Algorithms = @("Ethash", "Heavyhash"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash", " --algorithm heavyhash") } + @{ Algorithms = @("Ethash", "SHA256dt"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethash", " --algorithm sha256dt") } + @{ Algorithms = @("EthashB3"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethashb3") } + @{ Algorithms = @("EthashB3", "Decred"); Type = "INTEL"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethashb3", " --algorithm blake3_decred") } + @{ Algorithms = @("EthashB3", "SHA256dt"); Type = "INTEL"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm ethashb3", " --algorithm sha256dt") } + @{ Algorithms = @("FiroPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm firopow") } + @{ Algorithms = @("FishHash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm fishhash") } + @{ Algorithms = @("FishHash", "Decred"); Type = "INTEL"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm fishhash", " --algorithm blake3_decred") } + @{ Algorithms = @("FishHash", "HooHash"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm fishhash", " --algorithm hoohash") } + @{ Algorithms = @("HeavyHash"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm heavyhash") } # FPGA + @{ Algorithms = @("HeavyHashKarlsenV2"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm karlsenhashv2") } + @{ Algorithms = @("HeavyHashKaspa"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm nxlhash") } + @{ Algorithms = @("HooHash"); Type = "INTEL"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm hoohash") } + @{ Algorithms = @("HeavyHashKarlsenV2", "Decred"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm blake3_decred") } + @{ Algorithms = @("HeavyHashKarlsenV2", "HooHash"); Type = "INTEL"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm karlsenhashv2", " --algorithm hoohash") } + @{ Algorithms = @("KawPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash", "ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm kawpow") } + @{ Algorithms = @("MeowPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@("ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm meowpow") } + @{ Algorithms = @("ProgPowEpic"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_epic") } + @{ Algorithms = @("ProgPowQuai"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_quai") } + @{ Algorithms = @("ProgPowSero"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_sero") } + @{ Algorithms = @("ProgPowTelestai"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_telestai") } + @{ Algorithms = @("ProgPowVeil"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_veil") } + @{ Algorithms = @("ProgPowZ"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm progpow_zano") } + @{ Algorithms = @("FiroPow"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm firopow") } + @{ Algorithms = @("SHA256dt"); Type = "INTEL"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm sha256dt") } + @{ Algorithms = @("VertHash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm verthash --verthash-dat-path ..\.$($Variables.VerthashDatPath)") } + @{ Algorithms = @("Walahash"); Type = "INTEL"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-nvidia --algorithm walahash") } - @{ Algorithms = @("AstrixHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(30, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm astrixhash") } - @{ Algorithms = @("Autolykos2"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(30, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload") } - @{ Algorithms = @("Autolykos2", "Decred"); Type = "NVIDIA"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload", " --algorithm blake3_decred") } - @{ Algorithms = @("Autolykos2", "HeavyHash"); Type = "NVIDIA"; Fee = @(0.01, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload", " --algorithm heavyhash") } - @{ Algorithms = @("Autolykos2", "HooHash"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 10); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload", " --algorithm hoohash") } - @{ Algorithms = @("Aurum"); Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm aurum") } - @{ Algorithms = @("CryptonightGpu"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm cryptonight_gpu") } - @{ Algorithms = @("CryptonightHeavyXhv"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm cryptonight_xhv") } - @{ Algorithms = @("Decred"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm blake3_decred") } - @{ Algorithms = @("EtcHash"); Type = "NVIDIA"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 10); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool - @{ Algorithms = @("EtcHash", "Decred"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash", " --algorithm blake3_decred") } - @{ Algorithms = @("EtcHash", "HeavyHash"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash", " --algorithm heavyhash") } - @{ Algorithms = @("EtcHash", "SHA256dt"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash", " --algorithm sha256dt") } - @{ Algorithms = @("Ethash"); Type = "NVIDIA"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool - @{ Algorithms = @("Ethash", "Decred"); Type = "NVIDIA"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash", " --algorithm blake3_decred") } - @{ Algorithms = @("Ethash", "Heavyhash"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash", " --algorithm heavyhash") } - @{ Algorithms = @("Ethash", "SHA256dt"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash", " --algorithm sha256dt") } - @{ Algorithms = @("EthashB3"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethashb3") } - @{ Algorithms = @("EthashB3", "Decred"); Type = "NVIDIA"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethashb3", " --algorithm blake3_decred") } - @{ Algorithms = @("EthashB3", "SHA256dt"); Type = "NVIDIA"; Fee = @(0.0085, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethashb3", " --algorithm sha256dt") } - @{ Algorithms = @("EvrProgPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 0); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm evrprogpow") } - @{ Algorithms = @("FiroPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm firopow") } - @{ Algorithms = @("FishHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm fishhash") } - @{ Algorithms = @("FishHash", "Decred"); Type = "NVIDIA"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm fishhash", " --algorithm blake3_decred") } - @{ Algorithms = @("FishHash", "HooHash"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm fishhash", " --algorithm hoohash") } - @{ Algorithms = @("HeavyHash"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm heavyhash") } # FPGA - @{ Algorithms = @("HeavyHashKarlsenV2"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm karlsenhashv2") } - @{ Algorithms = @("HeavyHashKarlsenV2", "Decred"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm karlsenhashv2", " --algorithm blake3_decred") } - @{ Algorithms = @("HeavyHashKarlsenV2", "HooHash"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm karlsenhashv2", " --algorithm hoohash") } - @{ Algorithms = @("HeavyHashKaspa"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm nxlhash") } - @{ Algorithms = @("HooHash"); Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm hoohash") } - @{ Algorithms = @("KawPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@("ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm kawpow") } - @{ Algorithms = @("Lyra2v2Webchain"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm lyra2v2_webchain") } - @{ Algorithms = @("MeowPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@("ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm meowpow") } - @{ Algorithms = @("ProgPowEpic"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_epic") } - @{ Algorithms = @("ProgPowQuai"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_quai") } - @{ Algorithms = @("ProgPowSero"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_sero") } - @{ Algorithms = @("ProgPowTelestai"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_telestai") } - @{ Algorithms = @("ProgPowVeil"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_veil") } - @{ Algorithms = @("ProgPowZ"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_zano") } - @{ Algorithms = @("SCCpow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm firopow") } - @{ Algorithms = @("SHA256dt"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm sha256dt") } - @{ Algorithms = @("VertHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm verthash --verthash-dat-path ..\.$($Variables.VerthashDatPath)") } - @{ Algorithms = @("Walahash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = ""; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm walahash") } + @{ Algorithms = @("AstrixHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(30, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm astrixhash") } + @{ Algorithms = @("Autolykos2"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(30, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload") } + @{ Algorithms = @("Autolykos2", "Decred"); Type = "NVIDIA"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload", " --algorithm blake3_decred") } + @{ Algorithms = @("Autolykos2", "HeavyHash"); Type = "NVIDIA"; Fee = @(0.01, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload", " --algorithm heavyhash") } + @{ Algorithms = @("Autolykos2", "HooHash"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 10); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm autolykos2 --autolykos2-preload", " --algorithm hoohash") } + @{ Algorithms = @("Aurum"); Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm aurum") } + @{ Algorithms = @("CryptonightGpu"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm cryptonight_gpu") } + @{ Algorithms = @("CryptonightHeavyXhv"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm cryptonight_xhv") } + @{ Algorithms = @("Decred"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm blake3_decred") } + @{ Algorithms = @("EtcHash"); Type = "NVIDIA"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 10); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool + @{ Algorithms = @("EtcHash", "Decred"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash", " --algorithm blake3_decred") } + @{ Algorithms = @("EtcHash", "HeavyHash"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash", " --algorithm heavyhash") } + @{ Algorithms = @("EtcHash", "SHA256dt"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm etchash", " --algorithm sha256dt") } + @{ Algorithms = @("Ethash"); Type = "NVIDIA"; Fee = @(0.0065); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash") } # PhoenixMiner-v6.2c may be faster, but I see lower speed at the pool + @{ Algorithms = @("Ethash", "Decred"); Type = "NVIDIA"; Fee = @(0.0065, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 60); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash", " --algorithm blake3_decred") } + @{ Algorithms = @("Ethash", "Heavyhash"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash", " --algorithm heavyhash") } + @{ Algorithms = @("Ethash", "SHA256dt"); Type = "NVIDIA"; Fee = @(0.0065, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethash", " --algorithm sha256dt") } + @{ Algorithms = @("EthashB3"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethashb3") } + @{ Algorithms = @("EthashB3", "Decred"); Type = "NVIDIA"; Fee = @(0.0085, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethashb3", " --algorithm blake3_decred") } + @{ Algorithms = @("EthashB3", "SHA256dt"); Type = "NVIDIA"; Fee = @(0.0085, 0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm ethashb3", " --algorithm sha256dt") } + @{ Algorithms = @("EvrProgPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 0); ExcludeGPUarchitectures = "^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm evrprogpow") } + @{ Algorithms = @("FiroPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm firopow") } + @{ Algorithms = @("FishHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm fishhash") } + @{ Algorithms = @("FishHash", "Decred"); Type = "NVIDIA"; Fee = @(0.01, 0.01); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm fishhash", " --algorithm blake3_decred") } + @{ Algorithms = @("FishHash", "HooHash"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1.24; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm fishhash", " --algorithm hoohash") } + @{ Algorithms = @("HeavyHash"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm heavyhash") } # FPGA + @{ Algorithms = @("HeavyHashKarlsenV2"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm karlsenhashv2") } + @{ Algorithms = @("HeavyHashKarlsenV2", "Decred"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm karlsenhashv2", " --algorithm blake3_decred") } + @{ Algorithms = @("HeavyHashKarlsenV2", "HooHash"); Type = "NVIDIA"; Fee = @(0.01, 0.02); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(60, 20); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm karlsenhashv2", " --algorithm hoohash") } + @{ Algorithms = @("HeavyHashKaspa"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm nxlhash") } + @{ Algorithms = @("HooHash"); Type = "NVIDIA"; Fee = @(0.02); MinMemGiB = 1; MinerSet = 1; WarmupTimes = @(15, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm hoohash") } + @{ Algorithms = @("KawPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 20); ExcludeGPUarchitectures = " "; ExcludePools = @(@("NiceHash", "ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm kawpow") } + @{ Algorithms = @("Lyra2v2Webchain"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm lyra2v2_webchain") } + @{ Algorithms = @("MeowPow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(@("ProHashing"), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm meowpow") } + @{ Algorithms = @("ProgPowEpic"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_epic") } + @{ Algorithms = @("ProgPowQuai"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_quai") } + @{ Algorithms = @("ProgPowSero"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_sero") } + @{ Algorithms = @("ProgPowTelestai"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_telestai") } + @{ Algorithms = @("ProgPowVeil"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 30); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_veil") } + @{ Algorithms = @("ProgPowZ"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 2; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm progpow_zano") } + @{ Algorithms = @("SCCpow"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(60, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm firopow") } + @{ Algorithms = @("SHA256dt"); Type = "NVIDIA"; Fee = @(0.0085); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(45, 15); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm sha256dt") } + @{ Algorithms = @("VertHash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = "^Other$|^Pascal$"; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm verthash --verthash-dat-path ..\.$($Variables.VerthashDatPath)") } + @{ Algorithms = @("Walahash"); Type = "NVIDIA"; Fee = @(0.01); MinMemGiB = 1; MinerSet = 0; WarmupTimes = @(30, 30); ExcludeGPUarchitectures = ""; ExcludePools = @(@(), @()); Arguments = @(" --disable-cpu --disable-gpu-amd --disable-gpu-intel --algorithm walahash") } ) $Algorithms = $Algorithms.Where({ $_.MinerSet -le $Config.MinerSet }) @@ -270,7 +270,7 @@ If ($Algorithms) { ForEach ($Pool1 in $MinerPools[1][$_.Algorithms[1]].Where({ $ExcludePools[1] -notcontains $_.Name }) | Select-Object -Last $(If ($Config.BenchmarkAllPoolAlgorithmCombinations) { $MinerPools[1][$_.Algorithms[1]].Count } Else { 1 })) { $Pools = @(($Pool0, $Pool1).Where({ $_ })) $MinMemGiB = $_.MinMemGiB + $Pool0.DAGSizeGiB + $Pool1.DAGSizeGiB - If ($AvailableMinerDevices = $SupportedMinerDevices.Where({ $_.Type -eq "CPU" -or $_.MemoryGiB -gt $MinMemGiB })) { + If ($AvailableMinerDevices = $SupportedMinerDevices.Where({ $_.MemoryGiB -gt $MinMemGiB })) { $MinerName = "$Name-$($AvailableMinerDevices.Count)x$Model-$($Pool0.AlgorithmVariant)$(If ($Pool1) { "&$($Pool1.AlgorithmVariant)" })$(If ($_.GpuDualMaxLoss) { "-$($_.GpuDualMaxLoss)" })" @@ -316,7 +316,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @($Pools.ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/SgMinerFancyIX-v0.9.4.ps1 b/Miners/SgMinerFancyIX-v0.9.4.ps1 index 4661a24e..f225d21f 100644 --- a/Miners/SgMinerFancyIX-v0.9.4.ps1 +++ b/Miners/SgMinerFancyIX-v0.9.4.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" }))) { Return } @@ -71,7 +71,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "AMD" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/Suprminer-v2.31v2.ps1 b/Miners/Suprminer-v2.31v2.ps1 index 9aa536f0..bb2ecf8b 100644 --- a/Miners/Suprminer-v2.31v2.ps1 +++ b/Miners/Suprminer-v2.31v2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -72,7 +72,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/TTMiner-v2024.3.2.ps1 b/Miners/TTMiner-v2024.3.2.ps1 index 274df2d5..bcb557c7 100644 --- a/Miners/TTMiner-v2024.3.2.ps1 +++ b/Miners/TTMiner-v2024.3.2.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> # TT needs avx2 and aes https://github.com/TrailingStop/TT-Miner-beta/issues/7#issuecomment-2158058291 @@ -148,7 +148,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/TTMiner-v5.0.3.ps1 b/Miners/TTMiner-v5.0.3.ps1 index fff12108..29bfc9c6 100644 --- a/Miners/TTMiner-v5.0.3.ps1 +++ b/Miners/TTMiner-v5.0.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -92,7 +92,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/TeamBlackMiner-v2.25.ps1 b/Miners/TeamBlackMiner-v2.25.ps1 index 4ccbc2f7..98b7fc27 100644 --- a/Miners/TeamBlackMiner-v2.25.ps1 +++ b/Miners/TeamBlackMiner-v2.25.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.CUDAversion -ge [System.Version]"11.6" -and $_.CUDAversion -lt [System.Version]"12.6" }))) { Return } @@ -138,7 +138,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = $_.Type URI = $URI - WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/TeamBlackMiner-v2.27.ps1 b/Miners/TeamBlackMiner-v2.27.ps1 index c4c84d00..de6662b0 100644 --- a/Miners/TeamBlackMiner-v2.27.ps1 +++ b/Miners/TeamBlackMiner-v2.27.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.CUDAversion -ge [System.Version]"12.6") }))) { Return } @@ -164,7 +164,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = $_.Type URI = $URI - WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/TeamRedMiner-v0.10.21.ps1 b/Miners/TeamRedMiner-v0.10.21.ps1 index a7208e45..aa18e961 100644 --- a/Miners/TeamRedMiner-v0.10.21.ps1 +++ b/Miners/TeamRedMiner-v0.10.21.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "AMD" -and $_.OpenCL.ClVersion -ge "OpenCL C 2.0" }))) { Return } @@ -69,9 +69,9 @@ $Algorithms = @( # @{ Algorithms = @("EthashSHA256", "HeavyHashKaspa"); Fee = @(0.01, 0.01); MinMemGiB = 0.77; MinerSet = 2; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @()); Arguments = " --algo=abel" } # ASIC @{ Algorithms = @("EthashSHA256", "HeavyHashPyrin"); Fee = @(0.01, 0.01); MinMemGiB = 0.77; MinerSet = 2; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @()); Arguments = " --algo=abel" } @{ Algorithms = @("EthashSHA256", "FishHash"); Fee = @(0.01, 0.01); MinMemGiB = 0.77; MinerSet = 2; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @("NiceHash")); Arguments = " --algo=abel" } - @{ Algorithms = @("FiroPow"); Fee = @(0.02); MinMemGiB = 0.77; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @("RDNA3"); ExcludePools = @(@(), @()); Arguments = " --algo=firopow" } # Wildrig-v0.41.5 is fastest on Polaris + @{ Algorithms = @("FiroPow"); Fee = @(0.02); MinMemGiB = 0.77; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @("RDNA3"); ExcludePools = @(@(), @()); Arguments = " --algo=firopow" } # Wildrig-v0.41.7 is fastest on Polaris @{ Algorithms = @("FishHash"); Fee = @(0.01); MinMemGiB = 0.77; MinerSet = 2; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(@("NiceHash"), @()); Arguments = " --algo=ironfish" } # Pools with support at this time are Herominers, Flexpool and Kryptex - @{ Algorithms = @("KawPow"); Fee = @(0.02); MinMemGiB = 0.77; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @()); Arguments = " --algo=kawpow" } # Wildrig-v0.41.5 is fastest on Polaris + @{ Algorithms = @("KawPow"); Fee = @(0.02); MinMemGiB = 0.77; MinerSet = 0; WarmupTimes = @(60, 60); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @()); Arguments = " --algo=kawpow" } # Wildrig-v0.41.7 is fastest on Polaris @{ Algorithms = @("HeavyHashKarlsen"); Fee = @(0.01); MinMemGiB = 2.0; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @()); Arguments = " --algo=karlsen" } # @{ Algorithms = @("HeavyHashKaspa"); Fee = @(0.01); MinMemGiB = 2.0; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @()); Arguments = " --algo=kas" } # ASIC @{ Algorithms = @("HeavyHashPyrin"); Fee = @(0.01); MinMemGiB = 2.0; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = @(); ExcludePools = @(@(), @()); Arguments = " --algo=pyrin" } @@ -165,7 +165,7 @@ If ($Algorithms) { PrerequisiteURI = $PrerequisiteURI Type = "AMD" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/TeleMerakiMiner-v1.5.0.ps1 b/Miners/TeleMerakiMiner-v1.5.0.ps1 index 147c4b63..b72c4723 100644 --- a/Miners/TeleMerakiMiner-v1.5.0.ps1 +++ b/Miners/TeleMerakiMiner-v1.5.0.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -77,7 +77,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/Trex-v0.26.8.ps1 b/Miners/Trex-v0.26.8.ps1 index 510dd6bb..28a718f7 100644 --- a/Miners/Trex-v0.26.8.ps1 +++ b/Miners/Trex-v0.26.8.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -128,7 +128,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Miners/Wildrig-v0.41.5.ps1 b/Miners/Wildrig-v0.41.7.ps1 similarity index 99% rename from Miners/Wildrig-v0.41.5.ps1 rename to Miners/Wildrig-v0.41.7.ps1 index 8b03a673..c146e803 100644 --- a/Miners/Wildrig-v0.41.5.ps1 +++ b/Miners/Wildrig-v0.41.7.ps1 @@ -17,13 +17,13 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ ($_.Type -eq "AMD" -and $_.OpenCL.ClVersion -ge "OpenCL C 1.2" -and $_.Architecture -notmatch "^GCN1$") -or $_.Type -eq "INTEL" -or ($_.OpenCL.ComputeCapability -ge "5.0" -and $_.OpenCL.DriverVersion -ge [System.Version]"452.39.00") }))) { Return } -$URI = "https://github.com/andru-kun/wildrig-multi/releases/download/0.41.5/wildrig-multi-windows-0.41.5.zip" +$URI = "https://github.com/andru-kun/wildrig-multi/releases/download/0.41.7/wildrig-multi-windows-0.41.7.zip" $Name = [String](Get-Item $MyInvocation.MyCommand.Path).BaseName $Path = "Bin\$Name\wildrig.exe" $DeviceEnumerator = "Type_Vendor_Slot" @@ -50,7 +50,7 @@ $Algorithms = @( @{ Algorithm = "Hex"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo hex" } @{ Algorithm = "HMQ1725"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 0; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo hmq1725" } # CryptoDredge-v0.27.0 is fastest @{ Algorithm = "JeongHash"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo glt-jeonghash" } - @{ Algorithm = "KawPow"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 0.62; MinerSet = 1; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo kawpow" } # TeamRedMiner-v0.10.21 is fastest on Navi + @{ Algorithm = "KawPow"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 0.62; MinerSet = 1; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @("NiceHash"); Arguments = " --algo kawpow" } # TeamRedMiner-v0.10.21 is fastest on Navi # @{ Algorithm = "Lyra2RE2"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2v2" } # ASIC # @{ Algorithm = "Lyra2RE3"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2v3" } # ASIC @{ Algorithm = "Lyra2TDC"; Type = "AMD"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2tdc" } @@ -131,7 +131,7 @@ $Algorithms = @( # @{ Algorithm = "HeavyHash"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 1; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo heavyhash" } # FPGA, Not yet supported on Nvidia @{ Algorithm = "HMQ1725"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo hmq1725 --watchdog" } # CryptoDredge-v0.27.0 is fastest @{ Algorithm = "JeongHash"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo glt-jeonghash --watchdog" } # Trex-v0.26.8 is fastest - @{ Algorithm = "KawPow"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 0.90; MinerSet = 1; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo kawpow --watchdog" } + @{ Algorithm = "KawPow"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 0.90; MinerSet = 1; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @("NiceHash"); Arguments = " --algo kawpow --watchdog" } # @{ Algorithm = "Lyra2RE2"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2v2 --watchdog" } # ASIC # @{ Algorithm = "Lyra2RE3"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2v3 --watchdog" } # ASIC @{ Algorithm = "Lyra2TDC"; Type = "INTEL"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2tdc --watchdog" } @@ -212,7 +212,7 @@ $Algorithms = @( @{ Algorithm = "Hex"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo hex --watchdog" } @{ Algorithm = "HMQ1725"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 1; WarmupTimes = @(60, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo hmq1725 --watchdog" } # CryptoDredge-v0.27.0 is fastest @{ Algorithm = "JeongHash"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo glt-jeonghash --watchdog" } # Trex-v0.26.8 is fastest - @{ Algorithm = "KawPow"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo kawpow --watchdog" } + @{ Algorithm = "KawPow"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 1.24; MinerSet = 1; WarmupTimes = @(45, 0); ExcludeGPUarchitectures = " "; ExcludePools = @("NiceHash"); Arguments = " --algo kawpow --watchdog" } # @{ Algorithm = "Lyra2RE2"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2v2 --watchdog" } # ASIC # @{ Algorithm = "Lyra2RE3"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2v3 --watchdog" } # ASIC @{ Algorithm = "Lyra2TDC"; Type = "NVIDIA"; Fee = @(0.0075); MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(30, 15); ExcludeGPUarchitectures = " "; ExcludePools = @(); Arguments = " --algo lyra2tdc --watchdog" } @@ -311,7 +311,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/XLArig-v5.2.4.ps1 b/Miners/XLArig-v5.2.4.ps1 index 00adce1b..2bca2331 100644 --- a/Miners/XLArig-v5.2.4.ps1 +++ b/Miners/XLArig-v5.2.4.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> # https://github.com/scala-network/XLArig/issues/59; Need to remove temp fix in \Includes\MinerAPIs\XMrig.psm1 when resolved @@ -62,7 +62,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "CPU" URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/XmRig-v6.22.0.3.ps1 b/Miners/XmRig-v6.22.0.3.ps1 index e1a14c20..efe9a4b8 100644 --- a/Miners/XmRig-v6.22.0.3.ps1 +++ b/Miners/XmRig-v6.22.0.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ "AMD", "CPU", "INTEL" -contains $_.Type -or $_.OpenCL.ComputeCapability -gt "5.0" }))) { Return } @@ -70,7 +70,7 @@ $Algorithms = @( @{ Algorithm = "CryptonightXao"; Type = "AMD"; MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo cn/xao" } @{ Algorithm = "CryptonightHeavyXhv"; Type = "AMD"; MinMemGiB = 4; MinerSet = 1; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo cn-heavy/xhv" } @{ Algorithm = "CryptonightZls"; Type = "AMD"; MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo cn/zls" } - @{ Algorithm = "KawPow"; Type = "AMD"; MinMemGiB = 0.77; MinerSet = 1; WarmupTimes = @(60, 0); ExcludePools = @(); Arguments = " --algo kawpow" } + @{ Algorithm = "KawPow"; Type = "AMD"; MinMemGiB = 0.97; MinerSet = 1; WarmupTimes = @(60, 0); ExcludePools = @(); Arguments = " --algo kawpow" } # @{ Algorithm = "Randomx"; Type = "AMD"; MinMemGiB = 3; MinerSet = 3; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo rx/0" } # GPUs don't do Randomx and when they do it's a watt-wasting miracle anyway # @{ Algorithm = "RandomxArq"; Type = "AMD"; MinMemGiB = 4; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo rx/arq" } # GPUs don't do Randomx and when they do it's a watt-wasting miracle anyway # @{ Algorithm = "RandomxKeva"; Type = "AMD"; MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo rx/keva" } # GPUs don't do Randomx and when they do it's a watt-wasting miracle anyway @@ -134,7 +134,7 @@ $Algorithms = @( @{ Algorithm = "CryptonightXao"; Type = "INTEL"; MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo cn/xao" } @{ Algorithm = "CryptonightHeavyXhv"; Type = "INTEL"; MinMemGiB = 4; MinerSet = 1; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo cn-heavy/xhv" } @{ Algorithm = "CryptonightZls"; Type = "INTEL"; MinMemGiB = 2; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo cn/zls" } - @{ Algorithm = "KawPow"; Type = "INTEL"; MinMemGiB = 0.77; MinerSet = 1; WarmupTimes = @(60, 15); ExcludePools = @(); Arguments = " --algo kawpow" } + @{ Algorithm = "KawPow"; Type = "INTEL"; MinMemGiB = 0.97; MinerSet = 1; WarmupTimes = @(60, 15); ExcludePools = @(); Arguments = " --algo kawpow" } # @{ Algorithm = "Randomx"; Type = "INTEL"; MinMemGiB = 3; MinerSet = 3; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo rx/0" } # GPUs don't do Randomx and when they do it's a watt-wasting miracle anyway # @{ Algorithm = "RandomxArq"; Type = "INTEL"; MinMemGiB = 4; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo rx/arq" } # GPUs don't do Randomx and when they do it's a watt-wasting miracle anyway # @{ Algorithm = "RandomxKeva"; Type = "INTEL"; MinMemGiB = 1; MinerSet = 2; WarmupTimes = @(45, 0); ExcludePools = @(); Arguments = " --algo rx/keva" } # GPUs don't do Randomx and when they do it's a watt-wasting miracle anyway @@ -195,7 +195,7 @@ If ($Algorithms) { ForEach ($Pool in $MinerPools[0][$_.Algorithm] | Select-Object -Last $(If ($_.Type -eq "CPU") { 1 } Else { $MinerPools[0][$_.Algorithm].Count })) { $MinMemGiB = $_.MinMemGiB + $Pool.DAGSizeGiB - If ($AvailableMinerDevices = $MinerDevices.Where({ $_.Type -eq "CPU" -or $_.MemoryGiB -gt $MinMemGiB })) { + If ($AvailableMinerDevices = $MinerDevices.Where({ $_.MemoryGiB -gt $MinMemGiB })) { $MinerName = "$Name-$($AvailableMinerDevices.Count)x$Model-$($Pool.AlgorithmVariant)" @@ -219,7 +219,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/XmrStak-v2.10.8.ps1 b/Miners/XmrStak-v2.10.8.ps1 index 33ead574..9232a382 100644 --- a/Miners/XmrStak-v2.10.8.ps1 +++ b/Miners/XmrStak-v2.10.8.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -ne "NVIDIA" -or $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -109,7 +109,7 @@ If ($Algorithms) { $Algorithms.Where({ $_.Type -eq $Type }).ForEach( { $MinMemGiB = $_.MinMemGiB - If ($AvailableMinerDevices = $MinerDevices.Where({ $_.Type -eq "CPU" -or $_.MemoryGiB -gt $MinMemGiB })) { + If ($AvailableMinerDevices = $MinerDevices.Where({ $_.MemoryGiB -gt $MinMemGiB })) { $MinerName = "$Name-$($AvailableMinerDevices.Count)x$Model-$($_.Algorithm)" @@ -186,7 +186,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/ZealotEnemy-v2.6.3.ps1 b/Miners/ZealotEnemy-v2.6.3.ps1 index 5b2e49ed..2c36be92 100644 --- a/Miners/ZealotEnemy-v2.6.3.ps1 +++ b/Miners/ZealotEnemy-v2.6.3.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.OpenCL.ComputeCapability -ge "5.0" }))) { Return } @@ -94,7 +94,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = "NVIDIA" URI = $URI - WarmupTimes = @($_.WarmupTimes) # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = @($_.WarmupTimes) # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(@{ Pool = $Pool }) } } diff --git a/Miners/lolMiner-v1.92.ps1 b/Miners/lolMiner-v1.92.ps1 index 447b4ad8..fb4f1d77 100644 --- a/Miners/lolMiner-v1.92.ps1 +++ b/Miners/lolMiner-v1.92.ps1 @@ -17,8 +17,8 @@ along with this program. If not, see . <# Product: UG-Miner -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> If (-not ($Devices = $Variables.EnabledDevices.Where({ $_.Type -eq "INTEL" -or ($_.Type -eq "AMD" -and $_.Architecture -match "GCN4|RDNA[1|2|3]") -or $_.OpenCL.ComputeCapability -ge "6.0" }))) { Return } @@ -195,7 +195,7 @@ If ($Algorithms) { Port = $MinerAPIPort Type = $_.Type URI = $URI - WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; Second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking + WarmupTimes = $_.WarmupTimes # First value: Seconds until miner must send first sample, if no sample is received miner will be marked as failed; second value: Seconds from first sample until miner sends stable hashrates that will count for benchmarking Workers = @(($Pool0, $Pool1).Where({ $_ }).ForEach({ @{ Pool = $_ } })) } } diff --git a/Pools/HashCryptos.ps1 b/Pools/HashCryptos.ps1 index 5d2ec351..bbf70538 100644 --- a/Pools/HashCryptos.ps1 +++ b/Pools/HashCryptos.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Pools\HashCryptos.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Param( diff --git a/Pools/HiveON.ps1 b/Pools/HiveON.ps1 index b8ed3628..8c22e529 100644 --- a/Pools/HiveON.ps1 +++ b/Pools/HiveON.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Pools\Hiveon.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Param( diff --git a/Pools/MiningDutch.ps1 b/Pools/MiningDutch.ps1 index 9e78ab67..e81a8d76 100644 --- a/Pools/MiningDutch.ps1 +++ b/Pools/MiningDutch.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Pools\MiningDutch.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Param( diff --git a/Pools/NiceHash.ps1 b/Pools/NiceHash.ps1 index 9a6153ad..d83fdd05 100644 --- a/Pools/NiceHash.ps1 +++ b/Pools/NiceHash.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Pools\NiceHash.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Param( diff --git a/Pools/ProHashing.ps1 b/Pools/ProHashing.ps1 index 204b2544..907e3d6a 100644 --- a/Pools/ProHashing.ps1 +++ b/Pools/ProHashing.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Pools\ProHashing.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Param( diff --git a/Pools/ZPool.ps1 b/Pools/ZPool.ps1 index 8cea97a3..76d3437c 100644 --- a/Pools/ZPool.ps1 +++ b/Pools/ZPool.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Pools\ZPool.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Param( diff --git a/Pools/ZergPool.ps1 b/Pools/ZergPool.ps1 index 1d23b985..63ce9fe0 100644 --- a/Pools/ZergPool.ps1 +++ b/Pools/ZergPool.ps1 @@ -19,8 +19,8 @@ along with this program. If not, see . <# Product: UG-Miner File: \Pools\ZergPool.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> Param( diff --git a/README.md b/README.md index 3585fab2..b3c3ffd5 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ UG-Miner monitors mining pools in real-time in order to find the most profitable algorithm and runs the most profitable miner. -Version 6.3.21 / Updated 2024/12/16 +Version 6.3.22 / Updated 2024/12/21 Copyright (c) 2018-2024 UselessGuru diff --git a/UG-Miner.ps1 b/UG-Miner.ps1 index 8e920fe7..276ea3da 100644 --- a/UG-Miner.ps1 +++ b/UG-Miner.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: UG-Miner.ps1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> using module .\Includes\Include.psm1 @@ -317,7 +317,7 @@ $Variables.Branding = [PSCustomObject]@{ BrandName = "UG-Miner" BrandWebSite = "https://github.com/UselessGuru/UG-Miner" ProductLabel = "UG-Miner" - Version = [System.Version]"6.3.21" + Version = [System.Version]"6.3.22" } $Global:WscriptShell = New-Object -ComObject Wscript.Shell @@ -929,7 +929,7 @@ Function MainLoop { If ($Config.WebGUI) { Start-APIServer } Else { Stop-APIServer } If ($Config.ShowConsole) { - If ($Variables.MinersRunning) { Clear-Host } + If ($Variables.Miners) { Clear-Host } # Get and display earnings stats If ($Variables.Balances -and $Variables.ShowPoolBalances) { @@ -1103,7 +1103,7 @@ Function MainLoop { If ($Variables.MiningStatus -eq "Running") { If ($Variables.Timer) { - Write-Host ($Variables.Summary -replace "\.\.\.
", "... " -replace "
", $nl -replace " ", " " -replace "\s*/\s*", "/" -replace "\s*=\s*", "=") + Write-Host ($Variables.Summary -replace "\.\.\.
", "... " -replace "
", " " -replace "\s*/\s*", "/" -replace "\s*=\s*", "=") } If ($Variables.Miners.Where({ $_.Available -and -not ($_.Benchmark -or $_.MeasurePowerConsumption) })) { If ($Variables.MiningProfit -lt 0) { @@ -1114,9 +1114,6 @@ Function MainLoop { # Mining profit is below the configured threshold Write-Host -ForegroundColor Blue ("Mining profit ({0} {1:n$($Config.DecimalsMax)}) is below the configured threshold of {0} {2:n$($Config.DecimalsMax)} / day. Mining is suspended until threshold is reached." -f $Config.FIATcurrency, ($Variables.MiningProfit * $Variables.Rates.($Config.PayoutCurrency).($Config.FIATcurrency)), $Config.ProfitabilityThreshold) } - } - - If ($Variables.MinersBest) { $StatusInfo = "Last refresh: $($Variables.BeginCycleTime.ToLocalTime().ToString("G")) | Next refresh: $(If ($Variables.EndCycleTime) { $($Variables.EndCycleTime.ToLocalTime().ToString("G")) } Else { 'n/a (Mining is suspended)' }) | Hot keys: $(If ($Variables.CalculatePowerCost) { "[123acefimnprstuwy]" } Else { "[123aefimnrsuwy]" }) | Press 'h' for help" Write-Host ("-" * $StatusInfo.Length) Write-Host -ForegroundColor Yellow $StatusInfo diff --git a/Version.txt b/Version.txt index 96ebb52f..75b23202 100644 --- a/Version.txt +++ b/Version.txt @@ -1,6 +1,6 @@ { "Product": "UG-Miner", - "Version": "6.3.21", + "Version": "6.3.22", "AutoUpdate": true, "Uri": "https://github.com/UselessGuru/UG-Miner/archive/refs/heads/master.zip", "Message": "https://github.com/UselessGuru/UG-Miner/releases" diff --git a/Web/css/main.css b/Web/css/main.css index 010a638a..ddbc7f33 100644 --- a/Web/css/main.css +++ b/Web/css/main.css @@ -108,14 +108,16 @@ footer { position: absolute; padding-right: 30px; left: 770px; + right: -1px; color: white; font-size: 1.2rem; line-height: 1.5; height: 4.8rem; display: flex; align-items: center; - justify-content: center; + justify-content: left; overflow-y: auto; + white-space: pre; } /* diff --git a/Web/parts/foot.html b/Web/parts/foot.html index 2369337b..5f47fff6 100644 --- a/Web/parts/foot.html +++ b/Web/parts/foot.html @@ -86,7 +86,7 @@ } }); } - document.getElementById('footer').innerHTML = sessionStorage.getItem("version").replaceAll(',', ' / ') + ' / All earnings and profit numbers are estimates based on data provided by the pools APIs / © UselessGuru' + document.getElementById('footer').innerHTML = sessionStorage.getItem("version").replaceAll(',', ' / ') + ' / All earnings and profit numbers are estimates based on data provided by the pools APIs / © UselessGuru' }); diff --git a/Web/parts/head.html b/Web/parts/head.html index 397963ab..3483f58f 100644 --- a/Web/parts/head.html +++ b/Web/parts/head.html @@ -94,8 +94,8 @@ timeout: 1, url: '/summary', success: function(result) { - $('#summary').empty().append(result); - document.getElementById('summary').title = result.toString().replaceAll('\ ', ' ').replace('
', '\n'); + document.getElementById('summary').innerHTML = result.toString(); + document.getElementById('summary').title = result.toString(); } }); } diff --git a/Web/scripts/demo.ps1 b/Web/scripts/demo.ps1 index d18a8f02..14c4ff2e 100644 --- a/Web/scripts/demo.ps1 +++ b/Web/scripts/demo.ps1 @@ -18,8 +18,8 @@ along with this program. If not, see . <# Product: UG-Miner File: demo.psm1 -Version: 6.3.21 -Version date: 2024/12/16 +Version: 6.3.22 +Version date: 2024/12/21 #> # Try running this script as: http://localhost:3999/scripts/demo.ps1?message=Hello%20World!