10年前に「ムーアの法則が終わる」と言われた頃から現在までのサーバ進化の技術的模索を振り返る(後編)
今回は「10年前に「ムーアの法則が終わる」と言われた頃から現在までのサーバ進化の技術的模索を振り返る(後編)」についてご紹介します。
関連ワード (分割、定着、飛躍的等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
先々月、あるサーバベンダ主催のイベントで、最近のサーバにおける技術トレンドを紹介して欲しいという依頼を受けて、過去10年のサーバ技術のトレンドを振り返るという講演を行いました。
ほぼ10年前は「ムーアの法則が終わる」と本格的に言われ始めた頃で、そこから実はさまざまな技術、例えばストレージクラスメモリやFPGAやメモリドリブンコンピュータなどのプロセッサの回路の微細化以外の技術によるサーバの性能向上技術が注目され、その一部は市場に投入され定着しつつある一方で、商業的な成功を収められなかった多くの技術もありました。
それらをざっと振り返る内容にしたところ、現在のサーバ技術の方向性がなんとなく見えてきたのではないかと思うので、ここで記事として紹介します。
記事は前編と後編に分かれています。いまお読みの記事は後編です。
TPUのような専用プロセッサの登場
機械学習に代表される新しいコンピュータの使い方が注目されるようになったことを契機に、その処理に特化した専用のプロセッサがクラウドで大規模に展開されるようになりました。
前述のGPUがその代表例ですが、より目的に特化したプロセッサを発表したのがGoogleです。
Googleは2017年、機械学習に最適化したプロセッサ「Cloud TPU」を発表。2021年にはさらに高性能化したTPU v4を発表しています。
AWSも2018年、推論処理を高速かつ効率よく実行することに特化した独自開発のプロセッサ「AWS Inferentia」を発表しました。
こうした機械学習処理に特化したプロセッサが汎用プロセッサを置き換えることはありませんが、エンタープライズにおいてクラウド経由で利用するケースが増えるでしょう。
ストレージクラスメモリ
コンピュータを高速化する手段として、プロセッサ以外の要素での進化もありました。
その1つが不揮発性の大容量メモリを活用した「ストレージクラスメモリ」です。
ストレージクラスメモリとは、ストレージのように大容量かつ不揮発性でありながら、メインメモリのように高速にアクセスできるメモリです。
コンピュータのメインメモリが不揮発性になると、電源を切ってもメモリの内容を失わなくなるため、普段は電源がオフで、処理をするときだけ電源が流れるという、超低消費電力で稼働する新しいアーキテクチャの実現が期待できます。
そこまで行かなくとも、データベースでこのストレージクラスメモリを利用すると、データを失わないようにストレージに書き込んでいた処理が不要となりメモリ上の処理だけで済むようになるため、非常に高速なデータベースが実現できます。
ストレージクラスメモリを実現する製品として最も期待されたのが、インテルが2019年に製品化したIntel Optane DCパーシステントメモリです。
オラクルやSAPなどは製品化前から相次いで同製品への対応を表明していました。
しかし残念ながらIntel Optane DCパーシステントメモリは商業的には成功せず、2022年に製品の終了が発表されました。
ポスト「ムーアの法則」時代に向けたストレージクラスメモリの活用は、ビジネス面で成功せず、撤退戦の途中といえます。
メモリドリブンコンピューティング
コンピュータのアーキテクチャを刷新することで、飛躍的な性能向上を実現するアプローチも存在しました。メモリドリブンコンピュータです。
現在のコンピュータはプロセッサが中心にあり、その配下にメモリがあるという構造を備えています。
メモリドリブンコンピュータはこれを逆転させ、メモリの配下に大量のプロセッサを接続するというものです。これによりデータの移動が小さく、多数のプロセッサが並列に作動するため、超高速処理が可能とされます。
HPEがこのメモリドリブンコンピュータを「The Machine」というコード名で大々的に発表し、2020年の実現を目指していました。
しかし残念ながら2023年の現時点でもThe Machineは登場せず、まだ夢のコンピュータのままとなっています。
技術的模索の中で成功したもの、しなかったもの
このように過去10年でポスト「ムーアの法則」に向けてさまざまな技術的な模索が行われ、いくつもの技術や製品が実際に登場しました。
そうした中で、現在のエンタープライズ向けサーバの進化に大きく影響している技術は、ARMに代表される電力効率の向上とメニーコア化でしょう。
ソフトウェアの変化はコンテナ化が中心
ここまではハードウェア技術の進化を中心に見てきましたが、最後にソフトウェア面でのここ10年の進化も見ていきましょう。
奇しくも10年前の2013年はDockerが登場した年で、この10年でサーバ環境は仮想化からコンテナ化へと大きな変化がありました。
コンテナ化は多くの方がご存じの通り、ハイパーバイザによる仮想化よりも小さな単位でサーバを分割して利用できる技術です。
ソフトウェアを実行環境丸ごとパッケージングする機能を備えており、コンテナの単位で開発からビルド、デプロイ、運用までのライフサイクル全体をカバーできるようになっています。
現在のサーバに代表されるITインフラは、コンテナに代表される比較的粒度の小さいプロセスを多数実行するような負荷に適したものが期待されていると言えます。
こうしたことからも、少なくとも数年の短期的な視点では、これまでのサーバとは大幅に違うような新たなアーキテクチャや機能を備えたサーバの登場は考えにくいところです。
一方で、コンテナを中心に考えると、サーバにはメニーコア、大容量メモリ、高速なI/OがITインフラには求められることになり、これに沿った製品やサービスの選択が望ましいといえそうです。