【マイナー必見】ソロマイニングに対応したよ【高速化Part5】

採掘

57 Res. 0.13146413 MONA 59 Fav.

最新版(KlausT-8.21-mod-r17) >>1
https://1drv.ms/u/s!Aud1FauQ46vHh295NYbLOB2bQlOt
ソースはこちら
https://1drv.ms/u/s!Aud1FauQ46vHh255NYbLOB2bQlOt

1 :名無し名誉名人教士:2018/10/30 22:32:44  0.10121324MONA/3人

ソロマイニングに対応したよ~♪(Turing、Volta、Pascal、Maxwell、Kepler、Fermi対応、FermiはCUDA8のみ)

KlausT-8.21-mod-r17
https://1drv.ms/u/s!Aud1FauQ46vHh295NYbLOB2bQlOt
ソースはこちら
https://1drv.ms/u/s!Aud1FauQ46vHh255NYbLOB2bQlOt

2 :名無し名誉名人教士:2018/10/30 22:32:56  0MONA/0人

前スレ
【マイナー必見】ソロマイニングに対応したよ【高速化Part4】
https://askmona.org/9245
前々スレ
【マイナー必見】ソロマイニングに対応したよ【高速化Part3】
http://askmona.org/5596
前々々スレ
【マイナー必見】ソロマイニングに対応したよ【高速化Part2】
http://askmona.org/4673
前々々々スレ
【マイナー必見】Lyra2REv2を高速化したよ
http://askmona.org/4314

3 :名無し名誉名人教士:2018/10/30 22:33:05  0.00114114MONA/1人

cpuminerも高速化してみたのでアップ(Lyra2REv2のみ高速化)

cpuminer mod-r8
https://1drv.ms/u/s!Aud1FauQ46vHhxwfOL0Uqaj_Ks4D

4 :名無し名誉名人教士:2018/10/31 06:20:17  0MONA/0人

前スレより
Lyra2REv2 ハッシュレート考察
GTX1060(1280コア、Boost 1847MHz)で30.4MH/sだったので、
GTX1080Ti:30.4MH/s×(3584/1280)×(1582/1847)=72.9MH/s
GTX1080:30.4MH/s×(2560/1280)×(1733/1847)=57.0MH/s
GTX1070Ti:30.4MH/s×(2432/1280)×(1683/1847)=52.6MH/s
GTX1070:30.4MH/s×(1920/1280)×(1683/1847)=41.6MH/s
GTX1060(6GB):30.4MH/s×(1280/1280)×(1708/1847)=28.1MH/s
GTX1060(3GB):30.4MH/s×(1152/1280)×(1708/1847)=25.3MH/s
GTX1050Ti:30.4MH/s×(768/1280)×(1392/1847)=13.7MH/s
GTX1050(3GB):30.4MH/s×(768/1280)×(1518/1847)=15.0MH/s
GTX1050(2GB):30.4MH/s×(640/1280)×(1455/1847)=12.0MH/s

5 :名無し名誉名人教士:2018/10/31 06:20:54  0MONA/0人

>>4 つづき
GTX980Ti:30.4MH/s×(2816/1280)×(1075/1847)=38.9MH/s
GTX980:30.4MH/s×(2048/1280)×(1216/1847)=32.0MH/s
GTX970:30.4MH/s×(1664/1280)×(1178/1847)=25.2MH/s
GTX960:30.4MH/s×(1024/1280)×(1178/1847)=15.5MH/s
GTX950:30.4MH/s×(768/1280)×(1188/1847)=11.7MH/s

GTX750(512コア、Boost 1137MHz)で7.64MH/sだったので、
GTX750Ti:7.64MH/s×(640/512)×(1085/1137)=9.11MH/s
GTX750:7.64MH/s×(512/512)×(1085/1137)=7.29MH/s

6 :名無し名誉名人教士:2018/10/31 06:21:41  0MONA/0人

>>5 つづき
NVIDIA TITAN Xp:30.4MH/s×(3840/1280)×(1582/1847)=78.1MH/s
NVIDIA TITAN X:30.4MH/s×(3584/1280)×(1531/1847)=70.6MH/s
GTX Titan X:30.4MH/s×(3072/1280)×(1075/1847)=42.5MH/s

