ARMサーバー:データセンター向けのモバイルCPUアーキテクチャ?

公開: 2022-03-11

私は年をとっています。 昔は、一流のCPUパフォーマンスが必要な場合は、ハイエンドのx86チップを使用する必要がありました。または、より深いポケットがある場合は、PowerPCシステムなどのエキゾチックなものを入手できました。 業界のx86プロセッサへの依存度は、低下するのではなく、増加しているように見えました。

10年前、Appleはx86クラブに参加しました。これにより、多くのオブザーバーは、マスマーケットにおける非x86プロセッサの時代は終わったと結論付けるようになりました。 ほんの数年後、彼らは彼らの言葉を食べなければならなかった、そしてそれでもまた、Appleはそれと関係があった。 ARMサーバーが登場し、サーバー業界を活性化させる可能性があります。

プロセッサ設計の再考

パラダイムが変化し、主流のユーザーがスマートフォンやタブレットを採用するにつれて、Intel、AMD、およびVIAのx86チップが単にそのタスクに対応していないことがすぐに明らかになりました。 x86は地球上で最も多作な命令セットでしたが、さまざまな理由からモバイルデバイスには適していませんでした。 実際、Intelの命令セットは、モバイルプロセッサではまだ一般的な選択肢ではありませんが、Intelのファウンドリ技術リーダーのおかげでこれは変わり始めています。 いずれにせよ、この市場セグメントに関して言えば、x86は他のCPUアーキテクチャ、つまりARMの32ビットARMv7および64ビットARMv8命令セットに基づくプロセッサほど効率的ではありません。

過去10年間、特に過去5年間で、ARMプロセッサがスマートフォンとタブレットの世界を支配するようになり、多くのことが期待されてきました。 ワットあたりのパフォーマンスが高く、設計、製造、導入が安価でした。 大手ベンダーは、必要なビルディングブロックを購入し、ARMv7またはARMv8に基づいて独自のプロセッサを設計し、ニーズに応じて他のコンポーネントを追加することができます(高速モデムとさまざまなGPUなど)。

これにより、一部のチップ設計者は、多少異なるアプローチを取り、独自のカスタムCPUコアを設計するようになりました。 QualcommとAppleが先導し、両社はモバイルシステムオンチップ(SoC)市場で大きなプレーヤーとなり、洗練されたカスタムコアの開発が成功に貢献しました。 ただし、カスタムARMコアは依然としてハイエンドプロセッサで使用されていましたが、他のすべての市場セグメントは、32ビットCortex-A8、A9、A7、A15、続いて64ビットなどの標準ARMCortexCPUコアでカバーされていました。 Cortex-A53、A57、および出荷を開始しようとしている新しいA72コアなどの設計。

ARMの成功のもう1つの前提条件は、Microsoftの失敗でした。

Windowsはx86プロセッサでしか動作しなかったので、Microsoftがモバイルで足場を固めたとしたら、Intelに有利になります。 しかし、過去10年の終わりまでに、レドモンドがボールを落とし、この儲かる市場をグーグルとアップルに割譲したことが明らかになりました。 ボールについて言えば、長年のマイクロソフトCEOであるスティーブバルマーは数年前に会社を辞め、彼と彼のチームがスマートフォンとタブレットの可能性を認識できなかったことを認めました。 とにかく、それはもうバルマーの問題ではありません:彼は今彼の心に他のボールを持っています、正確にはバスケットボールです。

ARMプロセッサはモバイル環境を支配しており、他の製品カテゴリにも進出しています。サーバーは開始するのに適した場所です。

ARMプロセッサはモバイル環境を支配しており、他の製品カテゴリにも進出しています。 サーバーは開始するのに適した場所です。
つぶやき

ただし、モバイルは、マイクロソフトが壮大な比率で失敗したことを目撃した最初または唯一の市場セグメントではありません。 もう1つはサーバー市場です。 表面的には、スマートフォンとデータセンターにはあまり共通点はありませんが、技術的およびビジネス的な観点からは、いくつかの重複があります。

