この単語が聞かれるようになって久しい。いや、個人的に知ったのは数ヶ月前なのだが、数年前から存在はしていた。そんなマイナーな、いやマイナーに関する話。自分としても、全てを把握しているわけではないので。ビットコインを採掘するにはASICが必要で、汎用機での採掘はコストに見合わないこととか、主戦場は電気代の安い中国であるとか、その他の仮想通貨の採掘が日本での流行りであるとか、RADEONが日本のみならず中国で買い漁られていることもあって世界レベルで流通量不足になっていることとか、まぁそんな程度だ。それだけ知っていれば十分かもしれないが、それでも人に説明をするには知識が不十分である。今回この記事をおこしたのは、マイニングがGPUに求める性能に偏りがあるように思ったことと、自分なりに確認してみた結果をまとめておこうと思ったからだ。一般的に、マイニングにGPUを使うのは省略した説明に含まれる範疇の情報なのであしからず。GPUに求める性能が偏っているとはどういうことか。それは、メモリアクセス性能を極端に要求するアプリケーションであるということだ。と1080のハッシュレートを測定したとき、1070の方が上位であるという結果である。調べればベンチマークの結果一覧は出てくるので具体的な値は省略する。シェーダーの数で1.33倍上回る1080が1070の後塵を拝するのか。その鍵はメモリの種類にある。1070はGDDR5、1080はGDDR5Xである。GDDR5とGDDR5Xの違いは何か。詳しいことは調べれば出てくるが、ひっくるめるて一言で言えば、データーアクセス粒度の違いであると認識している。1命令で読み出せるデーターの大きさが倍なのだ。メモリクロックが「8GHz相当」のような表記になっているのは、データー転送時のクロックを示している。読み出し命令(制御系)のクロックはもっと低い。「8GHz相当」の場合、GDDR5が2GHzでGDDR5Xが1GHzである。これが何を意味するか。見た目上のデーター転送レートが高くとも、GDDR5Xの場合、データー読み書きの命令頻度が落ちるのだ。そのため、細かい読み書きが苦手なのである。本来の3Dグラフィックでは問題がないデーターアクセス粒度でも、マイニングで使用するには粒度が大きすぎるようだ。その結果、1070と1080のハッシュレートが逆転するという現象が発生する。シェーダーが多くてもメモリに足を引っ張られて性能が出ないということは、メモリアクセス性能が支配的であるということだ。そのため、RADEONが人気である(性能が出やすい)というのも理解できる。あれはGDDR5であり、メモリバス幅も比較的広い。コアクロックはそれほど高くないので、相対的にシェーダーの演算性能はそれほど高くない。RADEONのL2キャッシュは同価格帯のGeforceのそれよりも多いのでハッシュレートが高いという話もある。最近のGeforceは昔よりもL2キャッシュを増やしているし、キャッシュよりレジスタの方が性能のためには重要であるという話もあるので、ここではメモリアクセス性能が重要であることを裏付ける情報である、という点を把握するにとどめたい。実際のところ、GPUとメモリのクロックがハッシュレートに与える影響はどうなのか?あまり、こういった視点でのベンチマーク結果は出ていないようなので情報がない。以下については、大雑把なテストであること、エビデンスをとっているわけではなく目視確認レベルであること、厳密に条件を整えているわけではないこと、などに留意して欲しい。採掘しているのは、一般的なETH(だったはず)。コア1620MHz、メモリ8500MHzくらいハッシュレート22.0MH/sコア1780MHz、メモリ8500MHzくらいハッシュレート22.2MH/sコア1620MHz、メモリ8700MHzくらいハッシュレート22.5MH/s頑張ってコアをOCするよりも、メモリを少しOCする方が効果があるようだ。コアをOCしないことで、不要な消費電力増を避け、ファン騒音の低減が実現できる上に、ハッシュレートは上がるという一石二鳥である。余談だが、この1060で試したところコア2000MHz程度でも一応は動作するようである。ファン100%で温度は75度くらいだったと記憶している。電圧もそれなりに上がり、1Vを超えていたはずだ。普段使用している1620MHz程度では、ファン75%で60度を下回っている。電圧は0.8V程度で落ち着いている。ちなみに1620MHzというのはパワーターゲットを60%に設定した結果である。結果としてほぼ定格であるが。メモリの動作温度がどうなっているかは測定していないので不明であるし、メモリの定格は8000MHzとなっているのでOCによる寿命短縮は避けられないはずだ。今現在、9000MHzあたりまでは問題なく動作することを確認したうえで多少マージンをとっているが、いつかはマージンも無くなるだろう。今回の確認結果を参考にする人がいるとすれば、それを踏まえたうえで使用すべきであることは承知されたし。いうことで、少々マニアックな話題を扱ってみた。何か参考になることがあれば幸いだ。それでは皆さん、ごきげんよう。Tweet広告を非表示にするもっと読むコメントを書く2017-07-24PCの消費電力を計算によって確認してみる。PCというかWSみたいな何か。XeonSR-2という製品をご存じだろうか。「それ知ってる!レカロ!」と手を挙げた方は残念賞。今回は、2010年に発売されたM/Bの話。このM/Bの話なのか。それは、現在進行形で手元にあり、消費電力の多さから運用頻度が極端に低く、その消費電力の根拠が気になったから、だ。使わないと勿体ないが大規模すぎて取り回しが面倒で使用頻度激減、という流れで現在に至る。このM/Bの構成を簡単に記すと、チップセットに5520、ブリッジチップにnF200を2つ、LGA1366を2つ、DDR3が3ch、である。ここにGeforce9600GTを組み合わせ、SSDを2台、HDDを13台、CPUは低消費電力版の6コアXeonを2つ搭載。合わせると、12コア24スレッド、メモリが48GBにストレージが36TBとなる。何もしなくても約160Wを消費する。フルロードであれば、定格2.4GHzで280W、3.0GHzで380W、エコとは無縁の暖房器具と化す。Intel製のチップセットは基本的にそれほど消費電力は多くないはずだ。比較的最近のCPUは消費電力に関しては大人しいと思って良い。メモリはアクセスしなければそれほど電力を消費しないはずだ。GPUはそれなりに電力を消費する。現行の1060がアイドル時実測で9W程度なので、プロセスルール的に考えてそれよりは多く消費しているはずだ。HDDは7200rpmであることが災いして、1台あたり5W以上消費しているはずなので、70W近いのではないか。HDDの分を差し引いても、アイドル時に90W程度の消費電力がある。電源でもロスがあるはずだ。考えていったとき、計算は合うだろうか。怪しく不確定要素なのは、nF200である。nF200について調べたところ、NVIDIAの780iチップセットで使用されていることが分かった。780iは680iと同じMCP55系(C55)を採用、OCして駆動、スイッチチップとしてnF200を採用、という構成だ。よって、780iチップセットについて調べれば何か判明するのでは?と考えた。M/Bのみ交換し、他は同等の構成でテストした結果があった。114-125W(ave119W)平均値で比較して、フルロード時46W、アイドル時55Wの差。別のベンチテストでは、アイドル時、X38が168W、780iが214W、差は46W。よって、X38との比較では、消費電力は50W程度増加すると断定して問題はない。780iのTDPは70~80W程度と算出できる。間を取って75Wと仮定する。この75Wの何割かはnF200が担っている。大きくないヒートシンクとはいえ、ファンつきのクーラーを使用しているので、1桁ではない。仮定するとすれば10W以上、20Wまでは届かない、といったところだと思われるので、15Wと仮定する。2つ搭載すれば30Wである。M/B上の他のチップも含めて、M/BのTDPは65W程度と見積もることができる。他のコンポーネントの消費電力も計算しよう。7200rpmのHDDは、調べたところアイドル時で5.6Wとのこと。13台搭載すれば72.8W電源効率は80+程度の750W電源なので、82%と仮定。GPUは、ローからミドルレンジ程度の構成であれば、アイドルで10Wを少し切る程度に収まっているという情報が2009年に確認できたので、10Wという値を採用。アイドル時に160W消費していたPCは計算上成り立つのか。160*0.82=131.2HDD分を除外。131.2-72.8=58.4GPU分を除外。58.4-10=48.4この48.4Wが、CPUとメモリとSSDとM/B分の消費電力となる。アイドル時、DRAMの消費電力はほぼ0に近い(FB-DIMMなどを除く)という実験結果があった。DRAMのセルフリフレッシュは8GBでも3ケタmWくらいは消費しているという説明資料があったので、メモリの消費電力は1Wとする。したがって、48.4-1=47.4余談だが、メモリの枚数を増やすとアクセス時の消費電力が上がるのはコントローラーのチャンネル数が増えたから。メモリをOCするとアイドル時の消費電力が目に見えて上がるのは、メモリコントローラーの動作クロックが上がったから。幾つかのサイトで、目の前の事象だけに注目して短絡的に誤った結論に至っているものがあった。BridgeのC7ステートの消費電力は最大で2.2Wとなっている。世代的に近いので、4コア2.2Wという値を参考値とすると、12コアで6.6Wとなる。Xeonは他にもロジックの規模が大きくなっているので、8W程度と考えておけば良いだろう。したがって、47.4-8=39.4SSDはどうか。使用しているSSDはアイドル時に100mWを下回るようなので、2台で0.2Wとする。したがって、39.4-0.2=39.2さて、M/BのTDPは計算上65Wだった。それがアイドル時は計算上では39.2W。悪くない結果、納得できる範囲かと思う。4.1Wそれでは皆さん、ごきげんよう。22:39PCの消費電力を計算によって確認してみる。PCというかWSみたいな何か。リチウムイオン次期リーフはバッテリーが倍増して48kWhとか60kWhになるらしい。何かのキーワードで情報検索していたときに、そのような話を見かけた。90kWhという文字もあったが、あれはバッテリーからの出力が90kWという資料を見間違えただけだろう。バッテリー容量は大きければ大きいほど良い。それは、長距離走れるからとか、充電の手間が減るから、という短期的な見方によるものではなく、バッテリーの負荷軽減につながるため寿命そのものを伸ばすことになるからだ。一応説明しておくと、ある負荷装置があるとして、その装置に一定の電力を流す場合、容量の小さいバッテリーよりも容量の大きいバッテリーの方が、バッテリーが持っている電力量に対する放電電力の比率が小さいため、バッテリーへの負担が少ないということ。具体的に言えば、100Wの負荷に対して、100Whのバッテリーを接続した場合、放電は1Cとなる。500Whのバッテリーを接続した場合、放電は0.2Cとなる。1Cより0.2Cの方がバッテリーへのダメージは少ない、ということだ。急速放電の度合いが低いほど、バッテリーの発熱も少ない。全体で発生する熱量は等しいかもしれないが、温度上昇の度合いは低いので、温度的な意味でもバッテリーには優しいことになる。同じことは充電する時にも当てはまる。10kWhのバッテリーに20kWの充電器を使うと、2Cでの急速充電になる。40kWhのバッテリーであれば0.5Cの充電となり、バッテリーへの負担は少なくて済む。もの凄く大雑把な計算なので、その辺のツッコミは勘弁してほしい。急速充電が悪いわけではなく、設計上の想定内で推奨される環境下での使用であれば問題はないものの、充電電流は極端に大電流でない方がいいのは明らかだし、温度も低すぎたり高すぎたりしてはいけない。細かい話は、リチウムイオンバッテリーの種類によっても変わってくるので、また気が向いたら情報を集めることにしたいが、基本的な原則は変わらない。バッテリーが無理なく動作できる範囲で、無理なく使ってやること。これが長持ちさせるカギになる。話をEV以外に向けよう。現在使われているバッテリーには様々な種類がある。鉛蓄電池、ニッケルカドミウム、ニッケル水素、リチウムイオン、あたりが一般的だろうか。それぞれ、適した使い方というのは異なるので、以前の常識が新しいバッテリーに通用することはない。それを勘違いして「xxした方が良い」と最初から決めつけて、昔からの習慣に倣って使ってしまうと、寿命を縮めかねない。自分の身の回りでも、意外と知らない人が多い(というよりも気にしていない人が多い)ので、メモがてらまとめてみようと思う。名前のとおり鉛を使用しているので、非常に重たいバッテリーである。古くから使われている。時代遅れなのか?というと、用途によってはそうでもなかったりする。重量を気にしなければ、大容量のバッテリーを製造しやすい。そのわりには安価である。充電制御が比較的簡単である。容量が大きいので、相対的に大電流を流すことも一応可能。そのような特徴を生かして、自動車のバッテリーやUPSに使用されている。長持ちさせるコツは?保存するときは満充電にしておくことだ。使ったら必ず充電する。充電した記憶が怪しかったらとりあえず充電する。満充電にしておけば問題なし。非常にわかりやすいバッテリーである。逆に、放電した状態で放置してしまうと電極表面に硫酸鉛が付着してしまい、内部抵抗が増大して出力可能な電流量が低下し、あっという間に寿命を迎える。バッテリーあがりを起こした時、バッテリーが完全に復活しないのは、これが原因である。詳しいことを知りたければ「サルフェーション」で検索してほしい。ニッケルカドミウムこのバッテリーについて回る言葉。それが「メモリー効果」である。憎きバッテリーの敵である。これの対策は、使いかけの状態で充電すると徐々に本来の容量を使い切れなくなってしまうので、しっかり放電させてからしっかり充電すること。今でもこの使い方が染みついている人は多いはず。長持ちさせるコツは、上に書いたとおり。保存時は、1.0Vあたりまで放電させてから保管。満充電での保管はNG、だそうだ。ニッケル水素ニッカドの後釜的存在。メモリー効果からは多少解放されたものの、自己放電は増加。過放電により一気に寿命を迎えるケースがあるため、保存時は満充電した状態にしておくことが望ましい。エネループはメモリー効果や自己放電についての特性を改善しているが、満充電での保存が推奨されている点は変わりない。リチウムイオン現在一般に使用されているバッテリーの中で、最も重量あたりの電力密度が高いバッテリーである。充電制御に失敗すると発火する。製造を少しミスっても発火する。便利だが危険なバッテリーである。それゆえ、セル単体で使用されることは皆無に等しく、制御回路とセットにして販売・使用されることがほとんどである。セル単体だと思っても、実際には小さな回路を挟んでいたりする。具体的に言えば、残量20~80%くらいの間で使用すること。これはバッテリーの開発者やEVの開発者、さらにはノートPCの開発者までもが口を揃えて言っていることである。これも使い方と同様に、中途半端な充電状態で保存するのがベストである。自己放電で電圧降下することを考えれば、残量70%くらいで放置しておくのがよいと思われる。まとめると、鉛蓄電池は使ったらひたすら充電。