見出し画像

No281 なぜ仮想通貨の計算にGPUが向いているのか?

Nvidia(エヌヴィディア。ヌヴィディアとも)という3DCGの処理チップ(GPU)という製品を作っているメーカがあります。

2022年の10月にはそのメーカの新製品が出荷され、それが出火するというダジャレのような事故が発生しています。

一体何が起きたのでしょうか?
そもそもGPUというのはナニモノなのでしょうか?
GPUというのは仮想通貨のマイニング(仮想通貨の取得を目的に特定の計算を繰り返すこと)によく使われていますが、どうしてGPUなのでしょうか?

今回はこのあたりを解説をします。

1. GPUとは?

GPUというのはCPU(文字が似てますが最初が"C")とは違うものですが、どちらもいわゆる半導体チップです。

GPUというのはGraphic Processing Unitの略称で、主に画面上に表示する3DのCG画面の計算を担当するチップです。

2017年あたりまでは、GPUとはあまり呼ばれず、ビデオカードだとかグラフィックボード(グラボ)といった呼び方をしていました。
主なお客さんはPCでゲームをするエンドユーザで、いわばマニア向けの商品という扱いでした。
ゲーム以外にもCADシステムやグラフィックソフト(イラスト制作や写真補正、動画作成)といったプロユースで利用されてはいますが、大勢はゲームユーザだったと言えます。

GPUの能力が向上してくると、その能力を画面表示以外の計算に使おうという気運が高まり、メーカ側はGPGPU(General Purpose GPU:汎用GPU)というコンセプトのもとに、物理計算やシミュレーションといった大量の計算を必要とする市場を目指すのですが、なかなか受け入れらずに苦戦していたのです。

そこに降って湧いたのが、仮想通貨需要でした。

詳しくは、このメルマガの237号でも解説しましたので、興味のある方はそちらもご覧ください。
 No237 ブロックチェーンにだって課題はある
 https://note.com/egao_it/n/nc0ae3b78e409

以下では、237号で端折った内容を中心にもう少し詳しくGPUについて解説をします。

2. GPUとCPUは何が違うのか?

一言で言えば「目的が違う」です。
目的が違っているから、内部構成もそれぞれの目的に最適化されていて、相当に違うものに仕上がっています。

CPUはCentral Processing Unit(中央制御装置)と呼ばれ、どんなコンピュータシステムでも必ず1つは入っているパーツです。
コンピュータの動作はCPUが号令をかけ、他のパーツに作業を依頼し、その答えを使ってまた次の作業依頼を行う、ということを繰り返しています。
まさに中央制御装置ですね。

これを実現するため、CPUにはより複雑な命令を備え、より高度な制御が行えるように進化してきています。(このあたりは書き出すときりがないので省略します)

一方のGPUは上にも書いた通りGraphc Processing Unitの略で、画面表示を目的とする処理ユニットです。
画面上のどの場所にどんな形をどの色で表示するのか?というのを制御するのが仕事です。
より大きな画面(解像度)に対応し、より正確な色再現を行い、複数画面に対応する、といったことが求められてきました。

中でも強く求められてきたのは、より高度で緻密な3DCG表示でした。
高度で緻密な3DCG表示には、膨大な計算が必要になります。

GPUはCPUのように他の機器の制御能などは要りませんので、複雑な制御構造などは持っていません。
一方で、3DCGで必要となる似た計算を大量かつ高速に行う仕組みを次々と組み込んでいきましたので、ある種の計算だけはCPUよりもはるかに高速に実行できるようになったのです。

CPUとGPUと並べるとまるでツートップのように見えますが、実際のコンピュータシステムとして考えると、CPUがコンピュータ全体をコントロールするのに対して、GPUはあくまで画面を制御するためのパーツに過ぎません。

つまり、GPUはCPUにコントロールされている機器の一つという扱いになります。

3. GPUが得意な計算、とCPUが得意な計算

それは上にも書いたCPUとGPUの目的の違いによるものなのです。

CPUはシーケンス処理といって、順序を考慮しないといけない計算を得意としています。

ですので、Officeソフトのように、入力されたものをもとに計算をし、それをネットワーク経由でメール送信し、クラウド上に保管し、印刷をする、といった他の機構を活用するの場合にはCPUが適任です。

一方、GPUはシンプルで並列度の高い作業を得意とします。

壁紙を貼った通路のCGの描画を考えてみます。

光が手前の天井だけにあるなら、同じ壁紙でも奥は暗い表示なのが自然ですし、光源に近い天井側と床に近い場所ではやはり明るさが違うはずです。