スマートフォンを設計する場合でもサーバーを設計する場合でも、電力効率、優れた熱、1ドルあたりのパフォーマンスなど、ハードウェアプラットフォームの同様の側面を強調する必要があります。 最も重要なことは、スマートフォンや多くの種類のサーバーにx86ベースのプロセッサが実際に必要ないことです。 Microsoftの失敗のおかげで、これらの市場セグメントはWindowsのどのフレーバーにも支配されていません。 代わりに、 UNIXベースのオペレーティングシステム(Android、iOS、およびさまざまなLinuxディストリビューション)に依存しています。

Microsoftはまた、ARMプロセッサの可能性を活用しようとしたため、ARMハードウェアで実行されるバージョンのWindowsを開発しようとしました。これにより、次のMicrosoftの失敗であるWindowsRTに便利にアクセスできます。 Microsoftは最終的に、Windows RT、または元々呼ばれていた「WindowsonARM」のプラグを抜きました。 Microsoftの最新のSurfaceタブレットは、x64プロセッサと標準のWindows 10を採用しています。MicrosoftのLumiaスマートフォンライン(旧姓Nokia Lumia)は、House of QualcommのARMプロセッサを引き続き使用していますが、WindowsPhoneは主流のスマートフォンプラットフォームとしてはほとんど機能していません。

サーバーはARMとLegのコストをかける必要はありません

現在、私たちは数十億のスマートフォンとタブレットを世に送り出しており、その大部分はARMプロセッサをベースにしています。 ただし、ARMチップは他の市場セグメントに参入していません。 スマートフォンやタブレットのカテゴリに分類されない、ARMベースの大容量コンピューティングプラットフォームはほんの一握りです。 GoogleChromebookはおそらく最もよく知られている例です。 ただし、ARMチップは、ルーター、セットトップボックス、スマートTV、スマートウォッチ、一部のゲームデバイス、自動車用インフォテインメントシステムなど、他の多くのデバイスで使用されています。

ARMサーバーはどうですか?

これはそれがトリッキーになるところです。 2010年からARMサーバーの話を聞いていますが、進歩は遅く、限られています。 サーバーセグメントにおけるARMの市場シェアはごくわずかであり、エコシステムはそれぞれIntelとAMDのx86XeonとOpteronの部品によって支配されています。 AMDはCPUの面で問題を抱えているため、Intelは近年市場シェアのリードを拡大することに成功しました。

ARMサーバーは、IntelおよびAMDx86チップに基づく対応サーバーよりも大幅に安価になる可能性があります。

ARMサーバーは、IntelおよびAMDx86チップに基づく対応サーバーよりも大幅に安価になる可能性があります。
つぶやき

しかし、なぜARMサーバーはそもそも良い考えのように聞こえたのでしょうか。

お金。 サーバー市場でARMをx86の実行可能な代替手段にするすべてのオタクなポイントをリストすることを試みることができますが、結局のところ、それは主にお金に関するものなので、数行で説明しようと思います。

  • 価格/性能
  • データセンターのワークロードは進化し、変化しています
  • さまざまなサプライヤからプロセッサを調達する機能
  • さまざまなニッチ向けのカスタム設計されたチップの使用
  • ARMチップは、一部のインフラストラクチャアプリケーションにより適しています
  • これは、Intelに固執し、市場での地位を損なう良い方法です(Intelはサーバースペースで独占状態になりつつあります)

すべてに巨大で高価なXeonプロセッサは必要ありません。 さらに、廃止されたx86プロセッサを使用して要求の厳しいワークロードを処理することは、消費電力が大きいため、適切なオプションではありません。 MacBookやデスクトップPCではなく、サーバーについて話していることを忘れないでください。 サーバーは24時間稼働しているため、比較的小さなサーバーを含め、すべての効率の向上が重要になる傾向があります。 電気代を大きくするだけではありません。 データセンターは冷却および保守する必要があるため、熱設計電力(TDP)の評価が低いプロセッサは、個人よりも企業ユーザーにとってはるかに価値があります。

ARMサーバーを使用する理由

では、ARMプロセッサはどのような種類のエンタープライズアプリケーションに適しているのでしょうか。

そうですね、ARMは、ネットワーキングインフラストラクチャアプリケーションの設計上の勝利の大部分を獲得することを期待しています。 ARMプロセッサは、柔軟性、小型、効率、低価格であるため、インフラストラクチャに最適です。 ARMプロセッサは、ルーター、高性能ストレージソリューション、および特定の種類のサーバーで使用できます。