GT710(192コア、954MHz)で1.06MH/sだったので、
GTX Titan Z:1.06MH/s×(5760/192)×(876/954)=23.5MH/s
GTX Titan Black:1.06MH/s×(2880/192)×(980/954)=42.5MH/s
GTX Titan:1.06MH/s×(2688/192)×(876/954)=13.6MH/s

7 :名無し名誉名人教士:2018/10/31 06:22:26  0MONA/0人

>>6 修正
GTX Titan Black:1.06MH/s×(2880/192)×(980/954)=16.3MH/s

8 :名無し名誉名人教士:2018/10/31 06:22:55  0MONA/0人

>>6 つづき
GT710:1.06MH/s
GT720:1.06MH/s×(192/192)×(797/954)=885kH/s
GT730:1.06MH/s×(384/192)×(902/954)=2.00MH/s
GT740:1.06MH/s×(384/192)×(993/954)=2.21MH/s
GTX760:1.06MH/s×(1152/192)×(1033/954)=6.89MH/s
GTX770:1.06MH/s×(1536/192)×(1085/954)=9.64MH/s
GTX780:1.06MH/s×(2304/192)×(900/954)=12.0MH/s
GTX780Ti:1.06MH/s×(2880/192)×(928/954)=15.5MH/s

9 :名無し名誉名人教士:2018/10/31 06:23:22  0MONA/0人

>>8 つづき
GT630:1.06MH/s×(384/192)×(902/954)=2.00MH/s
GT640(旧):1.06MH/s×(384/192)×(900/954)=2.00MH/s
GT640(新):1.06MH/s×(384/192)×(1046/954)=2.32MH/s
GTX650:1.06MH/s×(384/192)×(1058/954)=2.35MH/s
GTX650Ti:1.06MH/s×(768/192)×(928/954)=4.12MH/s
GTX660:1.06MH/s×(960/192)×(1033/954)=5.74MH/s
GTX660Ti:1.06MH/s×(1344/192)×(980/954)=7.62MH/s
GTX670:1.06MH/s×(1344/192)×(980/954)=7.62MH/s
GTX680:1.06MH/s×(1536/192)×(1058/954)=9.40MH/s
GTX690:1.06MH/s×(3072/192)×(1019/954)=18.1MH/s

10 :名無し名誉名人教士:2018/10/31 06:29:25  0MONA/0人

>>9 つづき(新規)
RTX2080Ti(PL50、4352コア、1220MHz)で78.5MH/sだったので、
RTX2080Ti:78.5MH/s×(4352/4352)×(1545/1220)=99.4MH/s
RTX2080:78.5MH/s×(2944/4352)×(1710/1220)=74.4MH/s
RTX2070:78.5MH/s×(2304/4352)×(1620/1220)=55.2MH/s
Titan V:78.5MH/s×(5120/4352)×(1455/1220)=110.1MH/s

11 :過疎二段:2018/10/31 16:35:15  0MONA/0人

sha256は最適化してますか?

12 :名無し名誉名人教士:2018/10/31 18:05:29  0MONA/0人

>>11
高速化(最適とは言っていない)をしているのは、Lyra2REv2、Neoscrypt、Yescrypt、Lyra2Z330(Lyra2Zoin)。
とりあえず動くようにしたのが、Lyra2Z(Lyra2Z330のパラメータ違いとして実装)。
それ以外は手をつけていない。(Cuda8でFermi向けのコンパイルエラーが出ないように修正した程度)

13 :Xubuntuマイナーさん:2018/10/31 22:13:04  0MONA/0人

いつもご対応ありがとうございます。

前のスレッドでも書かれていた方がいましたが、r17でもLinuxでビルドすると、エラーが出ます。

Makefileの64行目の末尾のバックスラッシュを削除するとビルドが通るようになるので、どこかのタイミングで修正いただけるとありがたいです。

14 :名無し名誉名人教士:2018/10/31 22:56:23  0MONA/0人

>>13
おっと、忘れてた…

15 :名無し一級:2018/11/01 19:02:25  0MONA/0人

KlausT-8.21-mod-r17とcpuminer mod-r8のおかげでいい感じに採掘できてます



7600K&RTX2070でシステム全体の消費電力は300Wくらいです。

