看板 DigiCurrency 關於我們 聯絡資訊
這幾天又做了一些CPU挖礦的測試,把心得報告一下 我的機器: CPU:i7-5930k CPU和Cache同樣超頻至4.5G CPU電壓1.4V、cache電壓1.55V Memory: 64GB DDR4-2133降頻跑2000 OS:Fedora 22 WS 本來用cpuminer-multi在挖, (https://github.com/hyc/cpuminer-multi) 沒有設定hugepages的情況下大概是400H/s; 設定hugepages為256(實際測試64以上基本上不變)大概是448H/s, # 但是hugepages的設定好像不是每台電腦都有用, # 我有試過別台電腦但是沒有差別的。 ## 再補充一下,有些沒用的原因是系統本來就預設有AnonHugePages, ## 這時候再設定hugepages(sysctl -w vm.nr_hugepages=128),就沒幫助了, ## 可以用 cat /proc/meminfo | grep Huge 查看 後來嘗試改用xmr-stak-cpu, (https://github.com/fireice-uk/xmr-stak-cpu) 同樣設定hugepages為256, 速度大概是491H/s, 更改config.txt中把第一個core使用的cache加倍, (因為他一個core只會用2M,這顆CPU有15M) 速度會變為536H/s。 我試過把第二個core的cache也加倍, (想說上面的設定才用了14M,還有1M可以用) 結果反而變慢XD 看起來xmr-stak-cpu的效率是比cpuminer-multi好很多, 但是我一開始在complie的時候不知道是哪裡出錯, (因為一直少套件,邊make邊安裝,可能是裝到舊版的XD) 第一台電腦compile好的只有24XH/s, 後來試了同樣規格的另外一台機器, 發現有500多,才把另外一台機器compile好的拿去第一台用@@ # 順便補充一下compile過程要安裝的套件 # Ubuntu 系統可以直接參考 leftc 的教學 # https://lafudoci.gitbooks.io/monero-xmr/content/cpu-mining-sample.html # fedora 22會需要安裝套件有(這依照一開始安裝系統的選擇有差別): # yum group install "Development Tools" # yum install cmake gcc-c++ openssl-devel libmicrohttpd-devel 不過現在有個問題就是不知道要怎麼把他丟到背景去跑@@ 我加上&符號都會直接終止,這有解嗎? #補充: 用screen指令可以新開一個shell丟進去跑,用 Ctrl+a => d 回到原本shell ※ 引述《nhnc (nhnc)》之銘言: : 因為手邊有幾台閒置電腦,又不需要付電費, : 所以昨天開始研究挖礦這回事QQ : 因為我的電腦只有CPU是 Intel i7 5930k (OC 4.5 GHz), : 顯示晶片是主機板內建, : 所以就找適合的CPU挖礦方式。 : 一開始是用minergate挖(Monero)XMR, : 他預設副挖是FantomCoin(FCN), : 但我發現效率實在太低了, : 雖然圖形介面顯示的速度是 320H/s, : 但我用三台電腦挖一整天,只有 0.005 XMR, : 換算下來平均一台的速度只有27H/s, : 但是過程中我有觀察CPU使用率的確是600%沒錯(六核心)。 : 後來想不知道會不會是軟體的問題,就想換一個試試看。 : 我用另一台Intel i7 3930k (OC 4.5 GHz)的電腦測試, : 完全依照https://www.monero.how/tutorial-how-to-mine-monero的教學, : 參考"Mining Monero on Fedora 24 and above"那一段完全照做, : 從下載到compile好程式都沒問題(我的OS是Fedora 17), : 未更動configure和其他任何檔案,也申請好mymonero的錢包, : pool就選擇依照上述網頁範例的"pool.minexmr.com:4444"開始跑, : 但是過程中卻不斷的出現 : Stratum connection timed out : Stratum connection interrupted : 雖然每個job完成時顯示的速度都有330H/s左右, : 但是我在http://minexmr.com/#worker_stats : 看到的平均速度只有30H/s左右, : 我懷疑timed out的原因可能跟防火牆有關, : 我查到minexmr.com有支援很多不同的port, : 因此我改用pool.minexmr.com:80來跑, : 的確就沒有在看到timed out跟interrupted的訊息了, : 但是,雖然每個job完成時顯示的速度約328H/s, : 但我在worker_stats看到的平均速度仍然只有225H/s, : 不知道有沒有高手可以幫我猜看看問題到底在哪? : 非常感謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.228.78.189 ※ 文章網址: https://www.ptt.cc/bbs/DigiCurrency/M.1498318055.A.286.html
acebruce: 推 06/24 23:34
dust1031: 感謝分享.. 06/24 23:38
dust1031: 好想看你的config設定..i5-6500 4460 i74770 各種不同.. 06/24 23:51
edisonhello: 我個人如果有東西要背景跑都是開tmux啦 可以試試 06/24 23:53
edisonhello: 倒是不知道還有&這方法 06/24 23:53
expiate: 裝tmux試試,不然用screen也可以 06/24 23:54
nhnc: 我目前只試了cpu_threads_conf,其他都defult還沒研究XD 06/24 23:56
nhnc: 用screen果然可以,感謝幫忙! 06/24 23:59
OPisgood: 推 沒注意到cache大小跟win環境下要用系統管理員開.. 06/25 00:02
OPisgood: 這樣可以跑到650H/S 差有夠多 Orz 06/25 00:03
leftc: 感謝詳細推 06/25 00:07
nhnc: 剛剛試了一下config的其他設定,只有use_slow_memory有影響 06/25 00:31
nhnc: 設定always會變慢,其他三個選項沒差,其他還有一些網路傳輸 06/25 00:32
nhnc: 的設定明顯不會影響計算速度的就沒嘗試了 06/25 00:32
leo102171: 可以請教一下xmr-stak-cpu怎麼設定嗎? 06/25 00:53
leo102171: 我現在1800X 給他7個線程跑最大只有400H/S 06/25 00:54
dust1031: cache怎麼設定加倍的? 06/25 00:57
nhnc: 8 core/ L3=16M預設剛好用完阿,為何只跑7 core? 06/25 00:57
config.txt/cpu_threads_conf的設定部分: "cpu_threads_conf" : [ { "low_power_mode" : true, "no_prefetch" : false, "affine_to_cpu" : 0 }, { "low_power_mode" : false, "no_prefetch" : false, "affine_to_cpu" : 1 }, { "low_power_mode" : false, "no_prefetch" : false, "affine_to_cpu" : 2 }, { "low_power_mode" : false, "no_prefetch" : false, "affine_to_cpu" : 3 }, { "low_power_mode" : false, "no_prefetch" : false, "affine_to_cpu" : 4 }, { "low_power_mode" : false, "no_prefetch" : false, "affine_to_cpu" : 5 }, ], low_power_mode設定為true表示加倍使用, 以i7-5930k來說,他有6 core,L3=15M,一個core只會用2M, 所以至少有一個core可以給他double cache。 affine_to_cpu就表示要設定的core編號 no_prefetch我嘗試沒差別。 除了config.txt,其他的compiler options我都沒動,那些我也不懂@@ :wq
leo102171: 因為我1800X從1線程試到16線程發現跑7線程最快...... 06/25 01:04
dust1031: 感謝^_^ 06/25 01:07
nhnc: 不知道是不是不能剛好用完L3? 要留一點給CPU做其他事 06/25 01:07
leo102171: 但是我的最快也只有400多H/S 還是很慢...... 06/25 01:08
leo102171: 然後其實我CPU挖XMR,同時GPU在挖ETH 06/25 01:08
nhnc: 我記得之前爬文有看過說同時挖至少要留一core,忘了是哪篇 06/25 01:10
dust1031: 反覆看了config 我也來分享一下我的.. 06/25 01:29
dust1031: i54460 只開3c 偶數c 1.3 false 2 true 06/25 01:31
dust1031: affine_to_cpu" : 0 }, 在第一行 跟在最後一行也是有差 06/25 01:36
dust1031: 順序的問題 not sure 06/25 01:37
nhnc: 你如果說的是 double cache在core 0或1或2有差是有可能 06/25 01:39
nhnc: 設定檔寫得前後順序不會有差吧XD 06/25 01:40
dust1031: 所以說不 確定 哈哈 長期下來應該沒差,不過我基本不 06/25 01:49
dust1031: 開 06/25 01:49
jixian: github要怎麼下載呀,我直接download zip 裡面都沒有exe 06/25 02:18
jixian: 檔 06/25 02:18
nhnc: 你是windows還是linux系統? 06/25 02:27
jixian: windows的~ 06/25 02:27
nhnc: 下載xmr-stak-cpu-win64.zip 06/25 02:29
jixian: 我剛剛有找到這個,不過google會擋 06/25 02:30
nhnc: 因為會有人把殭屍電腦用來挖礦吧,所以chrome會檔,防毒也會 06/25 02:32
jixian: 之前要試multi也是被google擋下來...還有什麼wolf的也是 06/25 02:33
nhnc: 當然,像NOD32就直接把這些叫做CoinMiner.BT木馬程式XD 06/25 02:34
jixian: 喔喔了解 我用edge下載就沒問題了 06/25 02:42
jixian: 感謝 06/25 02:42
jixian: 在問個 http port要怎麼設定跟使用啊? 06/25 03:16
leo102171: 我找到問題了,是memory alloc的問題 06/25 03:35
leo102171: 現在我8線程全開最高可以到570H/S 06/25 03:35
leo102171: 然後我線程設定打開no_prefetch"似乎"真的會增加5% 06/25 03:52
leo102171: 是說,在Windows下,要怎麼看出16執行續哪8個是真實的? 06/25 03:55
jixian: 大家是用什麼池呀?我剛剛用nano,查地址的時候感覺好像是 06/25 04:17
jixian: 連到別人的@@ 06/25 04:17
a1379: R5 1600 只能開到7線程... 06/25 09:11
tomsawyer: 02468101214是真的 06/25 09:26
er230059: Win:用0 2 4 8 核心, Linux:用0 1 2 3 06/25 10:14
nhnc: nano是什麼池? 06/25 10:54
JoyRex: https://nanopool.org/ 這個池啊!DCR我就真的不熟了 06/25 11:10
JoyRex: DCR的池我不熟,有推薦的嗎? 06/25 11:10
dryob: suprnova coinmine 06/25 11:44
leo102171: 哈哈,我現在是用1 3 5-15,這樣也可以跑570H/S 06/25 15:32
leo102171: 是說dwarfpool的XMR支付門檻是多少啊,英文好差,是0.1 06/25 15:59
leo102171: 嗎? 06/25 15:59
mimihalo: 0.1 不過每次要扣0.01tx fee 06/25 17:34
john801110: leo大要不要測試一下0到15全開 06/25 19:10
dastania: Invalid config file. Missing value "nicehash_nonce" 06/25 19:18
dastania: 有人遇過嗎,找不到config裡有關nicehash_nonce的.. 06/25 19:18
dust1031: "nicehash_nonce" : false, 06/25 19:24
dastania: 找到了,一開始直接複製了config沒注意到有更新了 06/25 19:27
leo102171: 0-15全開叫做0H/S外加拖累GPU挖的ETH速度 06/26 00:03
今天又做了一些嘗試,不過沒結果,看有沒有人可以一起討論一下。 xmr-stak-cpu的defult設定是每個core使用2M的cache, 但是如果剛好 6 core / 12M的CPU,設定6 core同時跑, 也就是剛好把cache用完的情況下反而會變慢。 所以只能跑 5 core。 於是我就想,如果可以更改defult每個core使用的cache量, 或許可以跑5 core,每個core使用2.2M之類的設定。 我grep了一下,找到在crypto/cryptonight.h中, 有個define MEMORY 2097152的設定, 但是我只要更動這個值,無論改大或改小重新compile, 最後執行的時候都會出現 " Cryptonight hash self-test failed. This might be caused by bad compiler optimizations. " 但是我找不到這個self-test原始碼在哪, 也不知道更改這個設定值有沒有用, 有人有什麼建議嗎? ※ 編輯: nhnc (36.224.113.9), 06/26/2017 23:49:52