ただし、ARMは、他のセグメントがすでに成熟しており、それらのセグメントで健全な市場シェアを持っているため、この10年間の企業成長の大部分はサーバーによるものであると予想しています。 サーバーのワークロードも変化しており、この傾向はクラウドサービスの成長と結びついています。 その結果、サーバーはますます多くの小さなタスクを処理する必要があります。

多くの組織はオプションを開いたままにすることを好むため、複数のベンダーからハードウェアを調達しています。 これは、ARMサーバープロセッサにとって朗報です。これは、ARMサーバープロセッサがさまざまな企業によって販売される可能性があるためです。 さらに、ARMのライセンスポリシーとプロセッサ設計へのモジュラーアプローチを利用して、特定のアプリケーション用のカスタムプロセッサを設計できます。 これは明らかに中小企業にとっては選択肢ではありませんが、Amazon、Facebook、Googleなどの大企業が特定のアプリケーションで優れた性能を発揮するように設計された特注のサーバープロセッサを求め始めたらどうなるでしょうか。

「Intelに固執する」ということに関しては、Intelに害を及ぼすという意味ではなく、失敗したり、さまざまな市場セグメントから追い出されたりしたくないのですが、同時に懸念しています。 Intelの支配は、成長と革新を阻害することになりかねません。 競争が激化すると、エンドユーザーの価格が下がるはずです。これがARMサーバーのすべてです。

マルチスレッド:CPUコアはいくつで十分ですか?

わずか10年前、マルチコアx86プロセッサは高性能コンピュータとサーバー用に予約されていましたが、今では100ドルのタブレットでクアッドコアx86チップを入手できます。

マルチコアコンピューティングの初期の頃は、十分なレベルのパフォーマンスを得るために、依然として大きなCPUコアが必要でした。 多くのソフトウェアはこれらの新しいプロセッサとその追加のコアを利用できなかったため、優れたシングルスレッドパフォーマンスが不可欠でした。 物事は確かに変わった。 現在、オクタコアスマートフォン、クアッドコアIntelタブレットと電話、および16コアx86サーバープロセッサがあります。

これには正当な理由があります。 マルチコアプロセッサを構築することは、技術的および財務的な観点から完全に理にかなっています。 高周波で実行できる単一の巨大なコアを開発するよりも、負荷をいくつかのより小さく、より効率的なCPUコアに分散する方がはるかに簡単です。 マルチコアアプローチにより、優れた効率とチップ歩留まりが保証されます。

ボスのようなマルチスレッド:ARMサーバープロセッサは、平均的なx86サーバー部分よりもはるかに多くの物理コアを搭載できます。

ボスのようなマルチスレッド:ARMサーバープロセッサは、平均的なx86サーバー部分よりもはるかに多くの物理コアを搭載できます。
つぶやき

ARMには、コアブームを次のレベルに引き上げる可能性があります。 ARM CPUコアは、サーバーおよびデスクトップパーツで使用されるIntelのいわゆる「ビッグコア」よりも小さい傾向があります(Intelの「スモールコア」Atomはモバイル用に予約されていますが、Atomベースのサーバーパーツも利用できます)。 ただし、これは、理論的には可能ですが、128コアまたは256コアのARMプロセッサがすぐに表示されることを意味するものではありません。 これは、ARMv8サーバープロセッサの新しいクロップがマルチスレッドロードをどのように処理するかによって異なります。 いくつかの有望な兆候があり、ARMサーバーは、マルチコアプロセッサの恩恵を受ける可能性のあるさまざまなワークロードに適している可能性があります。

クアルコムの最初のサーバープロセッサには24個のARMv8CPUコアが搭載されており、チップメーカーは将来のモデルがさらに多くのコアを搭載することを明らかにしました。 AMDとそのサーバー市場の問題を覚えていますか? さて、同社はほんの数週間前に、長い間延期されていたARMベースのOpteronA1100プロセッサを発表しました。 クアルコムは10月に発表を行ったため、これらの製品は両方とも今後数か月で利用可能になります。