16 :名無し名誉名人教士:2018/11/02 09:06:01  0MONA/0人

>>3 修正
cpuminer mod-r9 が最新だったね。忘れてたよ…(前スレ >>255)

https://1drv.ms/u/s!Aud1FauQ46vHh0R5NYbLOB2bQlOt

更新履歴(mod-r8⇒mod-r9)
・neoscryptの高速化
・yescryptでSSE2を使う

17 :名無し名誉名人教士:2018/11/05 08:44:09  0MONA/0人

>>16 にバグがあったので報告。

cpuminer mod-r9でneoscryptを掘る場合、実際のハッシュレートが表示の半分になる問題があります。内容は以下のとおり。
・neoscryptでは2ハッシュまとめて演算している。
・その演算の途中、1ハッシュ目と2ハッシュ目を取り違えるバグが内包している。
・また、1ハッシュ目と2ハッシュ目で同じnonce値で計算するバグを内包している。
・前述2つのバグにより、1ハッシュ目と2ハッシュ目を同一の計算となり(取り違えがなかったことになる)、2ハッシュ分の演算で1ハッシュしか計算していないことになる。

また、それとは別に、ウィルスチェックに引っかかる問題もある。
ウィルスバスター等のウィルス対策ソフトはもちろん、Windows Defencerでも引っかかるんだよね…

neoscryptのバグフィックスはするとして、ウィルスチェックの問題はどうするか…

18 :名無しさん:2018/11/06 15:08:20  0MONA/0人

マイニングアプリはウイルス扱いされるのが当たり前みたいな感じなので
フォルダごとウイルスチェックを除外設定にしてます

19 :名無しさん:2018/11/09 12:00:12  0MONA/0人

cpuminer mod-r9って64bitしかないですか?使えるPCが32bitなので。
あとbitzenyが掘れるccminerの32bit版も探してます。
よろしくお願いします。

20 :名無しさん:2018/11/09 16:14:53  0MONA/0人

↑すみません。32bit版はr17に同梱されてましたね。失礼しました。

21 :名無しさん:2018/11/09 16:31:17  0MONA/0人

度々すみません。r17のccminer-cuda80-x86をバッチファイルから実行すると「正しくないイメージ」でエラーが出ます。内容は「vcruntime140.dllはwindows上では実行できないか、エラーを含んでいます」です。

動かしている環境はwindows7(32bit)です。ご教授お願いします。

22 :猿股一級:2018/11/09 19:11:25  0MONA/0人

私のところでもwindows7(32bit)で同じ表示が出て実行できませんでした。

フォルダに同梱されているvcruntime140.dllが64bit用のやつかも?
詳しい事は分かりませんが。

↓↓ここを参考に
【コンピューターにVCRUNTIME140.dll がないため、プログラムを開始できません。】
https://blog.halpas.com/archives/10918

Microsoftダウンロードセンターで『Visual Studio 2015 の Visual C++ 再頒布可能パッケージ(32bit版)』をダウンロードしてインストールします。
ファイル名"vc_redist.x86.exe"です。

C:\Program Files\Microsoft Visual Studio\Installer\vcruntime140.dll
のファイルをccminerと同じフォルダにコピーします。

23 :猿股一級:2018/11/09 19:11:37  0MONA/0人

この手順で実行すると動きました。

出来るかどうかお試し下さい。
(今やってみたところで、なんか全然掘れてないんですけど。。)

24 :猿股一級:2018/11/09 20:15:02  0MONA/0人

bitzenyちゃんと掘れましたよ。-a yescryptr8で。

25 :猿股一級:2018/11/09 20:25:05  0MONA/0人

Kotoも掘れました、 -a yescryptで。
ま、cpuminerの方が良いですね、しょぼいGPUなので。。

26 :名無しさん:2018/11/09 22:20:46  0MONA/0人

>23
たぶん同梱されているのは64bitなのかと思い、古いminer に入っているものを上書きしたら動くようになりました(๑¯◡¯๑) しょぼいGPUですが遊ばせておくよりは、と思いこき使ってやりますヽ(≧▽≦)ノ

27 :Lostboyさん:2018/11/12 09:10:20  0MONA/0人

