Ethash:イーサリアムをマイニングするときの仕組み

イーサリアム:イーサリアムをマイニングするときの仕組み

今日、ビデオカードでのイーサリアムマイニングが標準であり、これまでのところ、マイナーは、特殊なハードウェアソリューション(FPGAやASICなど)でイーサリアムマイニングアルゴリズムを起動するための大きな飛躍を遂げていません。ネットワーク上にはアシックスがありますが、ビットコインほど大きな利点はありません。

多くの記事やフォーラムで、Ethash用のASICの開発はメモリの問題であると説明されています。

ここでは、イーサリアムの緊密なメモリバインディングがどこから来ているのか、ETHマイニング用の次世代のカスタムマイニングデバイスがどのように見えるかについて説明します。

ここでは、イーサリアムの緊密なメモリバインディングがどこから来ているのか、ETHマイニング用の次世代のカスタムマイニングデバイスがどのように見えるかについて説明します。

Ethashと呼ばれるEthereumマイニングアルゴリズムのより技術的でプログラマー向けの説明については、EthereumGitHubリポジトリのEthashページを参照してください…。

プルーフオブワークの簡単な説明

プルーフオブワークを使用してマイニングする場合、マイナーは解決策(1回限りの数値–「ノンス」と呼ばれます)を探します。これは、ハッシュされると、事前定義されたターゲットしきい値よりも小さい出力値を提供します。

各通貨のハッシュ関数は暗号化されているため、目標のしきい値制限を満たす1回限りの数値(「ノンス」)をリバースエンジニアリングまたはリバース計算する方法はありません。

代わりに、マイナーはハッシュをできるだけ早く「推測して検証」し、暗号通貨ネットワーク全体で有効な1回限りの番号を見つける最初のマイナーであることを期待する必要があります。したがって、彼らは新しいブロックを見つけるでしょう。

Ethashアルゴリズムの仕組み

DAGファイル

Ethashアルゴリズムは、疑似ランダムに依存しています。 ブロックチェーンの現在の長さで初期化されたデータセット。

これはDAGファイルと呼ばれ、30,000ブロックごと(または約5日ごと)に復元されます。 2019年9月の時点で、DAGは約3.22 GBであり、ブロックチェーンが成長するにつれてDAGのサイズは拡大し続けます。

DAGを作成する機能はこの記事にはあまり関係ありませんが、DAGの生成について詳しくはこちらをご覧ください。 。

Ethashハッシュアルゴリズムの進捗状況は次のように要約できます。

イーサリアムハッシュアルゴリズムの動作原理

  1. 前処理されたヘッダー–前処理されたヘッダー(最後のブロックから取得)と現在のNonce(現在の 1回限りの番号 )、SHA-3のようなアルゴリズムを使用してミックスの最初の128バイトを作成することと組み合わせて、ここではMix-0と呼びます。
  2. Mixは、DAGから抽出する必要のある128バイトのページを計算するために使用され、「GetDAGPage」ブロックで表されます。
  3. ミックス 結果のDAGページと組み合わされます。これは、「イーサリアム固有の」ブレンディング機能を使用して行われ、ここではミックス1と呼ばれる次のミックスを生成します。
  4. ステップ2と3を64回繰り返すと、64がミックスされます。
  5. Mix 64は後処理されて、より短い32バイトのMixDigestが生成されます。
  6. ミックスダイジェスト 事前定義された32バイトのターゲットしきい値と比較されます (目標しきい値)。ミックスダイジェストがターゲットしきい値以下の場合、現在の非現在の番号(現在のノンス)は成功したと見なされ、イーサリアムネットワークにブロードキャストされます。それ以外の場合、現在の1回限りの数値は無効と見なされ、アルゴリズムは別の1回限りの数値で再開されます(現在の1回限りの数値を増やすか、新しい数値をランダムに選択することにより)。

Ethashがメモリに関連付けられているのはなぜですか?

各ミキシング操作には、DAGからの128バイトの読み取りが必要です(図1、ステップ2を参照)。

1回限りの数値をハッシュするには64ミックスが必要であり、結果として(128バイトx 64)=8KBのメモリ読み取りになります。ランダムアクセス読み取り(各128バイトページはミキシング機能に基づいて疑似ランダムに選択されます)。したがって、次のDAGフェッチは、次のDAGフェッチにつながる可能性が非常に高いため、L1またはL2キャッシュに小さなDAGフラグメントを配置してもあまり役に立ちません。キャッシュの不足。

メモリからDAGページを取得するのはコンピューティングブレンディングよりもはるかに遅いため、ミックスコンピューティングを高速化してもパフォーマンスが向上することはほとんどありません。

Ethashのハッシュアルゴリズムを高速化する最善の方法は、メモリからの128バイトのDAGページのフェッチを高速化することです。

したがって、Ethashアルゴリズムは、メモリに緊密に関連付けられているか、メモリに関連していると見なされます。 、システムメモリ帯域幅がパフォーマンスを制限するため。

実際のハードウェアでメモリ帯域幅の制限に達している

メモリ帯域幅の制限が実際のハードウェアにどのように影響するかの例として、一般的に使用されるビデオカードであるRX590のマイニングパフォーマンスを詳しく見てみましょう。

Ethashハッシュが実際に大量のメモリを必要とする場合、DAGページのサンプリングが実行される唯一のステップである限り、この機器の実際のマイニング速度は理論上の最大ハッシュ速度に非常に近いと予想されます。