もちろん、IntelはこのARMパーティーに参加しませんが、ARMベースのエンタープライズチップに取り組んでいるチップの衣装はQualcommとAMDだけではありません。 Broadcom、Calxeda、Cavium Networks、Huawei HiSiliconなどのチップメーカーは、ARMベースのサーバー製品にも取り組んできました。 SoCおよびGPUビジネスの2大企業であるNvidiaとSamsungも、数年前に開発を中止することを決定するまで、ARMサーバー部品を実験していました。 Texas Instruments、ザイリンクス、マーベルもARMサーバーの部品を調査しています。

これらの企業のいくつかはカスタムARMコアにも取り組んでいますが、現在利用可能なApple以外の64ビットカスタムARMコアは、Nvidiaのデンバーだけです。

ARMカスタムコアとは何ですか?

ほとんどの人がCPUスペースを含むすべての業界のニッチを追跡するのに悩むことはできないことを知っているので、ARMコアの違いと、カスタムコアが実際に何であるかを説明する良い機会になると思います。 プロセッサを分析してx86とARM命令セットの違いを説明することはしませんが、ビジネスの観点から違いを概説します。

ご存知のように、ARMは異なる命令セットを使用しているという理由だけで違いはありませんが、それは迅速でオタクな説明になりますが、私の意見では、Intel、AMD、ARMの最大の違いはアーキテクチャではなく、ビジネスモデルです。 さらに、アーキテクチャが変更され、新しいCPU設計が定期的に発表されますが、そのテクノロジのマーケティングとライセンス供与に対するARMのアプローチは何年も変わっていません。

これが簡単な例です。

Intelプロセッサは、Intel命令セットを使用してIntelによって開発されています。 インテルのファウンドリで製造され、 「インテル・インサイド」のブランドでパッケージ化されて出荷されます。 単純に聞こえるかもしれませんが、何十年にもわたってR&Dに費やされた数十億ドル、またはIntelが製造のために独自のファブに依存しているという事実を忘れないでください(14nmファウンドリの市場にいる場合は、余裕があることを確認してくださいチップファブは原子力空母と同じくらいの費用がかかるので、あなたに変更を加えてください)。

ARM製品はどうですか? ええと、ARMはチップメーカーではなく、チップデザイナー、または「ファブレス」チップ会社であるため、製造を扱っておらず、自社ブランドのチップを販売していません。 ARMはもっと面白いものを販売しています:知的財産。 これは、ARMクライアントがさまざまなライセンスプランのいずれかを選択して、独自の設計を開始できることを意味します。 それらのほとんどはARMの社内設計(CortexシリーズCPU、MaliシリーズGPU)を選択しているため、製造するすべてのCPU/GPUコアに対してライセンス料を支払います。

ただし、クライアントはこれらのすぐに使用できるCPUのライセンスを取得する必要はありません。 代わりにアーキテクチャセットのライセンスを取得し、ARM命令セットに基づいてカスタムコアを開発できます。 これはAppleが行っていることです。 ARMv8命令セットを使用して、iOSデバイス用の大きくて強力な64ビットCPUコアを構築します。 NvidiaのDenverCPUはこの点で類似しており、Qualcommのカスタムコア(32ビットKraitおよび64ビットKryoシリーズ)も同様です。

カスタムCPUコアの設計は簡単ではありません。 チップ設計者が仕事を休んでいて、Craigslistでカスタムプロセッサを設計することを提案しているわけではないので、このアプローチは通常、それを実現するために必要な技術的、財政的、および人的資源を持っている大企業のために予約されています。 したがって、ほとんどの企業は、代わりに既製のARM Cortexコアを使用しています(64ビットのCortex-A57コアはサーバー環境で使用でき、ほとんどの次世代ARMサーバープロセッサで使用されています)。

事実上ARMベースのチップはカスタム設計されていますが、ほとんどで使用されているCPUコアはカスタム設計されていないことに注意することが重要です。

ARMプロセッサの大部分は、カスタムCPUコアではなく、標準のARM CPU設計(Cortex CPU)に依存しています。 つまり、チップメーカーは、カスタムCPUコアを開発することなく、ARM CPUコア、サードパーティGPU、およびその他のコンポーネントのいずれかを選択し、ニーズに合わせてプロセッサを調整できます。 これは、アーキテクチャをより柔軟にするための安価な方法であり、エンジニアリングよりもARMのライセンスポリシーと関係があります。

AMDのOpteronA1100などの新世代の64ビットARMサーバープロセッサは、印象的な機能セットを誇っています。