こういった場合は、GPUの得意とする並列演算が有利になります。
多数の明るさや色を同時に計算するのはGPUが最も得意とするところです。

GPUには足し算や掛け算といった計算をするミニユニットが何百と搭載されています。これをフル活用すれば、一度の命令で数百箇所の計算を一度に行えます。

こういった明るさや色の計算では他の計算結果が要らないというのも大きなポイントです。

まとめます。

CPUはシーケンス処理を得意とします。
つまり、
 1) Aを使ってBを計算する
 2) Cを使ってDを計算する
 3) BとDを掛ける
といった、一連の順序を守る必要のある計算が高速に行えます。

一方、GPUは並列演算が得意です。
つまり、
 1) AとB1を使ってC1を計算する
 2) AとB2を使ってC2を計算する
 3) AとD1を使ってE1を計算する
 4) AとD2を使ってE2を計算する
といった、順序を考慮しなくていい大量の同時計算を得意とします。

4. GPUが仮想通貨で使われる理由

2017年頃から特にハイエンドと呼ばれる高価で高速なビデオカードが極端に入手困難となった事期がありました。

この原因は仮想通貨で必要とされる計算にGPUが使えるんじゃないか?と目が付けられたためです。

Nvidiaからすると、ようやく3DCG以外の大きな市場を得たことになるのですが、そのブームが一過性か永続的かが判断できず、投資に踏み切れませんでした。
手をこまねいているうちにどんどん市場在庫が減り、価格が高騰し、一時は大きな問題となりました。

さて、この時にはGPUばかりが品薄になったのですが、単に高速計算が目的なら、高価なCPUも品薄になっても良さそうなものですが、GPUばかりが高騰していました。

ここでは、GPUの並列計算が得意という面に着目されました。

仮想通貨でごほうびをもらうためには、他人より早く特定の計算をしなければならないのですが、この計算というのは、(計算量は多いですが)シンプルな計算で、しかも同時実行が非常に容易なものでした。

まさにGPUはマイニング作業にはうってつけの半導体チップだったのです。

5. GPUの出火事故

Nvidiaの最新モデルとなるGTX4090というグラフィックボードが2022年10月に販売開始となったのですが、それが出火するという事故が起きました。
幸い火事になったわけではないようですが、ボードの電源コネクタのプラスチックが(熱で)融けたりしたとのこと。

まだ、現象の報告があっただけで、メーカ側でも調査中とのことです。

以下は筆者の勝手な推測ですが、電源回りの設計ミスのように思えます。プラが融けたということは想定よりもはるかに大きな電気が流れたということでしょうから、本来は他のピンに分散して電源供給するはずのところが、一箇所に集中してしまうようなミスをしていたのではないかと思います。

大枚はたいて最新のグラフィックカードを買った方には本当にお気の毒様としか言いようがありません。

余談
 細いところに定格以上の電気を流すとケーブルが発熱します。
 昔のこたつの電線が誰も触っていないのにほのかに暖かくなったり、断線しかかったコンセントが異様に熱くなるのも同じ理由です。
 これを逆用したのが昔ながらのヒューズ管ですね。一定以上の電流が流れると熱で断線するわけです。

6. まとめ

GPUと呼ばれる半導体チップがあります。

これはCPUとは違って、似たような計算を大量に高速に行うことを得意としています。

そのため、最上位のGPUはCPUよりはるかに大量(数百億)のトランジスタが組み込まれていて、価格もCPU以上に高価なものとなっています。

CPUはシーケンス制御と言って、順序を踏んで処理を進めることを得意としており、GPUは画面制御に特化した半導体チップで、似た計算を並行して大量に行うことを得意としています。

CPUはどんなパソコンでも必ず1つは入っています。
GPUも全てのパソコンに入っていますが、その本領を発揮できるアプリとなるとゲームや設計ソフト、グラフィックソフトなど限られた分野のものになります。

仮想通貨のマイニングでは、GPUが活躍していますが、これはマイニングという作業にGPUの並列性が非常に有効なためです。

今回はGPUというものとその応用について解説をしました。

次回もお楽しみに。

(本稿は 2022年10月に作成しました)

本Noteはメルマガ「がんばりすぎないセキュリティ」からの転載です。
当所はセミナーなどを通して皆さんが楽しく笑顔でITを利用いただくために、 難しいセキュリティ技術をやさしく語ります。
公式サイトは https://www.egao-it.com/ です。


この記事が気に入ったらサポートをしてみませんか?