昨日も書きましたが、書きたい話が別にあるんですがRTX3060の話を先に解決しときたいので、こちらをポストします。
主にKAWPOWについてワイが不勉強であったので、昨日ちょっと調べたらあぁコレ使えないかも?という結論に至ったという説明になります。
各説明の内容を確認する為にいつもの動画も貼っておきます。
ethashについて
一昨日ですかね?簡単にアルゴリズムは同じで投げる値は違うという説明をしましたが、DaggerHashimoto=イーサリアムのアルゴリズムはethashになります。
そしてethashの大元は下記のソースコードになります。
つまりマイニングの為のマイナーソフトウェアは複数ありますが、内部的にはランダムな値を作って上記のライブラリーを通すだけなのでソフトウェアが違っても同じ処理が動いています。
ただ、上記公式githubからc++版のソースコードを辿っても何か派生してるプロジェクトが複数あるみたいなのでcpp版はどれが本家なのか?よく分かりません。
X16Rについて
X16Rについては過去の記事で3年前の仮想通貨終焉時にはレイヴン祭があった事は触れていたかと思います。
イーサリアムより高騰する事が多く最後はX16Rのみを掘るように変えたくらいお世話になりました。
ASICというのは1つのアルゴリズムに特化しているので16種のアルゴリズムを利用してASIC耐性を高めていたのがX16Rですが、結局GPUでも特化した調整というのは難しいので扱いに困る子でもありました。
さて動画を見て頂ければハッシュレートが安定せずに上下している事が分かるかと思います。
16種のアルゴリズムの内ブロックに採用されたアルゴリズムによってハッシュレートが上がったり下がったりしているという状況である事が分かります。
そして大事なのは、この16種の中にethashが含まれているという事です。
ワイは先日の記事でethashの計算がCUDAコアに送られてきたらリミッターが動くという動作になっていると書きましたね?
そしてethashは共通の計算である事も↑のethashの項目で説明しましたね?
つまりX16Rもethash部分で制限を受ける対象のアルゴリズムだという事です。
KAWPOWについて
KAWPOWもレイヴンの採用した新しいアルゴリズムです。
X16R→X16RV2→KAWPOW
昨日、この公式?のマイナーのソースコードにワイは辿り着いたのですが、あれ?と思いましたね。
そうイーサリアムのコードが入っています。
で、これも名前が大分変わってるけどX16Rと似た感じなのかなぁ?と思って調べると
KAWPOWというのはイーサリアムで採用予定であったProgPoWを利用したアルゴリズムだと言うことです。
Programmatic Proof-of-Workの略らしいですね。
void help()
{
cout << "kawpowminer - GPU ProgPOW(0.9.3) miner for Zing" << endl
ヘルプオプションの実行部分を見ると、自分でProgPOW(0.9.3)って名乗ってるのも分かりますね。
まぁプログラムなんて低レベル言語は基本無限ループで動くだけなんですが、MinerCLI::executeを実行していてCudaだったらCUDAMiner(libethash-cuda)が動くというオブジェクト指向通りの実装になっているので、CUDAMinerを見ると中でガッツリprogpowが使われているという感じです。
肝心なのがここでも
#include <ethash/ethash.hpp>
とethashの項目で説明したethashのプログラムがリンクされているという事です。
ethminerのソースコードでも上記includeが出てくるのでethash.hppというファイルを配っているのが本家っぽい気がするんですが、どれがc++用公式ライブラリなんですかね?
知ってる人がいたら教えて欲しいですね。
ファイル名でググるとprogpow.hppやhash_types.hppも含まれる下記っぽいですが、確証が持てないです。
https://github.com/chfast/ethash
まぁそれは良しとしてですね、中で動いてるのって結局ethashライブラリのメソッドなんですよね。
一番リミッター発動で怪しいのはハッシュ生成部分でしょうから、ethash::hashとprogpow::hashと2種類使っているみたいで、progpow::hashはリミット対象外としても、ethashアルゴリズムリミッターはKAWPOWにも適用されている可能性が高いと考えるべきな気がします。
これは自分で3070とのハッシュレート差を調べればおおよそ見当は付きそうですが、面倒くさいので調べる気はありません。
誰か3070でKAWPOW掘ると、どの程度出るのか調べてみてね!
コメント