AMDのOpteronA1100などの新世代の64ビットARMサーバープロセッサは、印象的な機能セットを誇っています。
つぶやき

また、最新のARM 64ビットCPUアーキテクチャに基づくこれらの今後のARMサーバーは、何年も前の実験的なARMサーバーとあまり共通点がないことに注意することも重要です。 たとえば、同僚の1人がScaleway ARMサーバーで遊んでいましたが、それらはARMv7プロセッサに基づいており、ハードウェアにいくつかの制限があります(たとえば、Scalewayは共有I / Oコントローラーを使用し、64ビットサポートの欠如により別のサーバーが作成されました一連の課題)。 新世代のARMベースのサーバーは、これらの歯が生える問題に悩まされることはありません。 機能と標準の点で、Intelハードウェアにはるかに近いものです。

ARMサーバーの長所と短所

ARMサーバーの問題は、小さなニッチに使用される傾向があり、どのサーバーでも使用できる小さな開発者には適していないことです。 一部の大企業はそれらを魅力的だと感じていますが、現在利用可能なARMサーバーは、ほとんどの個々の開発者には適していません。

ただし、今後のサーバーソリューションは異なり、より多くのニッチにアピールする必要があります。 これは、彼らをはるかに広いユーザーベースにアピールさせることができるものです:

  • ハードウェアコストの削減、潜在的に優れた効率(1ドルあたりのパフォーマンス、1ワットあたりのパフォーマンス)。
  • 人気のあるポートの互換性と可用性の向上。
  • 最先端のテクノロジーと新しい業界標準のサポート。
  • 特定のタイプのワークロード(単純だがマルチスレッドのロード)で優れている能力。
  • x86スペースよりも、競争と製品の多様性が高まる可能性があります。

ハードウェアがまだリリースされていないため、この段階では、これらのポイントのいくつかは理論上のものであることを強調する必要があります。 ただし、今後数四半期で何が起こるかを明確に主張することはできませんが、新しい種類のARMサーバーがこれらの(およびそれ以上の)メリットをもたらすと確信しています。 なぜ私はそんなに自信があるのですか? そうですね、違いを生む可能性がなければ、ARM、Qualcomm、AMD、およびその他の企業は、開発に時間を浪費してお金を費やすことはありません。

では、ARMサーバーの欠点はどうでしょうか。 かなりの数があり、それらのいくつかは大きいです。 幸いなことに、業界はそれらに対処するために一生懸命取り組んでいます。

  • ヒットアンドミスソフトウェアサポート
  • 可用性、潜在的な展開の問題
  • ROIの懸念
  • 小さな生態系
  • 古い習慣は一生懸命に死ぬ

ソフトウェア関連の問題は、おそらく最大の差し迫った懸念事項になるでしょう。 多くの一般的なサービスがARMサーバーで実行されますが、ソフトウェアのサポートが問題になります。 単に新しいハードウェアに移植するだけでは十分ではありません。 パフォーマンスの低下や障害が発生しないように、すべてが適切に機能することを確認する必要があります。 言い換えれば、移植されたソフトウェアは成熟している必要があります。 バグのある基盤の上に構築されたサービスを開発して展開する人は誰もいません。

ARMサーバーのエコシステムは小さいですが、多くの有名な業界名がすでに参加しています。

ARMサーバーのエコシステムは小さいですが、多くの有名な業界名がすでに参加しています。
つぶやき

サーバー市場ですべてのお金を稼ぐことで、急速な進歩が見られると期待されますが、常にそうであるとは限りません。 新しいハードウェアを採用し、その上で実行されるすべてのソフトウェアを微調整することは決して容易ではなく、ペースは市場の採用に依存します。 ARMサーバーエコシステムのサイズは(非常に)制限されており、短期的にはいくつかの新しいプロセッサが大きな違いを生むとは思えません。 ARMやQualcommのような影響力のある企業は、ARMサーバーの需要が回復するのを見ることに既得権益を持っていますが、ソフトウェアについてできることはあまりありません。 彼らはソフトウェア開発者にほとんど影響を与えないので、既存の製品にARMサポートを追加するように強制することはできません。