すれ違いかもだけど、新しいマイニング機がでてからほんと掘れなくなったなぁ…
今までの半分以下になったわ

28 :名無し名誉名人教士:2018/11/12 09:56:14  0MONA/0人

今度はLyra2RE、Lyra2Zについて最適化をやってみようと思う。
Lyra2REのパラメータは(TimeSpan,nRows,nCols)=(1,8,8)
Lyra2Zのパラメータは(TimeSpan,nRows,nCols)=(8,8,8)
なので、ほとんど同じ最適化手法でいける。
メモリ使用量はnRows×nCols×12×sizeof(uint64_t)=6,144Byte
4分割しても1,536Byteなので、すべてをSharedMemoryに乗せるのは無理。
SharedMemoryに半分のせ、残りをL1キャッシュに頼ることはできる…かな?この場合、SharedMemoryにアクセスしている間にL1キャッシュに先読み(Prefetch)させれば、
SharedMemory:1,536Byte/Core÷2×128Core/SM=96kB/SM (<=96kB/SM)(2ndGenMaxwell,Pascalの場合)
L1キャッシュ:1,536Byte/Core÷2÷8(nRows)×128Core/SM=12kB/SM (<=24kB/SM)(Maxwellの場合)
となり、一応できそうな気がする。

29 :名無し名誉名人教士:2018/11/12 10:08:24  0MONA/0人

>>28 続き
1stGenMaxwellの場合SharedMemoryは64kBなので、少し足りないかな?
こちらはL2キャッシュが潤沢なので、すべてL2キャッシュ経由で確保できる…かな?
L2キャッシュを十分使うため、スレッド数を制限にSharedMemoryを確保する。無駄にしないようにSharedMemoryで1/4だけ使用し、残りをL2キャッシュ期待でGlobalMemoryに確保する。もちろんL1の先読みキャッシュもつけて。
SharedMemory:1,536Byte/Core÷4×128Core/SM=48kB/SM (<=64kB/SM)(1ndGenMaxwellの場合)
L1キャッシュ:1,536Byte/Core×3/4÷8(nRows)×128Core/SM=18kB/SM (<=24kB/SM)(Maxwellの場合)
GlobalMemory:1,536Byte/Core×3/4×640Core/GPU=720kB/GPU(<=2MB/GPU:L2キャッシュ)(GTX750Tiの場合)

30 :名無し名誉名人教士:2018/11/12 10:20:50  0MONA/0人

>>28 続き
Keplerの場合SharedMemoryは48kB、L1キャッシュ16kBと少ないため、
SharedMemoryは1/8しか確保できない。
L1キャッシュを期待できるが、L2キャッシュはヒット率が微妙な気も…
SharedMemory:1,536Byte/Core÷8×192Core/SM=36kB/SM (<=48kB/SM)(Keplerの場合)
L1キャッシュ:1,536Byte/Core×3/8÷8(nRows)×192Core/SM=13.5kB/SM (<=16kB/SM)(Keplerで3個先読みとした場合)
GlobalMemory:1,536Byte/Core×7/8×2304Core/GPU=3024kB/GPU
L2キャッシュヒット率(概算):1536kB/GPU÷3024kB/GPU=50.8%

31 :名無し名誉名人教士:2018/11/12 10:27:56  0MONA/0人

>>30 続き
Fermiの場合SharedMemoryは48kB、L1キャッシュ16kBと少ないが、SMあたりのコア数が32/48のため、多少の無茶ができそう。
SharedMemory:1,536Byte/Core÷4×48Core/SM×2(Warp数)=36kB/SM (<=48kB/SM)(Fermiの場合)
L1キャッシュ:1,536Byte/Core×3/4÷8(nRows)×48Core/SM×2(Warp数)=13.5kB/SM (<=16kB/SM)(Fermiの場合)
GlobalMemory:1,536Byte/Core×3/4×512Core/GPU×2(Warp数)=1152kB/GPU
L2キャッシュヒット率(概算):768kB/GPU÷1152kB/GPU=66.7%

32 :名無し名誉名人教士:2018/11/12 10:35:29  0MONA/0人

プランはできた。
Maxwell(2ndGen)以降⇒SharedMemory 1/2モード
Maxwell(1ndGen),Fermi⇒SharedMemory 1/4モード
Kepler⇒SharedMemory 1/8モード

