HPE(Hewlett-Packard Enterprise)はItaniumベースの製品を(表立ってはできないから、ひっそりと)x86ベースに移行を促す努力をしながら、競合(Dell EMCやLenovo)とのサーバーマーケットのシェア争いを繰り広げていたわけであるが、そのかたわらでおもしろい研究をしていた。それが、The Machineである。
CPUではなくメモリーを中心に設計された
サーバー「The Machine」
The Machineとは、2000年代前半から開発が始まった、非常に意欲的な未来のサーバーである。一口で言えばメモリー主導型コンピューティング(MDC:Memory Driven Computing)を実装するプロトタイプの名前が“The Machine”である。
そもそもMDCとはなに? という話であるが、The Machineのコンセプトではメモリーとプロセッサーを切り離すことにある。
通常、メモリーはプロセッサーに接続されており、例えばあるデータをプロセッサーAで処理し、その結果をプロセッサーBでまた処理するといった場合、まずAのローカルメモリーからデータを取り出して処理、その結果をBに送り再び処理し、それをBのローカルメモリーに格納する(だいぶ端折っているのはご容赦を)といった具合に、プロセッサーによる計算(Computation)が主役であり、データはプロセッサーに従属する形でシステムのあちこちに移動することになる。
もちろん昨今のマルチコアの場合は、1つのCPUの中に複数のプロセッサーコアが内蔵されており、共通のメモリーを利用しているため、その範囲で言えば同じメモリー領域を使うことになるが、それこそスケールアウトタイプのサーバーの場合はノードあたりのコア数は控えめに抑える方向にあるので、冒頭に述べたようなシチュエーションは実際にあり得るし、しかもその際には相対的に低速なネットワーク(イーサネットなりなんなり)を経由することになるから、レイテンシーも大きい。
そこで逆転の発想で、メモリーは一ヵ所に集めて、そこに多数のプロセッサーがアクセスする、という構成を取ったのがMCDである。
データの置き場所は移動せずに、プロセッサーが必要な時にそのデータを取り出し、また元の場所に格納する仕組みを取っている。
特徴的なのは、このメモリーは不揮発性であることを前提にしていることだ。つまりメモリーがそのままストレージとしても機能するわけで、これにより処理のたびに遅いストレージから読みだして、処理後に再び遅いストレージに書き戻す手間が必要なくなる。
当然ながらこれはアーキテクチャー的に従来の計算主導型コンピューティング(CDC:Computation Driven Computing)とはまったく異なるため、ソフトウェアレベルでの互換性はなく、MDCにあわせて作り変える必要がある。
ただ逆に言えば、従来はソフトウェア互換性などの理由でx86(もうここではさすがにItaniumという言葉は出なかった)を選ばざるを得ないケースが多かったわけだが、MDCでは別にx86である必要すらなく、さらに言えばCPUである必要もない。GPUとかFPGA、今ならAIプロセッサーなどもここに含まれるが、こうしたもののハイブリッド構成で全然構わないということになる。
ただ、この方式の欠点はプロセッサーとメモリーの間の距離が長くなり、レイテンシーが増えて帯域が減ることである。
そもそもなぜこれまでメモリーがプロセッサーのそばに置かれていたかと言えば、プロセッサーが高速で動くためにはメモリーに高速にアクセスできないと、メモリーアクセス待ちが大量に発生してしまい、性能が頭打ちになるためである。
もう1つ、副次的な理由を挙げるとすれば、広く使われているSDRAM(DDR/DDR2/DDR3/DDR4含む)はいずれも64bit幅(ECCを含めると72bit幅)のパラレルバスであり、物理的にけっこうな配線面積を取る。
したがって、あまり長距離を引き回すと基板への実装が難しくなり、レイテンシーも加速度的に増える。信号線は等長配線が要求されるので、一番配線長が長いルートに合わせて配線の引き回しが行なわれるからだ。結果、無駄に配線が長くなる。
このあたりを嫌って、例えばFB-DIMMやRambusのRDRAM/XDR/XDR2といったソリューションも出てきたものの、ほとんど定着せずに消えていった(XDR2に至っては採用例がないまま終わった)ことを考えると、非標準的なメモリーを利用するのはリスクが高く、するとSDRAMをベースに考えざるを得ず、結果としてプロセッサーのそばに置くしかない、という結果に落ち着くことになる。
これに対するHPEの解は、Silicon Photonicsを利用した光インターコネクトを利用することだった。Silicon Photonicsに関してはいろいろ話がある。この分野、インテルはもう10年以上も研究しているものの、商品化されたのはほんのごく一部でしかなく、現時点でもまだ商用利用が可能なレベルに達しているとは言えない。このインテルの苦闘の歴史は、それだけで1本分の記事以上のボリュームがある。
最近では(NVIDIAに買収される予定の)Mellanoxが一時期ずいぶん関連企業を買収して精力的に開発を進めてきたものの、2018年1月に断念。チームも解散しているといった具合に、実は非常に敷居が高い。
もっともThe Machineのコンセプトが発表された時点では、まだわりと現実的に実現可能と思われていた技術であり、HPEの見通しの甘さを責めるのは難しいだろう。
この連載の記事
-
第791回
PC
妙に性能のバランスが悪いマイクロソフトのAI特化型チップMaia 100 Hot Chips 2024で注目を浴びたオモシロCPU -
第790回
PC
AI推論用アクセラレーターを搭載するIBMのTelum II Hot Chips 2024で注目を浴びたオモシロCPU -
第789回
PC
切り捨てられた部門が再始動して作り上げたAmpereOne Hot Chips 2024で注目を浴びたオモシロCPU -
第788回
PC
Meteor Lakeを凌駕する性能のQualcomm「Oryon」 Hot Chips 2024で注目を浴びたオモシロCPU -
第787回
PC
いまだに解決しないRaptor Lake故障問題の現状 インテル CPUロードマップ -
第786回
PC
Xeon 6は倍速通信できるMRDIMMとCXL 2.0をサポート、Gaudi 3は価格が判明 インテル CPUロードマップ -
第785回
PC
Xeon 6のIOチップレットには意地でもDDR5のI/Fを搭載しないインテルの強いこだわり インテル CPUロードマップ -
第784回
PC
Intel 3は300~500MHz動作周波数が向上する インテル CPUロードマップ -
第783回
PC
Lunar LakeにはWi-Fi 7があるがPCIe x16レーンは存在しない インテル CPUロードマップ -
第782回
PC
Lunar LakeはNPUの動作周波数がアップし性能は2倍、ピーク性能は4倍に インテル CPUロードマップ -
第781回
PC
Lunar LakeのGPU動作周波数はおよそ1.65GHz インテル CPUロードマップ - この連載の一覧へ