この最大理論ハッシュレートは次のように計算できます。

(メモリ帯域幅)/(ハッシュ用に抽出されたDAGメモリ)=理論上の最大ハッシュレート

(256ギガバイト/秒)/(8キロバイト/ハッシュ)=32メガバイト/秒

実際の運用中のRX490の経験的ハッシュは約31メガ/秒です。

この小さな遅延は、システムのメモリ遅延またはその他の高速操作によって簡単に説明できます。したがって、このビデオカードのパフォーマンスは、データハッシュがメモリに対して困難であり、DAGページの選択が速度を制限するステップであるという条件で、期待どおりです。

ビデオカードでの勝利:ETHをマイニングするための次世代のマイニングデバイス

イーサリアムのユーザーマイニング機器が役立つ唯一の方法は、メモリ帯域幅($ /(GB / s)未満またはW /(GB / s)未満)でより経済的またはエネルギー効率が高いかどうかです。

オプション1:高メモリ帯域幅FPGA / ASIC

RX 590を見ると、ビット(カードあたり$ 245 /(256 GB / s))を計算して、ハッシュレートが$ 0.95 / GB / sであることがわかります。

単一のGDDR5チップとの比較(例: Micron EDW4032BABG )、コストは6.83ドル、帯域幅は24 GB /秒ですが、より良い結果が得られます– 0.28ドル/ GB /秒。

したがって、9つのGDDR5チップを備えたインターフェイスよりも独自のチップ(ASICまたはFPGA)を作成できる場合、61.47ドルの価格で216 GB / sのメモリ帯域幅が得られます。

ただし、FPGAまたはASICメモリコントローラ、プリント回路基板、および補助電子機器が必要なため、これは完全なデバイスではありません。

出荷された最終アセンブリ(追加の部品、プロセス、テスト、およびロジスティクスの追加)のコストがRX 590(わずか245ドル)よりも低い場合、ユーザーボードはビデオカードを上回ります。

つまり、より速く、より効率的で、より安価なビデオカードが市場に登場するまでです。

たとえば、 HBMグラフィックカード すでに利用可能です。ただし、5〜10 DDRまたはHBMメモリコントローラーを備えた安価な既製のFPGAまたはASICチップを見つけた場合、または会社が高いメモリ帯域幅を備えた特殊なASICデバイスを作成した経験がある場合は、ハードウェアなしで実行できます。

ただし、この状況では、すでに巨大な市場であるため、独自のビジネスモデルを作成し、代わりにビデオカードを作成するように変更する必要があります。

オプション2:次世代モバイルチップセットを使用する

スマートフォンとモバイル3Dグラフィックスの使用が増えるにつれて、モバイルフレンドリーで高いメモリ帯域幅が見られるようになります。

これは、統合グラフィックプロセッサ(たとえば、 NVidia Tegra X1 )を備えたチップ上のモバイルシステム向けのソリューションになります。 )またはスタンドアロンのモバイルグラフィックプロセッサ(例: PowerVR Series 8XE )、または高帯域幅の専用プロセッサ、または統合メモリを備えたニューラルネットワークに焦点を当てたプロセッサ(たとえば、 Movidius Myriad 2

これらのクラスのデバイスは進化し続け、コスト、電力、メモリ帯域幅が適切な場所に到達すれば、同じボード上に10〜20個のモバイルグラフィックプロセッサまたはVPUを搭載したEthereumカスタムマイナーが見つかる可能性があります。

結論

EthashハッシュアルゴリズムのシーケンシャルDAGページサンプルは、最新のハードウェアのメモリ帯域幅制限に達します。

現在、理論上の最大ハッシュレートは制限されています。

将来のイーサリアム鉱山労働者をどのように見ますか?おそらくASICやFPGAに基づくものではないでしょう。ほとんどの場合、これらは既製のチップ(モバイルGPUまたはVPU)に基づいており、モバイルGPUまたはVPUがより調整されているため、最近のコンピューターでよく見られる従来のビデオカードのフォームファクターには基づいていません。メモリ帯域幅。

この記事は、イーサリアムのマイニングに使用されるプルーフオブワークに基づくEthashプロトコルに関するものです。このようなプルーフオブワークに基づくシステムでは、マイナーは大量の計算を実行して新しいブロックを見つけ、現金報酬を受け取ります。

イーサリアムネットワークがプルーフオブステークに切り替わるとすぐに システム(おそらく2020年以降、イーサリアム2.0またはセレニティフェーズ )、現金報酬は鉱夫ではなくイーサリアムの通貨保有者に与えられるため、イーサリアムの採掘は時代遅れになる可能性があります。

この移行が発生した時点で、2020年1月3日に第1フェーズが開始されると予想されるかどうかはまだ明らかではありません。

推奨される関連記事:

  • NoDevFee(NoFee)–マイナーのコミッションを無効にする方法
  • ATIFlash / ATI WinFlash(BIOSエディター)–ダウンロード
  • OhGodAnETHlargementPill(EthlargementPill)–マイニングGPUNVIDIAのハッシュレートの向上
  • OverdriveNTool(GPUオーバークロックソフトウェア)–ダウンロードして構成
  • RandomXアルゴリズムでMonero(XMR)をマイニングする方法

鉱業
  1. ブロックチェーン
  2. ビットコイン
  3. イーサリアム
  4. デジタル通貨交換
  5. 鉱業