안녕하세요. 최근 채굴에 입문해 어제 세팅 마무리한 초보 채굴러입니다.
땡글은 눈팅만 하고 있었는데 검색을 통해 도움 받은 것들이 너무 많아서 저 같은 초보자분들에게 조금이나마 도움이 되고자 글을 쓰게 되었네요.
마이닝 풀 허브에서 지원하는 멀티 알고리즘 스위치를 세팅하는 방법에 대해서 조금 자세히 써 보고자 합니다.
제가 사용하고 있는 NVIDIA 1060 6g를 기준으로 설명하도록 하겠습니다.
마이닝 풀 허브 첫 페이지를 보면 이런 코인별 예상 수익이 정리돼 나오는 것을 볼 수 있습니다.
저 같은 경우 기존에 이더리움만 채굴하다 보니 다른 코인이 이더리움보다 위로 올라오면 왠지 욕심이 나더라고요.
이런 경우에 자동으로 채굴 코인을 바꾸어 가며 실시간으로 가장 높은 수익률을 내는 코인을 캐는 채굴법이 바로 멀티 알고리즘 스위치 채굴입니다.
먼저 마이닝 풀 허브에도 자세히 설명되어 있지만 채굴은 크게 3가지 방법으로 진행할 수 있습니다.
1) 단순 코인 채굴
많은 분들이 이렇게 하고 계실 것 같은데, 1가지 코인만 캐는 겁니다. 이더리움, zcash등 1가지 코인만 정해서 캐는 것이죠.
asia.ethash-hub.miningpoolhub.com:20535
이런 식으로 20xxx번 포트를 사용해 접속합니다.
2) 알고리즘 스위치 채굴
앞에서 1가지 코인만 정해서 캐는 것과 달리 1가지 알고리즘을 정해 그 알고리즘에 해당되는 코인 중 수익률이 가장 높은 코인을 바꾸어 가며 캐는 방법입니다.
예를 들어 ethash 알고리즘으로 캘 수 있는 코인은 이더리움, 이더리움 클래식, expanse, musicoin 등이 있으니 이들 코인들 중 실시간 수익률이 가장 높은 코인을 자동으로 캐는 것이죠.
asia.ethash-hub.miningpoolhub.com:17020
이런 식으로 17xxx번 포트를 통해 접속합니다.
3) 멀티 알고리즘 스위치 채굴
제가 이 글을 통해 설명 드리려고 하는 멀티 알고리즘 스위치 채굴입니다. 내가 캐고 싶은 알고리즘의 세트를 정해 놓으면 그 알고리즘들이 지원하는 코인들 중 실시간 수익률이 가장 높은 코인을 채굴하게 됩니다.
예시로 제가 사용하는 알고리즘 세트는 다음과 같습니다.
NVIDIA - Cryptonight, Ethash, Equihash, Groestl, Lyra2RE2, Myriad-Groestl, NeoScrypt, Skein
위에 있는 실시간 수익률 표를 기준으로 하면 Groestlcoin의 수익률이 가장 높으니 Groestl 알고리즘을 자동으로 선택하여 Groestlcoin을 채굴하게 됩니다.
ethash asia.ethash-hub.miningpoolhub.com:12020
equihash asia.equihash-hub.miningpoolhub.com:12023
cryptonight asia.cryptonight-hub.miningpoolhub.com:12024
groestl hub.miningpoolhub.com:12004
lyra2v2 hub.miningpoolhub.com:12018
myr-gr hub.miningpoolhub.com:12005
neoscrypt hub.miningpoolhub.com:12012
skein hub.miningpoolhub.com:12016
이와 같이 각 알고리즘별로 12xxx번 포트를 통해 접속하게 되며, 위의 2가지 방법과 달리 알고리즘 별로 다른 마이너를 사용해야 할 때도 있습니다.
멀티 알고리즘 스위치의 원리
궁금하신 분 들만 보시면 될 것 같습니다.
마이닝 풀 허브 메뉴의 자동 스위치로 들어가 보시면 다음과 같이 알고리즘 세트 목록이 뜹니다. 이 목록이 마풀허에서 지원하는 멀티 알고리즘 스위치를 위한 알고리즘 세트입니다. 저는 저 중에 NVIDIA - Cryptonight, Ethash, Equihash, Groestl, Lyra2RE2, Myriad-Groestl, NeoScrypt, Skein 세트를 사용하고 있는 것이죠.
12xxx번대의 포트를 사용한다는 것이 중요한데, 이들 포트는 위의 17xxx, 20xxx번대 포트와 다르게 항상 열려있는 포트가 아닙니다. 한 세트의 알고리즘 중 가장 높은 수익률을 보이는 알고리즘에 해당하는 포트만을 열어 그 알고리즘만 채굴이 진행되게 하는 것이죠.
제가 선택한 알고리즘 세트에서 zcash를 캐고 있는 것을 보아 현재 수익률이 가장 높은 zcash를 캐는 알고리즘인 equihash, 즉 asia.equihash-hub.miningpoolhub.com:12023 서버만이 열려 채굴기에서 자동으로 zcash를 캐는 것이라 생각하시면 됩니다.
수익률이 가장 높은 코인이 바뀌면 zcash에 해당하는 포트는 닫히고 다른 포트가 열려 채굴기에서 자동으로 높은 수익률의 코인으로 이동하게 되는 것이죠.
실제로는 한 블록을 모두 채굴할 때 까지 포트가 열려 있으므로 마풀허 홈 페이지의 실시간 순위와 실제 캐고 있는 코인이 항상 일치하지는 않습니다.
세팅 방법
먼저 내가 채굴하기 원하는 알고리즘들을 고릅니다. 이때 주의할 점은 마풀허 - 자동 스위치 메뉴의 알고리즘 세트에 있는 조합 중 하나를 골라야 합니다.
제 경우는 zcash, 이더리움을 캐기 위해 Equihash, Ethash 알고리즘과, 항상 수익률 상위에서 왔다갔다하는 Cryptonight, Groestl, Lyra2RE2, Myriad-Groestl, NeoScrypt, Skein 알고리즘을 추가해
<NVIDIA - Cryptonight, Ethash, Equihash, Groestl, Lyra2RE2, Myriad-Groestl, NeoScrypt, Skein> 세트를 선택하였습니다.
각자의 채굴기 세팅과 취향대로 고르시면 됩니다.
다음은 각 알고리즘을 캘 수 있는 마이너를 모두 준비합니다. NVIDIA 기준으로
Ethash - 클레이모어
Equihash - EWBF
Cryptonight, Groestl, Lyra2RE2, Myriad-Groestl, NeoScrypt, Skein - ccminer
로 커버가 되네요.
* 현재 기준으로 ccminer에서 지원하는 알고리즘은 다음과 같습니다.
Bitcoin, Blake 256 (SFR/NEOS), Fast Blake 256 (8 rounds), X11 variant, Deepcoin, Diamond-Groestl, Freshcoin (shavite 80), Fuguecoin, Groestlcoin, Jackpot, Keccak-256 (Maxcoin), Doomcoin, VertCoin, Myriad-Groestl, neoscrypt (FeatherCoin), NIST5 (TalkCoin), Pentablake hash (5x Blake 512), Quark, Qubit, Siacoin (at pools compatible to siamining.com), Skein SHA2 (Skeincoin), S3 (1Coin), Spread, X11 (DarkCoin), X13 (MaruCoin), X14, X15, X17 (peoplecurrency), Blake 256 8 rounds, yescrypt, Whirlcoin (old whirlpool), Vanillacoin
설치 폴더는 달라도 상관 없습니다.
저는 이렇게 설치했습니다.
이제 배치 파일을 짜야 하는데,
기본적으로 다음과 같습니다.
<NVIDIA - Cryptonight, Ethash, Equihash, Groestl, Lyra2RE2, Myriad-Groestl, NeoScrypt, Skein> 세트 기준으로
:start
EthDcrMiner64.exe -epool asia.ethash-hub.miningpoolhub.com:12020 -ewal username.workername -eworker username.workername -esm 2 -epsw x -allpools 1 -retrydelay -1
miner --server asia.equihash-hub.miningpoolhub.com --user username.workername --pass x --port 12023 --eexit 3
ccminer -r 0 -a cryptonight -o stratum+tcp://asia.cryptonight-hub.miningpoolhub.com:12024 -u username.workername -p x
ccminer -r 0 -a groestl -o stratum+tcp://hub.miningpoolhub.com:12004 -u username.workername -p x
ccminer -r 0 -a lyra2v2 -o stratum+tcp://hub.miningpoolhub.com:12018 -u username.workername -p x
ccminer -r 0 -a myr-gr -o stratum+tcp://hub.miningpoolhub.com:12005 -u username.workername -p x
ccminer -r 0 -a neoscrypt -o stratum+tcp://hub.miningpoolhub.com:12012 -u username.workername -p x
ccminer -r 0 -a skein -o stratum+tcp://hub.miningpoolhub.com:12016 -u username.workername -p x
timeout 1
goto start
기본적으로 1가지 알고리즘을 채굴할 때 사용하는 배치 파일의 명령어를 모아 놓은 것과 같습니다. 우리가 앞에서 정한 모든 알고리즘에 대한 명령어를 모아 놓은 것이죠.
조금 다른 것은 포트가 닫혔을 때 다음 알고리즘으로 넘어가는 명령(클레이모어의 -retrydelay -1, EWBF의 --eexit 3 등) 과 포트 번호가 멀티 알고리즘 스위칭에 사용되는 12xxx번대라는 것입니다.
이렇게 목록에 있는 마이너들이 각 알고리즘 포트에 접속을 시도해서 열려있는 포트(가장 수익률이 높은)에 접속해 채굴을 하고, 포트가 닫히면 또 반복해서 열린 포트를 찾는 과정이 반복되는 것이죠.
각 알고리즘의 서버 주소는 마풀허 FAQ에 자세히 나와 있습니다. (https://miningpoolhub.com/?page=gettingstarted)
실제 마이닝에서는 어디서든 배치 파일을 실행할 수 있도록 마이너의 경로를 넣어 주어야 합니다. 마이너들과 배치 파일들을 모두 같은 폴더에 넣은 상황이 아니라면 말이죠.
:start
C:\Users\hanjh93\Desktop\miner\Claymore's Dual Ethereum+Decred_Siacoin_Lbry_Pascal AMD+NVIDIA GPU Miner v9.5\EthDcrMiner64.exe -epool asia.ethash-hub.miningpoolhub.com:12020 -ewal username.workername -eworker username.workername -esm 2 -epsw x -allpools 1 -retrydelay -1
C:\Users\hanjh93\Desktop\miner\Zec Miner 0.3.4b\miner --server asia.equihash-hub.miningpoolhub.com --user username.workername--pass x --port 12023 --eexit 3
C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64 -r 0 -a cryptonight -o stratum+tcp://asia.cryptonight-hub.miningpoolhub.com:12024 -u username.workername -p x
C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64 -r 0 -a groestl -o stratum+tcp://hub.miningpoolhub.com:12004 -u username.workername -p x
C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64 -r 0 -a lyra2v2 -o stratum+tcp://hub.miningpoolhub.com:12018 -u username.workername -p x
C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64 -r 0 -a myr-gr -o stratum+tcp://hub.miningpoolhub.com:12005 -u username.workername -p x
C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64 -r 0 -a neoscrypt -o stratum+tcp://hub.miningpoolhub.com:12012 -u username.workername -p x
C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64 -r 0 -a skein -o stratum+tcp://hub.miningpoolhub.com:12016 -u username.workername -p x
timeout 1
goto start
그래서 이런 식으로 되는데, 보기가 좀 그래서 저는 아래와 같이 씁니다.
변수를 설정하고 %변수% 로 경로를 넣는 식입니다. 뭐 마이너 폴더를 PATH로 설정하면 이런 과정이 필요 없긴 한데, 편하신 대로 하면 될 것 같아요.
set EthDcrMiner64.exe="C:\Users\hanjh93\Desktop\miner\Claymore's Dual Ethereum+Decred_Siacoin_Lbry_Pascal AMD+NVIDIA GPU Miner v9.5\EthDcrMiner64.exe"
set miner="C:\Users\hanjh93\Desktop\miner\Zec Miner 0.3.4b\miner"
set ccminer="C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64"
:start
%EthDcrMiner64.exe% -epool asia.ethash-hub.miningpoolhub.com:12020 -ewal username.workername -eworker username.workername -esm 2 -epsw x -allpools 1 -retrydelay -1
%miner% --server asia.equihash-hub.miningpoolhub.com --user username.workername --pass x --port 12023 --eexit 3
%ccminer% -r 0 -a cryptonight -o stratum+tcp://asia.cryptonight-hub.miningpoolhub.com:12024 -u username.workername -p x
%ccminer% -r 0 -a groestl -o stratum+tcp://hub.miningpoolhub.com:12004 -u username.workername -p x
%ccminer% -r 0 -a lyra2v2 -o stratum+tcp://hub.miningpoolhub.com:12018 -u username.workername -p x
%ccminer% -r 0 -a myr-gr -o stratum+tcp://hub.miningpoolhub.com:12005 -u username.workername -p x
%ccminer% -r 0 -a neoscrypt -o stratum+tcp://hub.miningpoolhub.com:12012 -u username.workername -p x
%ccminer% -r 0 -a skein -o stratum+tcp://hub.miningpoolhub.com:12016 -u username.workername -p x
timeout 1
goto start
거의 다 끝났습니다.
위의 파일을 .BAT 파일로 저장한 뒤 실행하시면 됩니다. 이후 시작 프로그램 등록 등등은 잘 하실테니.
그리고 마풀허 메뉴 - 허브마이너로 들어가서 마이너의 알고리즘 세트를 선택해 주면 끝납니다.
모니터링은 마풀허의 자동 스위치 메뉴에서 현재 캐고 있는 코인을 확인해 해당 코인 페이지에서 대쉬보드 등을 확인해도 되고, 위 마이너 조합이라면 ‘남자별’님의 모니터 프로그램을 사용해도 좋아 보입니다.(https://www.ddengle.com/board_event/2220251) 좋은 프로그램 감사 드립니다ㅎㅎ
사실 저도 멀티 알고리즘 스위칭은 이번에 세팅하면서 처음 써 본 방법이고 이론상으로는 높은 수익률이 기대되는데 실제로 얼마나 효율적으로 채굴이 이루어질 지는 사용해 봐야 알 것 같습니다.
이 방법의 단점 중 하나가 여러 마이너를 사용하다 보면 한 가지 마이너에 최적화된 오버 세팅으로는 다른 마이너 사용시 비효율이 있을 수 있다는 점인데, 최소한 오버 세팅값만이라도 자동으로 바꾸어 줄 수 있으면 좋지 않을까 하는 생각이 들어 배치 파일상에서 애프터버너 설정을 바꿀 수 있는 팁 역시 함께 올리도록 하겠습니다. 검색을 통해 atomrig님의 답변에서 도움을 얻었습니다. 감사합니다.(https://www.ddengle.com/miningbitcoin/1700621)
배치파일로 애프터버너 설정 바꾸기
애프터버너가 설치된 폴더에 들어가보면 profile 폴더가 있습니다. 여기 있는 VEN~~.cfg 파일이 각각의 VGA에 대한 애프터버너 세팅값이 저장돼 있는 파일입니다. 제 경우는 4way 이므로 파일이 4개 있네요.
애프터버너가 실행 될 때 이 파일을 읽어들여서 오버값을 세팅하는데, 배치 파일로 오버 세팅을 바꾸기 위해서는 애프터버너 프로세스 종료 -> 새로운 파일로 바꿔치기 -> 애프터버너 실행의 과정을 거치면 됩니다.
먼저 설정 파일 하나를 열어보면, 다음과 같은데, 우리가 관심을 가질 부분은 바로 저 Startup 부분입니다. 제 세팅은 파워 80, core +150, mem +500, fan 75%인데 각각 해당하는 부분을 수정해 새로운 설정 파일을 만들면 됩니다.
그렇게 원래 파일과 같은 이름의 수정된 설정 파일들을 다른 폴더에 저장 해 놓고 배치파일을 이용해 애프터버너종료 -> 설정파일 뒤집어 씌우기 -> 애프터버너 실행 하면 됩니다.
저는 profile 폴더 옆에 이더리움용으로 profile_e, zcash용으로 profile_z, ccminer용으로 profile_c 등으로 설정파일 폴더를 만들어 놓았습니다.
**수정했습니다. 기존의 path를 cd로 바꾸었습니다!**
배치 파일은
taskkill /F /IM MSIAfterburner.exe /T
cd "C:\Program Files (x86)\MSI Afterburner\"
copy profiles_z Profiles /Y
start MSIAfterburner.exe
이런 식입니다.
애프터버너를 강제 종료
애프터버너 설치 폴더로 이동
zcash용 설정 폴더를 Profile 폴더에 뒤집어씌우기
애프터버너 다시 시작
program files를 건드리는 것이기 때문에 꼭!! ‘관리자 권한’으로 실행 해 주셔야 원활히 돌아갑니다. 배치 파일 바로가기 설정에서 ‘항상 관리자 권한으로 실행‘등을 설정해놓으면 편합니다. 관리자 권한 알림 없애는 방법은 UAC 설정이나 견우별님의 글(https://www.ddengle.com/board_event/2271710)을 참조하시면 됩니다.
이제 위의 멀티 알고리즘 스위치에 이걸 응용해서
set EthDcrMiner64.exe="C:\Users\hanjh93\Desktop\miner\Claymore's Dual Ethereum+Decred_Siacoin_Lbry_Pascal AMD+NVIDIA GPU Miner v9.5\EthDcrMiner64.exe"
set miner="C:\Users\hanjh93\Desktop\miner\Zec Miner 0.3.4b\miner"
set ccminer="C:\Users\hanjh93\Desktop\miner\ccminer-2.0-release-x64-cuda-8.0\ccminer-x64"
:start
taskkill /F /IM MSIAfterburner.exe /T
cd "C:\Program Files (x86)\MSI Afterburner\"
copy profiles_e Profiles /Y
start MSIAfterburner.exe
%EthDcrMiner64.exe% -epool asia.ethash-hub.miningpoolhub.com:12020 -ewal username.workername -eworker username.workername -esm 2 -epsw x -allpools 1 -retrydelay -1
taskkill /F /IM MSIAfterburner.exe /T
cd "C:\Program Files (x86)\MSI Afterburner\"
copy profiles_z Profiles /Y
start MSIAfterburner.exe
%miner% --server asia.equihash-hub.miningpoolhub.com --user username.workername --pass x --port 12023 --eexit 3
taskkill /F /IM MSIAfterburner.exe /T
cd "C:\Program Files (x86)\MSI Afterburner\"
copy profiles_c Profiles /Y
start MSIAfterburner.exe
%ccminer% -r 0 -a cryptonight -o stratum+tcp://asia.cryptonight-hub.miningpoolhub.com:12024 -u username.workername -p x
%ccminer% -r 0 -a groestl -o stratum+tcp://hub.miningpoolhub.com:12004 -u username.workername -p x
%ccminer% -r 0 -a lyra2v2 -o stratum+tcp://hub.miningpoolhub.com:12018 -u username.workername -p x
%ccminer% -r 0 -a myr-gr -o stratum+tcp://hub.miningpoolhub.com:12005 -u username.workername -p x
%ccminer% -r 0 -a neoscrypt -o stratum+tcp://hub.miningpoolhub.com:12012 -u username.workername -p x
%ccminer% -r 0 -a skein -o stratum+tcp://hub.miningpoolhub.com:12016 -u username.workername -p x
timeout 1
goto start
등으로 배치를 짜면 각 마이너 실행 전에 자동으로 애프터버너의 세팅을 바꾸며 오버 세팅만은 멀티 알고리즘 스위치에서도 각 마이너에 맞게 설정할 수 있게 됩니다.
꼭 관리자 권한으로 실행되게 설정하시는 것 잊지 마시고요.
멀티 알고리즘이 아니더라도 수동으로 마이너를 가끔 바꾸시는 분들 역시 배치 파일에 저 코드를 넣어 버리면 마이너 실행 시에 자동으로 오버 세팅이 되어 손이 덜 갈 수 있습니다.
이렇게 마무리 되었네요. 코딩은 제대로 배워 본 적이 없어서 개발자분들 눈에는 불편하실 수도 있다는 점 미리 양해 드립니다.
저도 이제야 세팅해 본 멀티 알고리즘 스위치지만 궁금하셨던 분들에게 많은 도움이 되었으면 합니다.
채굴 이번에 처음 시작해 보았는데 세팅하면서 모든 문제들이 땡글 통해서 troubleshooting이 되더라고요.
유저들 모두, 그리고 마풀허에 저런 좋은 기능 탑재해주신 코인코인님께 특별히 감사드려요ㅎㅎ
혹시 잘못된 부분 있다면 지적 감사히 받겠습니다 :)
좋아요 한 번씩 눌러 주시면 큰 힘이 됩니다^^