あとは、机上の計算どおりに行けばいいけど…
ってか、これだけモードを作るのは、かなり面倒くさい…

33 :はるまき六段教士:2018/11/13 00:37:47  0MONA/0人

KotoがSapling Upgradeでヘッダーが変更されるので、現在リリースされているGPUマイナーでは採掘できなくなりますよー

(ご対応は名無し名誉名人さんにおまかせしますw)

34 :名無し名誉名人教士:2018/11/13 09:18:16  0.02MONA/1人

>>33
えっ、掘れなくなるの?
変更点をkwsk

35 :はるまき六段教士:2018/11/13 17:23:12  0MONA/0人

>>34
私が説明しても要領を得ない説明になりそうなのでこちらのコミットログを見ていただければ幸いです
https://github.com/KotoDevelopers/cpuminer-yescrypt/commit/b0760941b20702137e2c24ab2a683ec5fb99cb44

36 :はるまき六段教士:2018/11/13 17:37:14  0MONA/0人

・ブロックヘッダサイズを80から112へ(finalSaplingRootと呼ばれる値を追加)
・stratum notifyの変更(https://en.bitcoin.it/wiki/Stratum_mining_protocol#mining.notify で10番目としてfinalSaplingRootの情報を受け取る

これらの変更でマイナーは修正可能です。

37 :はるまき六段教士:2018/11/13 17:42:04  0MONA/0人

連投失礼
KotoのDevのWOさんがGistを作ってくださっていました
https://gist.github.com/wo01/fefedf586610680ad44fa32078149536

38 :梯子段三級:2018/11/15 23:38:51  0MONA/0人

数日前からマイニング始めた70歳過ぎのフーテン老人

DELL precision-t5610 Xeon E5-2665 x2 Mem32GB Win10
GPU Quadoro K2200
ccminer-KlausT-8.21-mod-r17を使わせて頂いて 8~9Mh/sでMona掘ってみた。

この数字が多いのかショボイのかは、新米ゆえによく判らん。

39 :梯子段三級:2018/11/17 20:11:51  0MONA/0人

数日前からマイニング始めた70歳過ぎのフーテン老人

Quadoro K2200ではあまり成績が良くないとの情報がネット上にあったし、
Win10のPCがソフトの載せすぎで重いので、以前に自作したpcにUbuntuを入れて再度挑戦してみた。
CPU Intel G4620 MEM16GB Ubuntu 18.04.1 amd64
GPU GTX1050ti x1
Ubuntuはサーバーではなく普通のヤツを最小インストールで準備
ccminer-KlausT-8.21-mod-r17を使わせて頂いて16〜17Mh/sでMonaが掘れてる。
やはりGPUの選定が重要なんだと実感したが、年金生活者なのでもう当分は、新しいGPUは買えない。
どこかに落ちてないかな。


40 :鰯二段:2018/11/17 22:16:29  0MONA/0人

最近はFermi世代のカードでもHARD OFFのジャンクかごに入ってていることが多くなりましたね
まぁ世間話は自作スレで行うのがよろしいかと

41 :okoto一級:2018/11/20 23:52:36  0MONA/0人

Kotoのyescryptの入力値112バイトに変更で影響があるのはおそらく
最初のSHA256とPBKDF2_SHA256、最後のHMAC_SHA256の処理だけですかね。
80バイトに依存している部分がありそうですが、対応できないことは無さそうなのかな。
SHA256の部分だけならば処理速度への影響もほとんど無いはず。

ブロックバージョン5でKoto独自の仕様になっているので
汎用マイナーとしては今後他のコインがバージョン5になったときの対応を考える必要があるかも。

42 :名無し二段:2018/11/21 19:19:40  0MONA/0人

https://imgur.com/rCdcNEW

古いマイナーだと100MH/sくらいしか出なかったけど、
最新版にしたら130MH/sくらい出るな

43 :名無し名誉名人教士:2018/11/21 20:09:55  0MONA/0人

>>42
画像アップはこんな感じ…

にしても、すごいなwww

44 :名無し四段教士:2018/11/27 07:43:45  0MONA/0人

うーん。相場は下がっているのに掘れる量が激減してて草。

45 :名無しさん:2018/11/27 11:42:12  0MONA/0人

すいません、過去ログで探してもなかったんで質問してもいいですか??
"the launch timed out and was teminated"というエラーが5分置きぐらいに出てマイニングが全然できない感じなのですが分かる方いらっしゃいますか?

46 :名無し名誉名人教士:2018/11/27 11:52:47  0.00228228MONA/2人

Lyra2Zの最適化案はうまくいかなかった。現状のままのほうが速い…

で、つぎはKoto対応か…
ソース読む限り、以下の対応が必要そうだ。
・saplingの追加
https://github.com/KotoDevelopers/cpuminer-yescrypt/commit/73bcec72d700c7e48e2a892d57ba7d4bda5ab273
https://github.com/KotoDevelopers/cpuminer-yescrypt/commit/7e78d84986a1325ad10a8b38b386e11573bb71a8
をマージする?
・Yescryptの112バイト入力対応
変更前:data[0]~data[18]+nonce
変更後:data[0]~data[18]+nonce+data[20]~data[27]
それにともなうsha256部分のデータ数変更
・Yescryptの2個目のnonce報告の変更
変更前:1個目⇒data[19]、2個目⇒data[21]
変更後:1個目⇒data[19]、2個目⇒data[29]

47 :名無し名誉名人教士:2018/11/27 11:53:15  0.00228228MONA/2人

>>46つづき
あと、掘るときは--no-getworkオプションが必要かな?その場合プール(getwork使用)はどうやって対応するんだろう…

48 :ジョンタイター一級:2018/11/27 21:57:59  0MONA/0人

年末年始にかけて、追加投資でもしようと試行錯誤してる最中に相場下がっていて草。

49 :名無し名誉名人教士:2018/12/01 07:57:11  0MONA/0人

Kotoの動作確認をどうやってやればいい?
112バイトに切り替わってからのほうがいいのか?

50 :はるまき六段教士:2018/12/01 12:19:45  0MONA/0人

>>49
testnetではSapling対応していますがプールがないのでちょっとお待ちください…(準備します

51 :はるまき六段教士:2018/12/01 13:05:47  0MONA/0人

>>49
(協力:koto-pool.workさん)
http://51.15.229.223:8080/stats

52 :名無し名誉名人教士:2018/12/01 21:00:56  0MONA/0人

>>51
https://github.com/KotoDevelopers/cpuminer-yescrypt/releases
でv3.0をダウンロードしてhttp://51.15.229.223:8080/で試してみたが、boooooが出る…なんでだろう?

53 :WO初段:2018/12/01 21:27:56  0MONA/0人

>>52
どの版をお使いでしょうか.うちの環境ですと,
Win64bit版,Mac版,Linux buildを試しており,単純に
minerd -o stratum+tcp://51.15.229.223:3032 -u kmNQZ6HERZfon4xeQq4WqneB4YwmGxqW6zy -p x
とかで掘れております

54 :名無し名誉名人教士:2018/12/02 09:42:22  0MONA/0人

>>53
-aなしでやっていたんですね?
当方は
minerd -a yescrypt -o stratum+tcp://51.15.229.223:3032 -u km…アドレス… -p x
でやってました。

…ってことは、yespowerで掘れて、yescryptでは掘れないってこと?
そうすると、GPUではかなり難しいような気が…

55 :WO初段:2018/12/02 10:39:04  0.00454519MONA/1人

>>54
yescrypt.cの方の修正を忘れていましたのでさきほど修正しました(inputサイズが80固定だったのを引数で取るように)

Saplingでもyescrypt(= yespower 0.5)のままです.

バイナリが必要でしたらしばらくお待ちください.
3.1としてリリースします.

56 :WO初段:2018/12/02 11:49:54  0MONA/0人

v3.1をリリースしました

57 :名無し四段教士:2018/12/09 01:03:18  0MONA/0人

>>42
>>43
すげー、GTX1080の2倍以上だ! GTX1080の倍の値段で買えたら良いのですが・・・。

お気に入り

新規登録してMONAをもらおう

登録すると、投稿したり、MONAをもらったりすることができます。質問したり、答えたりしてMONAを手に入れてください。

新規登録ログイン