(57)【特許請求の範囲】
【請求項１】
再構成可能なサーバーであって、
プロセッサアレイを有するプロセッサモジュールであって、前記プロセッサアレイは、メインメモリに接続され、複数のＰＣＩｅチャネル及び複数のＯｐｅｎＣＡＰＩチャネルを有する、プロセッサモジュールと、
複数のＯｐｅｎＣＡＰＩチャネルのうちの１つに接続されるニアメモリアクセラレータモジュールであって、該ニアメモリアクセラレータモジュールは、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）であるプログラマブル論理デバイス（ＰＬＤ）を有し、該ＰＬＤは、前記プロセッサアレイに接続された複数のＯｐｅｎＣＡＰＩチャネルのうちの１つに接続され、前記ＰＬＤは、所定の数のＰＣＩｅレーンを用いてＰＣＩｅスイッチに接続され、該ＰＣＩｅスイッチは、実質的に前記所定の数のＰＣＩｅレーンを用いてニアメモリモジュールに接続され、前記ＰＬＤと前記ニアメモリモジュールとの間の帯域幅は、前記ＰＬＤと前記プロセッサアレイとの間の帯域幅に実質的に等しい、ニアメモリアクセラレータモジュールと、を備えた、再構成可能なサーバー。
【請求項２】
前記プロセッサアレイと前記ＰＬＤとの間の前記帯域幅が、毎秒約２５ギガバイト（ＧＢ／ｓ）である、請求項１に記載の再構成可能なサーバー。
【請求項３】
前記ＰＬＤと前記ニアメモリモジュールとの間の前記帯域幅が、約３２ＧＢ／ｓである、請求項２に記載の再構成可能なサーバー。
【請求項４】
複数の前記ニアメモリアクセラレータモジュールが存在し、該複数のニアメモリアクセラレータモジュールのそれぞれは、前記ＯｐｅｎＣＡＰＩチャネルのうちの１つに接続されている、請求項１に記載の再構成可能なサーバー。
【請求項５】
前記プロセッサアレイと前記ニアメモリモジュールのそれぞれとの間の接続が、１００ＧＢ／ｓの帯域幅を提供する、請求項４に記載の再構成可能なサーバー。
【請求項６】
前記プロセッサアレイと前記ニアメモリモジュールのそれぞれとの間の接続が、２００ＧＢ／ｓの帯域幅を提供する、請求項４に記載の再構成可能なサーバー。
【請求項７】
前記プロセッサアレイから延在する複数のＰＣＩｅチャネルの一部に接続されるＰＣＩｅエキスパンダモジュールを更に備え、該ＰＣＩｅエキスパンダモジュールは、第２のＰＣＩｅスイッチであって、前記プロセッサアレイからの複数のＰＣＩｅチャネルの前記一部を、前記第２のＰＣＩｅスイッチと前記複数のニアメモリアクセラレータモジュール内のＰＬＤとの間に延在するＰＣＩｅチャネルに接続する、第２のＰＣＩｅスイッチを含む、請求項４に記載の再構成可能なサーバー。
【請求項８】
前記ニアメモリアクセラレータモジュールが、前記ＰＬＤに接続されるコネクタを更に含み、該コネクタは、別のサーバーに接続されるように構成され、１００Ｇｂｐｓデータレートをサポートする、請求項１に記載の再構成可能なサーバー。
【請求項９】
前記コネクタが、クアッドスモールフォームファクタプラガブル（ＱＳＦＰ）型コネクタである、請求項８に記載の再構成可能なサーバー。
【請求項１０】
再構成可能なサーバーであって、
プロセッサアレイを有するプロセッサモジュールであって、前記プロセッサアレイは、メインメモリに接続され、複数のＰＣＩｅチャネル及び複数のＯｐｅｎＣＡＰＩチャネルを有する、プロセッサモジュールと、
フィールドプログラマブルゲートアレイ（ＦＰＧＡ）である第１のプログラマブル論理デバイス（ＰＬＤ）を有するハードウェアプレーンモジュールであって、前記第１のＰＬＤは、前記複数のＯｐｅｎＣＡＰＩチャネルに接続されている、ハードウェアプレーンモジュールと、
前記第１のＰＬＤに接続される複数のニアメモリアクセラレータモジュールであって、該ニアメモリアクセラレータモジュールのそれぞれは、第２のＰＬＤを有し、該第２のＰＬＤは、前記第１のＰＬＤに接続され、前記第２のＰＬＤのそれぞれは、所定の数のＰＣＩｅレーンを用いてＰＣＩｅスイッチに接続され、該ＰＣＩｅスイッチのそれぞれは、実質的に前記所定の数のＰＣＩｅレーンを用いてニアメモリモジュールに接続され、前記第２のＰＬＤと対応する前記ニアメモリモジュールとの間の帯域幅は、前記第２のＰＬＤと前記第１のＰＬＤとの間の帯域幅に実質的に等しい、複数のニアメモリアクセラレータモジュールと、を備える、再構成可能なサーバー。
【請求項１１】
前記第１のＰＬＤと複数の前記第２のＰＬＤのそれぞれとの間の接続が、１００ＧＢ／ｓの帯域幅を提供する、請求項１０に記載の再構成可能なサーバー。
【請求項１２】
前記ハードウェアプレーンモジュールが、前記第１のＰＬＤに接続されるコネクタアレイを含み、該コネクタアレイは、外部デバイスに接続されるように構成された複数のコネクタを含む、請求項１０に記載の再構成可能なサーバー。
【請求項１３】
前記複数のコネクタのそれぞれが、１００ＧＢ／ｓの帯域幅を前記外部デバイスに提供する、請求項１２に記載の再構成可能なサーバー。
【請求項１４】
前記ニアメモリアクセラレータモジュールのそれぞれが、外部デバイスに接続されるように構成されたコネクタを含む、請求項１２に記載の再構成可能なサーバー。
【請求項１５】
前記プロセッサアレイから延在する前記複数のＰＣＩｅチャネルの一部に接続されたＰＣＩｅエキスパンダモジュールを更に備え、該ＰＣＩｅエキスパンダモジュールは、第２のＰＣＩｅスイッチであって、前記プロセッサアレイからの前記複数のＰＣＩｅチャネルの前記一部を、前記第２のＰＣＩｅスイッチと前記複数のニアメモリアクセラレータモジュール内の前記第２のＰＬＤとの間に延在するＰＣＩｅチャネルに接続する、第２のＰＣＩｅスイッチを含む、請求項１２に記載の再構成可能なサーバー。
【請求項１６】
サーバーラックであって、
スイッチと、
該スイッチに接続される複数のサーバーであって、該サーバーのうちの少なくとも１つは、再構成可能なサーバーであり、
プロセッサアレイを有するプロセッサモジュールであって、前記プロセッサアレイは、メインメモリに接続され、複数のＰＣＩｅチャネル及び複数のＯｐｅｎＣＡＰＩチャネルを有する、プロセッサモジュールと、
フィールドプログラマブルゲートアレイ（ＦＰＧＡ）である第１のプログラマブル論理デバイス（ＰＬＤ）を有するハードウェアプレーンモジュールであって、前記第１のＰＬＤは、前記複数のＯｐｅｎＣＡＰＩチャネルに接続され、前記ハードウェアプレーンモジュールは、前記第１のＰＬＤに接続されるコネクタアレイを含み、該コネクタアレイは、外部デバイスに接続されるように構成された複数のコネクタを含む、ハードウェアプレーンモジュールと、
前記第１のＰＬＤに接続される複数のニアメモリアクセラレータモジュールであって、該ニアメモリアクセラレータモジュールのそれぞれは、第２のＰＬＤを有し、該第２のＰＬＤは、前記第１のＰＬＤに接続され、前記第２のＰＬＤのそれぞれは、所定の数のＰＣＩｅレーンを用いてＰＣＩｅスイッチに接続され、該ＰＣＩｅスイッチのそれぞれは、実質的に前記所定の数のＰＣＩｅレーンを用いてニアメモリモジュールに接続され、前記第２のＰＬＤと対応する前記ニアメモリモジュールとの間の帯域幅は、前記第２のＰＬＤと前記第１のＰＬＤとの間の帯域幅に実質的に等しい、複数のニアメモリアクセラレータモジュールと、を含む、再構成可能なサーバーである、複数のサーバーと、を備え、
他の複数のサーバーのうちの少なくとも１つは、前記複数のコネクタのうちの１つを経由して前記ハードウェアプレーンモジュールに接続されている、サーバーラック。
【請求項１７】
前記少なくとも１つのサーバーが、前記プロセッサアレイから延在する前記複数のＰＣＩｅチャネルの一部に接続されるＰＣＩｅエキスパンダモジュールを更に含み、該ＰＣＩｅエキスパンダモジュールは、第２のＰＣＩｅスイッチであって、前記プロセッサアレイからの前記複数のＰＣＩｅチャネルの前記一部を、前記第２のＰＣＩｅスイッチと前記複数のニアメモリアクセラレータモジュール内の前記第２のＰＬＤとの間に延在するＰＣＩｅチャネルに接続する、第２のＰＣＩｅスイッチを含む、請求項１６に記載のサーバーラック。
【請求項１８】
前記複数のコネクタが、集合的に１００ＧＢ／ｓの帯域幅を提供する、請求項１６に記載のサーバーラック。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、２０１７年５月１５日に出願された米国特許仮出願第６２／５０６，３７４号に対する優先権を主張する。
【０００２】
本開示は、データセンタの分野に関し、より具体的には、性能を改善するためにサーバーで使用され得る特徴に関する。
【背景技術】
【０００３】
サーバーラックは、データセンタ内で一般的な場所である。データセンタが効果的に機能するために、いくつかの種類の一貫したアーキテクチャが望ましい。１つの典型的な構成は、リーフスパイントポロジとして知られている。このような構成では、スイッチは、パッシブケーブルを用いて同一ラック内の全てのサーバーと通信し、ラックはリーフと見なされる。スイッチは、光ケーブル経由でデータセンタ「スパイン」と通信し（銅媒体を効果的に使用して信号を伝送するには距離及び信号周波数が大きすぎるため）、スパインは、様々なラック／ＴＯＲスイッチ間の通信を可能にする。スパインはまた、データセンタの外部での通信を可能にするコアと通信する。このような構成の一実施形態を図１に示す。
【０００４】
図２〜図２Ｄは、ＯＰＥＮＣＡＰＩ規格の一部である既知の構成を有するサーバー１の特徴を示し、図示のサーバー１は、ラック内に位置付けられ、スイッチに接続され得る。より具体的には、サーバー１は、ネットワークインターフェースカード（ＮＩＣ）特定用途向け集積回路（ＡＳＩＣ）（集合的にＢ）に接続されたＰＣＩｅ通信の１６チャネルを有するリンク７を含み、これは、サーバーとスイッチとの間の接続を提供し得る（図１に示すとおり）。サーバー設計に典型的であるように、マザーボード（ＭＢ）（Ａとラベル付けされている）は、プロセッサ用アクセスが高速かつ迅速なメインメモリと、アクセスが低速のニアメモリと、を有する。大部分の作業はメインメモリで行い得るが、特定のタスクは、ニアメモリへのアクセスを必要とする。ニアメモリにアクセスするために、ＭＢは、プロセッサ（ＰＯＷＥＲ  ９として示される）を接続するシリアルアドバンスドテクノロジアタッチメント（ＳＡＴＡ）コントローラを有し、ＳＡＴＡコントローラは、エキスパンダボード（Ｃとして示される）を経由してプロセッサをニアメモリカード（ソリッドステートドライブ（ＳＳＤ）のアレイを含み得る）（Ｄとして示される）に接続する。ＳＡＴＡ接続のため、帯域幅は、それぞれのＳＳＤに比較的制限されるため、サーバーは、ニアメモリへのより多くの帯域幅が有益となるタスクに可能な性能を提供しない。結果として、ある特定の個人は、サーバーの構成の仕方に対する更なる改善を高く評価するであろう。
【発明の概要】
【課題を解決するための手段】
【０００５】
ラックシステム内のサーバーは、ＣＰＵとニアメモリモジュールとの間の改善された接続性、並びに、ニアメモリモジュールとラックシステム内のスイッチとの間のより直接的な接続を含むように構成され得る。帯域幅の増加が可能になり、サーバーの効率的な動作を損なわせるボトルネックを実質的に除去することが可能になる、プログラマブル論理デバイス（ＰＬＤ）が提供され得る。ＰＬＤは、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）によって提供され得る。
【０００６】
一実施形態では、プロセッサモジュールは、複数のニアメモリアクセラレータモジュールに直接接続されるプロセッサアレイを含む。ニアメモリアクセラレータモジュールはそれぞれ、プロセッサモジュール上のプロセッサアレイと、ニアメモリアクセラレータモジュール上に提供されるニアメモリモジュールとの間のはるかに高い帯域幅を確保するのに役立つ、ＰＬＤ及びＰＣＩｅスイッチを含む。
【０００７】
プロセッサモジュールは、多数のＰＣＩｅチャネルを含み、一実施形態では、ＰＣＩｅエキスパンダモジュールは、ＰＬＤとプロセッサアレイとの間に代替経路を提供するために提供され得る。複数のＰＣＩｅチャネルは、ＰＣＩｅエキスパンダモジュールに接続され得、ＰＣＩｅスイッチは、複数のＰＣＩｅチャネルの一部を、ニアメモリアクセラレータモジュール内のＰＬＤのそれぞれに接続し得る。
【０００８】
別の実施形態では、プロセッサアレイを有するプロセッサモジュールは、第１のＰＬＤを有するハードウェアプレーンモジュールに接続される。ハードウェアプレーンモジュールは、第１のＰＬＤに接続される複数のコネクタを含み、これらのコネクタは、外部デバイスに接続されるように構成される。第１のＰＬＤはまた、ニアメモリアクセラレータモジュール内の第２のＰＬＤに接続される。ニアメモリアクセラレータモジュールは、ソリッドステートドライブ（ＳＳＤ）のアレイを含むニアメモリモジュールを含み、第１のＰＬＤ及び第２のＰＬＤが直接接続されているため、プロセッサアレイとニアメモリモジュールとの間に高帯域幅を提供する。
【０００９】
プロセッサモジュールは、多数のＰＣＩｅチャネルを含み、一実施形態では、ＰＣＩｅエキスパンダモジュールは、第２のＰＬＤとプロセッサアレイとの間に代替経路を提供するために提供され得る。複数のＰＣＩｅチャネルは、ＰＣＩｅエキスパンダモジュールに接続され得、ＰＣＩｅエキスパンダモジュール内のＰＣＩｅスイッチは、複数のＰＣＩｅチャネルの一部を、ニアメモリアクセラレータモジュール内の第２のＰＬＤのそれぞれに接続し得る。
【図面の簡単な説明】
【００１０】
本出願は、添付図面において一例として図解され、限定するものではなく、図面中、同様の参照番号は類似の要素を示す。
【００１１】
【図１】既知のデータセンタ構成の概略図である。
【図２】既知のサーバー構成の概略図である。
【図２Ａ】図２に示すサーバー構成のプロセッサモジュールの概略図である。
【図２Ｂ】図２に示すサーバー構成のネットワークインターフェースカード（ＮＩＣ）の概略図である。
【図２Ｃ】図２に示すサーバー構成のエキスパンダボードの概略図である。
【図２Ｄ】図２に示すサーバー構成のニアメモリモジュールの概略図である。
【図３】ハードウェアプレーンを有する改善されたサーバーアーキテクチャの概略図である。
【図４】改善されたサーバー構成の概略図である。
【図４Ａ】図４の改善されたサーバー構成のニアメモリアクセラレータモジュールの概略図である。
【図４Ｂ】図４の改善されたサーバー構成のプロセッサモジュールの概略図である。
【図４Ｃ】図４の改善されたサーバー構成のＰＣＩｅエキスパンダモジュールの概略図である。
【図５】別の改善されたサーバー構成の概略図である。
【図５Ａ】図５の改善されたサーバー構成のハードウェアプレーンモジュールの概略図である。
【図５Ｂ】図５の改善されたサーバー構成のプロセッサモジュールの概略図である。
【図５Ｃ】図５の改善されたサーバー構成のＰＣＩｅエキスパンダモジュールの概略図である。
【図５Ｄ】図５の改善されたサーバー構成のニアメモリアクセラレータモジュールの概略図である。
【発明を実施するための形態】
【００１２】
以下の発明を実施するための形態は、例示的な実施形態を説明するものであり、開示された特徴は、明示的に開示された組み合わせに限定することを意図しない。したがって、別途記載のない限り、本明細書で開示される特徴は、一緒に組み合わせて、簡潔さのために別途示されることがなかった、追加の組み合わせを形成することができる。
【００１３】
図から理解され得るように、開示されたシステムの利点の１つは、先行技術と比較して、構成要素及びプロトコル間の変換が低減することである。例えば、図２に示す設計は、ＳＡＳ／ＳＡＴＡプロトコルに変換されるＰＣＩｅチャネルを有し、次いで、エキスパンダボードを使用して、ソリッドステートドライブ（ＳＳＤ）のアレイに接続している。比較すると、図示のシステムは、プロセッサとＰＬＤとの間に効率的かつ直接的なＯｐｅｎＣＡＰＩチャネルを有し、次いで、ＰＬＤとニアメモリモジュールとの間にＰｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ（周辺構成要素相互接続エクスプレス（ＰＣＩｅ））チャネルを使用している。ＰＣＩｅチャネルは、待ち時間を最小限に抑える周知の高性能チャネルである。ＯｐｅｎＣＡＰＩチャネルは、ＯｐｅｎＣＡＰＩ規格によって定義され、データを送信するための高速経路を可能にする。これにより、直列接続の数が低減される。具体的には、マザーボードとエキスパンダカード及びエキスパンダカードとニアストレージとの間の接続を有する、図２〜図２Ｄに示される設計とは異なり、図示の設計は、ニアストレージカードとプロセッサアレイとの間の直接接続、又はプロセッサアレイと、異なるソースからの情報を統合し得るハードウェアプレーンモジュールとの間の方向接続のいずれかを可能にする。一般に、図示の設計は挿入損失であり、より低い電力伝送器を可能にし、コスト及び電力使用を削減するはずである。
【００１４】
図３は、既知のサーバーと比較して、向上した性能及びストレージへのアクセシビリティを提供する代替構成を有するサーバー１５の概略図を示している。図３に示されるデータレートは、送信帯域幅と受信帯域幅との和を指すことに留意されたい。一貫性のために、本明細書における帯域幅という用語の使用は、同じ帯域幅が反対方向に延在するという理解の下に、単一方向の帯域幅（例えば、送信帯域幅）を指す。
【００１５】
図３から理解され得るように、メインメモリ２０は、プロセッサアレイを含み得るプロセッサアレイ２５に接続される。ＰＯＷＥＲ９プロセッサが記載されているが、任意の好適なプロセッサが機能し得ることに留意されたい。プロセッサアレイ２５は、サーバー１５がスイッチと通信することを可能にする（ゆえに、図１に示される既存の構成と互換性を保つ）ために、ネットワークインターフェースカード（ＮＩＣ）に接続される。プログラマブルハードウェアプレーン３５（フィールドプログラマブルゲートアレイ（ＦＰＧＡ）を含む）は、プロセッサアレイ２５をストレージアクセラレータ４０に接続し、図示のとおり、ストレージアクセラレータ４０もＦＰＧＡを含む。ストレージアクセラレータ４０は、次に、長期記憶に好適なメモリを含む、ニアメモリモジュール４５に接続される。ニアメモリモジュール４５は、ソリッドステートドライブ（ＳＳＤ）又は高密度メモリモジュール（ＤＭＭ）が実装されているものとして示されていることに留意されたい。ＤＭＭは、パラレルＬＰＤＤＲ３メモリにアクセスするＦＰＧＡを含むハイブリッドメモリモジュールであり、ＤＭＭの様々なバージョンが利用可能であり、ＤＭＭの利点の１つは、従来のパラレルＤＲＡＭの制限を低減する、トランシーバ結合インターフェースにＤＲＡＭを「トランシーバ化（transceiverize）」する能力である。主要な課題は性能であるため、ＲＲＡＭ又は他の新しい形態のメモリを含む、所望の性能を提供する任意の他の好適なタイプのメモリも使用され得る。ゆえに、メモリのタイプ及び物理的構成は、限定することを意図するものではなく、任意のタイプのメモリ、並びにメモリタイプの組み合わせが、ニアメモリモジュール４５内に配置されてもよい。ニアメモリモジュール４５は、９６ＧＢ／ｓの帯域幅を最大限に利用することを可能にして、プロセッサアレイ２５を飽和状態に保つのに役立つ十分な帯域幅を有することが有用であるが、そのような構成されたニアメモリモジュール４５は必須ではない。
【００１６】
理解され得るように、この設計の１つの有意な利点は、プロセッサアレイ２５とニアメモリモジュール４５との間のはるかに高い帯域幅、並びにニアメモリモジュール４５と外部デバイス（リンク３２によって供給され得る）との間の帯域幅を可能にすることである。具体的には、プロセッサアレイ２５とハードウェアプレーンモジュール３５との間の帯域幅は、１００ギガバイト／秒（ＧＢ／ｓ）であり得、ハードウェアプレーンモジュール３５と外部ソース（リンク３２を介した）との間の帯域幅は、１００ＧＢ／ｓであり得、ハードウェアプレーンモジュール３５とニアメモリモジュール４５との間の帯域幅は９６ＧＢ／ｓであり得る。プログラマブルハードウェアプレーン３５は任意であり、代わりにプロセッサアレイ２５は、ストレージアクセラレータモジュール４０に直接接続され得ることにも留意されたい。しかしながら、プログラマブルハードウェアプレーン３５を使用する１つの利点は、プログラマブルハードウェアプレーン３５と、（ストレージアクセラレータモジュール経由の）ニアメモリモジュール４５、プロセッサモジュール２５、及び外部ソース（リンク３２経由で接続される）のうちの少なくとも１つとの間の高帯域幅をサポートする能力である。
【００１７】
理解され得るように、モジュール間で情報を共有できるよう、様々なリンクがモジュール間に提供される。従来、これらのリンクは、回路基板の一部である。性能を改善するため、モジュール間の様々なリンクは、最小限の損失（例えば、回路基板を使用するときに見られるものと比較して比較的低いレベルの挿入損失）及びより大きな距離にわたる望ましい信号完全性を可能にする、ケーブル接続によって提供され得る。製造及び組み立てを容易にする（並びに、可撓性を向上させ、アップグレード性を改善するため）ため、多くの場合、それぞれのモジュールは、回路基板などの別個の基板上に搭載されることが有用であるが、そのような構成は必須ではない。
【００１８】
特に断りのない限り、様々なブロック（モジュールの内部及び外部の両方）間の通信は、双方向であることを意図していることに留意されたい。ゆえに、ＰＣＩｅ  ４ｘ接続は、送信される４つのサブチャネル及び受信する４つのサブチャネルを有することになる。結果として、このような接続を提供するために使用される物理的構造は、送信を提供する４つの差動対及び受信を提供する４つの差動対の計８つの差動対を有することになる。その結果、コネクタは、少なくとも８対の差動信号ピンを有することになる。接地帰路及び時間調整のための追加の信号ピンは、所望に応じて追加されることが予想される。また、図のそれぞれに示されるＰＣＩｅレーンの数は、ＰＣＩｅチャネル毎の予想されるＰＣＩｅ性能に基づいて、所望の帯域幅を提供することを意図していることにも留意されたい。図３に示す性能を提供するために必要とされるＰＣＩｅチャネルの数は、ＰＣＩｅチャネルが１６Ｇｂｐｓ（Ｇｅｎ  ４の場合）又は８Ｇｂｐｓ（Ｇｅｎ  ３の場合）で動作しているかどうかに依存する。それぞれのＰＣＩｅチャネルの性能が変化する場合、ＰＣＩｅチャネルの数は、それに応じて、（より速い又は追加のＳＳＤのいずれかが全帯域幅を利用するために必要とされ得るという理解の下で）依然として所望の帯域幅を提供するように変更されてもよい。
【００１９】
図４〜図４Ｃは、相補的モジュールカードを有するサーバーの実施形態を示している。図４Ｂに示すようなプロセッサモジュール１３９（１つ以上のプロセッサであり得るプロセッサアレイ１４０をサポートするマザーボードＭＢを含む）。理解され得るように、Ｐｏｗｅｒ９プロセッサが示されており、多くの用途に好適であるが、意図された用途及びプロセッサの能力に応じて、いくつかの他のプロセッサも使用され得る。プロセッサアレイ１４０は、チャネル１４６に接続され（図示のように、それぞれのチャネルセットは、それぞれが２５Ｇｂｐｓの送信をサポートし得る８つのレーンを含む）に接続され、それぞれのチャネルセット１４６は、リンク１０５経由でニアメモリアクセラレータモジュール１２０（図４Ａに示される）に接続され、その結果、ニアメモリアクセラレータモジュール１２０のそれぞれは、プロセッサアレイ１４０との２００Ｇｂｐｓ帯域幅の接続を有し、プロセッサアレイ１４０とニアメモリアクセラレータモジュール１２０との間の総帯域幅は、１００ＧＢ／ｓとなる。当然のことながら、これは、それぞれのレーンのデータレートを倍増させることによって（例えば、２５Ｇｂｐｓから５０Ｇｂｐｓのレーンに切り替えることによって）倍増され得る。更に性能の改善は、データレートを再度倍増させることによって得られ得るが、当然のことながら、レーン毎の性能は、プロセッサアレイの能力及びニアメモリモジュールの性能によって制約され、ゆえに更なる帯域幅の増加は、追加の性能をもたらさない場合がある。
【００２０】
プロセッサアレイ１４０は、メインメモリ１４２（典型的には従来のＲＡＭの形態である）に接続され、ＰＣＩｅリンク１４８及び１つ以上のＲＪ４５コネクタを含み得るボードコントローラ１５０にも接続される。ＳＡＴＡコントローラ１５２はまた、プロセッサアレイ１４０に接続され得る。追加の機能性のために、プロセッサモジュール１３９はまた、ＰＣＩｅチャネル１４４を含み得、これらのチャネル１４４のいくつかは、リンク１１５経由でＰＣＩｅエキスパンダモジュール１５９に接続され得る。
【００２１】
理解され得るように、図示のＰＣＩｅエキスパンダモジュール１５９は、ＰＣＩｅスイッチとプロセッサモジュール１３９との間の１×１６チャネル１６６に接続されるＰＣＩｅスイッチ１６０と、コネクタ１６２に接続される４×４ＰＣＩｅチャネル接続１６４と、を含み、コネクタ１６２は、次に、リンク１１０によってニアメモリアクセラレータモジュール１２０に接続される。
【００２２】
ニアメモリ（メインメモリ１４２よりもやや遅く、より長い待ち時間を有するが、比較的大量の記憶領域を有することが予想される）への高帯域幅接続を提供するために、図示のニアメモリアクセラレータモジュール１２０は、コネクタバンク１２３経由でリンク１０５に接続されるプログラマブル論理デバイス（ＰＬＤ）１２２を含む。ＰＬＤ１２２は、ＦＰＧＡであり得、ＰＬＤ１２２が機能するためのメモリを提供するため、及びＰＬＤ１２２の所望の機能を記録するために、１つ以上のＤＩＭＭメモリモジュール１２４及びシステムオンチップ（ＳｏＣ）ＤＤＲ４を含み得る。ＰＬＤ１２２は、複数のＰＣＩｅチャネル（一実施形態では、３２個のＰＣＩｅチャネル）を経由してスイッチ１３０に接続され、スイッチ１３０は、次に、複数のＰＣＩｅチャネルを経由して複数のソリッドステートドライブ（ＳＳＤ）１３２（所望のＲＡＩＤ構成にあり得る）に接続される。一実施形態では、８つのＳＳＤドライブは、４つのＰＣＩｅチャネルの８つのセットを経由して接続されるが、それぞれのＳＳＤの性能に応じて、いくつかの他の数のドライブ及びチャネルが、所望の帯域幅を提供するために使用され得る。有利には、スイッチ１３０とそれぞれのＳＳＤ（不揮発性メモリエクスプレスすなわちＮＶＭｅドライブ又は任意の他の好適なドライブの形態であり得る）との間の帯域幅は、ＰＬＤ１２２がそれぞれのＰＬＤ１２２とプロセッサアレイ１４０との間の全ての帯域幅を実質的に使用できるようなものである。理解され得るように、ＰＬＤ１２２は、ＰＬＤ１２２とコネクタ１２８との間の２００Ｇｂｐｓ接続も飽和することを可能にするのに十分な帯域幅を有し得る。プロセッサアレイ１４０に接続された４つのニアメモリアクセラレータモジュール１２０が存在する実施形態では、４つの２００Ｇｂｐｓ接続は、プロセッサアレイ１４０とニアメモリアクセラレータモジュール１２０との間に合計１００ＧＢ／ｓの帯域幅を提供する。
【００２３】
ＰＬＤ１２２はまた、コネクタ１３４経由でリンク１１０に接続され、リンク１１０は、ＰＣＩｅエキスパンダモジュール１５９内のコネクタ１６２に接続される。プロセッサモジュール１３９とニアメモリアクセラレータモジュール１２０との間の通信を提供するためのリンク１１５及びリンク１１０の使用は、追加の帯域幅を可能にし、プロセッサアレイ１４０が、ニアメモリアクセラレータモジュール１２０内に記憶された情報へのアクセスを有するために有意な時間を待機する必要がないことを更に保証する。
【００２４】
ニアメモリアクセラレータモジュール１２０に記憶されている情報への接続性を更に改善するために、ニアメモリアクセラレータモジュール１２０はまた、サーバーの外部であり得る場所への高データレート対応接続１２８を含み得る。これにより、所望に応じて、ニアメモリアクセラレータモジュール１２０内に記憶された情報から、内部に記憶された情報への接続を提供し、アクセス可能にするスイッチ又はサーバーへの直接接続が可能になる。様々なブロック図に示されるコネクタは、必要な機能性及び性能を提供する限り、様々な異なるコネクタ構成（１つ以上の別個のコネクタを含む）であり得ることに留意されたい。図示のように、性能は、２００Ｇｂｐｓの集合帯域幅であるが、いくつかの他の量の帯域幅が提供され得る。
【００２５】
図５〜図５Ｄは、図３に提供される概略図と類似する別の実施形態を概略的に表わしている。理解され得るように、図５Ｂ、図５Ｃ、及び図５Ｄに示される特徴は、図４〜図４Ｃに示される特徴と類似している。より具体的には、図５Ｂに示されるプロセッサモジュール２１９は、図４Ｂに示されるプロセッサモジュール１３９と類似しており、図５Ｄに示されるニアメモリアクセラレータモジュール２６９は、図４Ａに示されるニアメモリアクセラレータモジュール１２０と類似しており、図に示されるＰＣＩｅエキスパンダモジュール２６０は、図４Ｃに示されるＰＣＩｅエキスパンダモジュール１５９と類似している。図４〜図４Ｃと図５〜図５Ｄとの間の主な違いは、ハードウェアプレーンモジュール２３９の包含である。
【００２６】
図５〜図５Ｄに示される実施形態は、プロセッサアレイ２２０とハードウェアプレーンモジュール２３９との間に１００ＧＢ／ｓの帯域幅を提供する。同様の帯域幅が、ハードウェアプレーンモジュール２３９とニアメモリアクセラレータモジュール２６９との間に提供される。上述したように、この帯域幅は、それぞれのレーンのデータレートを２倍増加させることによって倍増され得る。当然のことながら、２５Ｇｂｐｓの代わりに５０Ｇｂｐｓを提供するチャネルは、設計がより難しく、一般により高性能の構成要素を必要とするため、そのような変化は、総システムのコストを増加させる傾向にある。
【００２７】
図示のように、プロセッサモジュール２１９は、メインメモリ２２２に接続されたプロセッサアレイ２２０を含む。プロセッサアレイ２２０は、リンク２０９、２１１にそれぞれ接続されるＰＣＩｅチャネル２２３、２２４を有する。プロセッサアレイ２２０はまた、ＳＡＴＡコントローラ、並びにリンク２０７経由でハードウェアプレーンモジュール２３９に接続するために使用されるチャネル２２６（ＯｐｅｎＣＡＰＩチャネルであり得る）に接続される。プロセッサモジュール２１９はまた、ＵＳＢインターフェースモジュール２３０とのＵＳＢ接続性を含み、ＲＪ４５コネクタ経由で外部デバイスに接続され得るボード管理コントローラ２２７を有し得る。
【００２８】
ＰＣＩｅエキスパンダモジュール２６０は、リンク２１１に接続される１ｘ１６のＰＣＩｅチャネル２６６（接続は、ＰＣＩｅエキスパンダを差し込むエッジカードコネクタを経由し得る）と、コネクタ２６４に接続される４ｘ４のＰＣＩｅチャネル２６８と、を含むＰＣＩｅスイッチ２６２を含み、コネクタ２６４は、次にリンク２１３に接続される。
【００２９】
ニアメモリアクセラレータモジュール２６９は、１つ以上のＤＩＭＭモジュール２７２及びＳｏＣ  ＤＤＲ４モジュール２７３に接続されるＰＬＤ２７０を含む。リンク２１３に接続するため、ＰＬＤ２７０はコネクタ２８２に接続され、コネクタ２８２はＰＣＩｅ  ４ｘ接続をサポートし得る。ＰＬＤは、ＰＣＩｅスイッチ２７４に接続され、ＰＣＩｅスイッチ２７４は、次に、ニアメモリモジュール２７６（ＳＳＤのアレイであり得る）に接続される。ＰＬＤ２７０は、レーン２８１経由でコネクタ２８０に接続される。図示のように、ＰＣＩｅスイッチ２７４とＰＬＤ２７０との間に３２個のＰＣＩｅチャネルが存在し、ＰＣＩｅスイッチ２７４とニアメモリモジュール２７６との間にも３２個のＰＣＩｅチャネルが存在する。次いで、Ｇｅｎ  ３  ＰＣＩｅレーンが使用される場合、ニアメモリアクセラレータモジュール２６９毎の集合帯域幅は、２５６Ｇｂｐｓ又は３２ＧＢ／ｓである。これは、ハードウェアプレーンモジュール２３９に提供されるＰＬＤ２７０とＰＬＤ２４０との間の帯域幅よりもわずかに大きいが、実際には、スループット性能が維持されるように、ＰＬＤ２７０とオーバープロビジョニングされたニアメモリモジュール２７６との間にリンクを有することが有用であることがわかっている。ＰＬＤ２７０は、図示のように、差動対ごとに２５Ｇｂｐｓデータレート（合計２００Ｇｂｐｓ又は２５ＧＢ／ｓの帯域幅の場合）を提供するように設定された接続２８１を介して、コネクタ２８０経由でリンク２０５と通信する。図示のＰＬＤはまた、接続２７９を介して２つのコネクタ２７８に通信するように構成されている（上述のように、ＱＳＦＰ又はＮｅａｒＳｔａｃｋ型コネクタであり得るが、これに限定されない）。当然のことながら、より高い帯域幅を有するコネクタ（例えば、より多くの差動対を有する）が使用された場合、単一のコネクタを２つのコネクタ２７８に置換することができ、又は総帯域幅を増大させることができる。
【００３０】
注目すべきは、図４Ａ及び図５Ｄに示されるニアメモリアクセラレータモジュールは両方とも、内部又は外部通信のいずれかのポートを含むことである。これにより、ストレージアレイは、ラック内の他のスイッチ間又は他のサーバー間の通信としても機能することが可能になる。クアッドスモールフォームファクタプラガブル（ＱＳＦＰ）又はＮＥＷＳＴＡＣＫ（ＮＳ）として述べられるコネクタのインターフェースのタイプは、変更することができ、帯域幅要件を満たす任意のコネクタインターフェースで置き換えられ得ることに留意されたい。加えて、１００Ｇｂｐｓコネクタを提供するのではなく、帯域幅は、５０Ｇｂｐｓレーン（それぞれのレーン上でＮＲＶエンコーディングを使用する２５ＧｂｐｓからＰＡＭ  ４エンコーディングを使用する５０Ｇｂｐｓに切り替えることによって提供され得る）を使用することによって、又はレーンの数を倍増させ、ダブルクアッドスモールフォームファクタプラガブル（ＤＱＳＦＰ）コネクタを使用することによって、倍増され得る。当然ながら、上述のように、それぞれのレーンの帯域幅におけるこの同じ変更が、ＯｐｅｎＣＡＰＩレーンにも適用され得る。
【００３１】
ハードウェアプレーンを有しないニアメモリアクセラレータモジュールの使用は、外部デバイスにいくらかの追加の接続性を提供するのに役立つが、ハードウェアプレーンモジュール２３９の使用は、サーバー内のプロセッサと他のサーバー内のプロセッサ及びストレージとの間の相互接続性を実質的に向上させることを可能にし、また、１つ以上のスイッチへの接続性の向上をもたらす。そのような構成は、サーバーを隣接するサーバーに接続することがより容易になり、ハードウェアプレーンモジュールは、（ニアメモリアクセラレータモジュールのそれぞれへの完全アクセスをサポートするのに十分な）大量の帯域幅を提供するために拡張性を改善できる。当然のことながら、様々なモジュール間の接続の数は、必要に応じて変更され得る。加えて、ハードウェアプレーンモジュールと外部構成要素との間の接続の数も変更され得る。しかしながら、プロセッサモジュールとニアメモリアクセラレータモジュールとの間の帯域幅を、ニアメモリアクセラレータモジュールと外部ポイントとの間の帯域幅に等しく保つことが望ましい場合がある。任意のハードウェアプレーンモジュールは、この機能性を提供するのに役立つ。
【００３２】
図示のように、ハードウェアプレーンモジュール２３９は、従来のＲＡＭメモリが実装され得るメモリ２４２を有するＰＬＤ２４０を含み、また、ＯｐｅｎＣＡＰＩ  Ｄ−ＤＩＭＭ２４６（Ｄ−ＤＩＭＭは、Ｊｏｉｎｔ  Ｅｌｅｃｔｒｏｎ  Ｄｅｖｉｃｅ  Ｅｎｇｉｎｅｅｒｉｎｇ  ＣｏｕｎｃｉｌすなわちＪＥＤＥＣによって確定されているような示差的なＤＩＭＭであり得る）を含む。ＰＬＤ２４０は、リンク２０５（ニアメモリアクセラレータモジュールに接続する）、リンク２０７（ＯｐｅｎＣＡＰＩチャネル経由でプロセッサアレイに接続する）、及びリンク２０９（ＰＣＩｅチャネル経由でプロセッサアレイ２２０に接続する）に接続される。コネクタ２４４は、リンク２０５への物理的接続を提供し、コネクタ２５２はリンク２０７への物理的接続を提供し、コネクタ２５０は、リンク２０９への物理的接続を提供する。それぞれの場合において、コネクタ２４４、２５０、及び２５２は、１つ以上のケーブルコネクタを受容して接続するように構成され得、ゆえに、１つ又は複数のコネクタであり得る。理解され得るように、ＰＬＤ２４０は、プロセッサアレイ２２０から複数のニアメモリアクセラレータモジュール２６９に帯域幅を再分配する。
【００３３】
ＰＬＤ２４０はまた、外部デバイスとの通信に好適な多数のコネクタを含み得るコネクタアレイ２４８に接続される。８つの１００Ｇｂｐｓコネクタが示されているが、いくつかの他の数が提供され得る。コネクタアレイ２４８は、例えば、１００Ｇｂｐｓ性能のためにそれぞれ構成された８つのＱＳＦＰコネクタを含み得る。理解され得るように、外部デバイスへの８つの１００Ｇｂｐｓ通信リンクを有することにより、外部デバイスに１００ＧＢ／ｓの帯域幅が提供され、隣接するサーバー及び／又はスイッチ間のはるかに高い相互接続性が可能になり、ＰＬＤ２４０とプロセッサ２２０との間、又はＰＬＤ２４０とニアメモリモジュール２７６との間の帯域幅と実質的に一致する。
【００３４】
加えて、任意のハードウェアプレーンモジュールはまた、有意なソフトウェアオーバーヘッドを伴わないサーバーの再構成を可能にする。例えば、ハードウェアプレーンモジュール２３９は、隣接するサーバー内のハードウェアプレーンモジュールに接続され得、これにより、第１のサーバーは、第２のサーバーに利用可能なリソースをプロビジョニングすることが可能になる。一実施形態では、第１のサーバーは、それ自体でアクティビティを実行することを停止し、突然、１つのリソースも有していないように見え、代わりにプロセッサアレイが、第２のサーバーの制御下になり得る。第２のサーバーは、突然、倍のリソースを有することになり、並列処理に適したタスクをより迅速に完了させ得る。このように、改善されたサーバー構成は、可変負荷の迅速な処理を可能にする。したがって、図示のサーバーは、リソースのより迅速な共有、及び潜在的により効率的なタスクの完了のために、サーバーを一緒に接続するセカンダリネットワークの作製を可能にする。このハードウェア構成の変更は、システム全体を再起動することなく起こり得る。
【００３５】
図１に示す標準的な構成に戻ると、ハードウェアプレーンモジュール２３９の使用は、同じスイッチに接続されるサーバー間、並びに２つの異なるスイッチに接続されるサーバー間の相互接続性を可能にする。理解され得るように、このような接続性は、サーバーシステム全体がその可撓性を高め、様々な作業負荷をサポートすることを可能にし、当然のことながら、有意な可撓性を有するスイッチを用いた作業に好適である。
【００３６】
上述したように、ケーブルを使用して、様々なモジュールに接続することができる。一実施形態は、ハードウェアプレーンモジュール（含まれる場合）と、単一カード上に位置付けられた複数のニアメモリアクセラレータモジュールとを有する単一カードであり得る。代替的な実施形態では、ハードウェアプレーンモジュールは、第１のカードであり得、１つ以上のケーブルアセンブリを経由してＯｐｅｎＣＡＰＩチャネルに接続され得る。複数のニアメモリアクセラレータモジュールは、複数の第２のカード上に提供され得、第２のカードはそれぞれ、１つ以上のケーブルアセンブリ経由で第１のカードに接続され得る。したがって、理解され得るように、システムは高度な可撓性を提供し得る。１つの更なる潜在的利益は、第１及び第２のカード内のＰＬＤの再プログラムされる能力である。例えば、第１のカードは、ＯｐｅｎＣＡＰＩチャネルに使用されることが意図される場合、ＯｐｅｎＣＡＰＩプロトコルで機能するようにプログラムされる。同じ第１のカードはまた、ＰＣＩｅ  Ｇｅｎ３又は４又は５と共に動作する第２のシステムに潜在的に差し込まれ得、ＰＬＤが再プログラムされている限り、適切に機能し得る。当然のことながら、ケーブル接続は、異なるコネクタ構成に適応するように修正される必要がある場合があるが、カード自体は、適切にプログラムされると、依然として機能する。
【００３７】
本明細書で提供される開示は、その好ましい例示的な実施形態の観点で特徴を説明している。添付の請求項の範囲及び趣旨の範囲内で、数多くの他の実施形態、修正、及び変形が、本開示の検討から当業者に想起されるであろう。
【図１】
0006929446.tif 000002
【図２】
0006929446.tif 000003
【図２Ａ】
0006929446.tif 000004
【図２Ｂ】
0006929446.tif 000005
【図２Ｃ】
0006929446.tif 000006
【図２Ｄ】
0006929446.tif 000007
【図３】
0006929446.tif 000008
【図４】
0006929446.tif 000009
【図４Ａ】
0006929446.tif 000010
【図４Ｂ】
0006929446.tif 000011
【図４Ｃ】
0006929446.tif 000012
【図５】
0006929446.tif 000013
【図５Ａ】
0006929446.tif 000014
【図５Ｂ】
0006929446.tif 000015
【図５Ｃ】
0006929446.tif 000016
【図５Ｄ】
0006929446.tif 000017