簡単に言うと、スタックをよく見て、ARMハードウェアですべてが正しく実行されるかどうかを確認してください。 十分な時間があれば、開発者はARMハードウェアのサポートを追加し始めますが、これは高速なプロセスではありません。 新しいアーキテクチャを考慮に入れるためにフレームワークとアプリケーションを微調整する必要があります。十分な数のARMサーバーが存在するまで(数年かかる場合があります)、それらの多くは気にしないでしょう。 レガシーソフトウェアのサポートは、もう1つの明らかな問題です。

これは次のポイントに私たちをもたらします:市場の可用性と潜在的な展開の問題。 ARMサーバーはそれほど多くないため、選択肢は限られており、可用性も限られています。 1、2年後には、ARMベースのホスティングパッケージが多数提供される可能性がありますが、それほど多くはありません。 さらに悪いことに、これらのサーバーが世界の特定の地域に集中し、一部の開発者にとって魅力が低下する可能性があります。 展開に関連する未知数がたくさんあるので、物事がどのように展開するかを言うのはまだ時期尚早です。

採用が遅いと、別の一連の課題が発生する可能性があります。 これらはARMサーバーに限定されていません。 それらはほとんどのエンタープライズテクノロジーに適用されます。 多くの組織がARMサーバーを使用する可能性を探求する必要がありますが、それは必ずしも実際にARMサーバーを使用することを意味するわけではありません。 十分な開発と消費者の需要を確保するために、市場での採用は着実に成長する必要があります。 そうでなければ、リスクを嫌う人々はおそらく遠ざかり、様子見のアプローチを取ります。 もう1つの潜在的な問題は経済的です。開発者がエコシステムが十分に速く成長していることを確信していない場合、潜在的な利益は単に努力する価値がないと結論付けるかもしれません。

これらの古い習慣はどうですか? サーバースペースは急速に進化しないため、人々は実績のあるプラットフォーム、つまりx86ハードウェアに固執する傾向があります。 モットーは単純です:それが壊れていなければ、それを直さないでください。 業界のベテランは、ARMサーバーをチャンスと見なし、ギャンブルをするかもしれません。 複雑なプロジェクトの一部を、多くの人々がまだテストされていない、または未成熟なハードウェアプラットフォームとして認識しているものに結び付けるには、かなりの勇気と自信が必要です。 少なくともこれほど早い段階では、多くの人が思い切って進んで行かないのではないかと心配しています。

明るい未来と誇大広告のピンチ

私は大人の人生の大部分を最先端のシリコンに費やしてきました。ARMサーバーに対する私の個人的な見解は、ARMサーバーには多くの可能性があるということですが、すべての人に適しているわけではありません。 インフラストラクチャに安価なビルディングブロックを提供し、ニッチなサーバーワークロードを処理することで、明日のインターネットで重要な役割を果たすことができます。

しかし同時に、ARMサーバーが誇大宣伝されがちであるという感覚から逃れることはできません。 それにもかかわらず、私はそれらを流行とは見ていません。 彼らはここにとどまると思いますが、ベンダーは新しいアーキテクチャから真に恩恵を受けることができるいくつかの特定のニッチを切り開く必要があります。

言い換えれば、ARMに基づく単純なLAMP Webホスティングサーバーはあまり見られませんが、よりエキゾチックなニッチ(そしていくつかのひどく退屈なもの)でそれらの負荷を見ることができます。 ARMプロセッサは、特定の負荷、特にCPUにバインドされていない多数の小さな物理CPUコアを利用できる負荷に最適です。 それほど多くはないように聞こえるかもしれませんが、これは実際には、データロギング、大量の単純なクエリ、特定の種類のデータベース、さまざまなストレージサービスなど、多くの潜在的な用途をカバーしています。

続けて、ARMサーバーのさまざまなユースケース、長所と短所、および潜在的な問題をリストすることもできますが、結局のところ、ARMサーバーの採用は古き良き現金に依存するのではないかと思います。 テクノロジーはさておき、ARMサーバーは、経済的なコンポーネントがチェックアウトした場合にのみ意味があります。 言い換えれば、彼らが彼らの存在を正当化するためには、彼らはx86プロセッサよりもはるかに多くの価値を提供しなければならないでしょう。

これが多かれ少なかれこの新しいアーキテクチャをサーバー業界に導入することの要点なので、魅力的な価格設定を期待していますが、確実にわかるまでには数か月かかるでしょう。