JP5949188B2 - 密結合マルチプロセッサシステム - Google Patents

密結合マルチプロセッサシステム Download PDF

Info

Publication number
JP5949188B2
JP5949188B2 JP2012130428A JP2012130428A JP5949188B2 JP 5949188 B2 JP5949188 B2 JP 5949188B2 JP 2012130428 A JP2012130428 A JP 2012130428A JP 2012130428 A JP2012130428 A JP 2012130428A JP 5949188 B2 JP5949188 B2 JP 5949188B2
Authority
JP
Japan
Prior art keywords
mounting
coprocessor
expansion slot
interface card
external interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012130428A
Other languages
English (en)
Other versions
JP2013254405A (ja
Inventor
康之 那須
康之 那須
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012130428A priority Critical patent/JP5949188B2/ja
Priority to US13/910,282 priority patent/US9424223B2/en
Publication of JP2013254405A publication Critical patent/JP2013254405A/ja
Application granted granted Critical
Publication of JP5949188B2 publication Critical patent/JP5949188B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/409Mechanical coupling

Description

本発明は、複数のメインプロセッサをプロセッサ間インターフェイスで接続して構成される密結合マルチプロセッサシステム、およびその制御方法に関する。
コンピュータシステムの処理性能を向上させるために、主たる処理を司るプロセッサとは別に、特定分野に特化した演算を高速に実行するコプロセッサをハードウェア的に実装する手法がある。このようなコプロセッサの例として、GPGPU(General Purpose Graphic Processing Unit)がある。GPGPUは、グラフィック用のGPUを汎用の数値計算に利用できるようにしたものであり、代表的な製品に、Tesla(登録商標、NVIDIA社)やRadeon(登録商標、AMD社)がある。通常、GPGPUは、単独では利用できず、必ずCPU(Central Processing Unit)と組み合わせて利用する。より具体的には、外部機器からデータを主記憶に一旦ロードしてからCPUで処理を開始し、部分的にGPGPUに処理をオフロードする。GPGPUによって処理されたデータは、再び主記憶に格納される。しかし、外部機器からのデータを主記憶を経由してGPGPUに転送すると、データ転送時のオーバーヘッドが大きくなる。
そこで、外部機器とGPGPU等のコプロセッサ間におけるデータ授受のためのオーバーヘッドを短縮した密結合マルチプロセッサシステムの一例が特許文献1に記載されている。特許文献1に記載の密結合マルチプロセッサシステムは、複数のプロセッサコアを有するメインプロセッサと、主記憶と、外部機器との接続を行う入出力インターフェイス回路と、プロセッサエレメントとを有する(例えば特許文献1の図1参照)。
メインプロセッサが有する複数のプロセッサコアは、内部バスまたはクロスバースイッチにて接続されている。またメインプロセッサは、主記憶とはメモリバスを通じて接続される。さらにメインプロセッサは、入出力インターフェイス回路およびプロセッサエレメントとはPCI‐Express等の外部インターフェイスを通じて接続される。
プロセッサエレメントは、プロセッサコアからの命令により動作するコプロセッサである。またプロセッサエレメントは、大量のデータを処理するためのローカルメモリを有する。このローカルメモリは、プロセッサエレメントおよび各プロセッサコアから直接アクセスが可能である。またローカルメモリは、外部機器との接続を行う入出力インターフェイス回路との間で大量のデータをDMA(Direct Memory Access)転送することが可能である。
また特許文献1では、演算性能の一層の向上を図るために、複数のプロセッサエレメントを外部インターフェイスを通じて上記メインプロセッサに接続している(例えば特許文献1の図3参照)。
特開2010−272066号公報
特許文献1に記載されるようにGPGPU等のコプロセッサのローカルメモリと外部機器との接続を行う入出力インターフェイス回路との間で主記憶を介さずにデータを直接に転送することにより、外部機器とコプロセッサのローカルメモリとの間のデータ転送のレイテンシを短縮することができる。
しかしながら、性能の向上を図るためにコプロセッサの台数を増やす場合、特許文献1の図3に記載されるようにコプロセッサの数を単に増加させるだけでは、十分な性能の向上は期待できない。その理由は、同じ入出力インターフェイス回路を複数のコプロセッサで使用するため、コプロセッサあたりの転送速度が遅くなるためである。
本発明の目的は、上述したような課題、すなわちコプロセッサの数を単に増加させるだけでは十分な性能向上は望めない、という課題を解決する密結合マルチプロセッサシステムを提供することにある。
本発明の一形態にかかる密結合マルチプロセッサシステムは、
複数のメインプロセッサをプロセッサ間インターフェイスで接続して構成される密結合マルチプロセッサシステムであって、
それぞれの上記メインプロセッサは、
コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアを1組以上備える。
また、本発明の他の形態にかかる密結合マルチプロセッサシステムの制御方法は、
第1のコプロセッサ搭載用の拡張スロットと第1の外部インターフェイスカード搭載用の拡張スロットとを備える第1のメインプロセッサと、
上記第1のメインプロセッサとプロセッサ間インターフェイスで接続され、第2のコプロセッサ搭載用の拡張スロットと第2の外部インターフェイスカード搭載用の拡張スロットとを備える第2のメインプロセッサと
から構成される密結合マルチプロセッサシステムの制御方法であって、
上記第1のコプロセッサ搭載用の拡張スロットに接続された第1のコプロセッサと上記第1の外部インターフェイスカード搭載用の拡張スロットに接続された第1の外部インターフェイスカードにさらに接続された第1の外部機器との間で、DMA方式による第1のデータ転送を行い、
上記第2のコプロセッサ搭載用の拡張スロットに接続された第2のコプロセッサと上記第2の外部インターフェイスカード搭載用の拡張スロットに接続された第2の外部インターフェイスカードにさらに接続された第2の外部機器との間で、DMA方式による第2のデータ転送を行う。
本発明は上述したような構成を有するため、外部機器との接続を行う入出力インターフェイスカードとコプロセッサとをペアにして、コンピュータシステムの機能を拡張することができる。このため、コプロセッサ数を増加した場合に、外部機器との接続を行う入出力インターフェイスカードを複数のコプロセッサ間で奪い合うことがなくなり、コンピュータシステムの大幅な性能の向上が期待できる。
本発明の第1の実施形態にかかるコンピュータシステムのブロック図である。 本発明の第2の実施形態にかかるコンピュータシステムのブロック図である。 本発明の第2の実施形態にかかる機能拡張後のコンピュータシステムのブロック図である。 本発明の第3の実施形態にかかるコンピュータシステムのブロック図である。 本発明の第3の実施形態にかかるコンピュータシステムがシステム立ち上げ時に実施する入出力制御部のポート設定処理の説明図である。 本発明の第3の実施形態にかかる機能拡張後のコンピュータシステムのブロック図である。 本発明の第4の実施形態にかかるコンピュータシステムのブロック図である。 本発明の第4の実施形態にかかる機能拡張後のコンピュータシステムのブロック図である。 本発明に関連するコンピュータシステムのブロック図である。 本発明に関連する他のコンピュータシステムのブロック図である。 本発明に関連する別のコンピュータシステムのブロック図である。 本発明に関連する更に別のコンピュータシステムのブロック図である。
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第1の実施形態]
図1を参照すると、本発明の第1の実施形態にかかるコンピュータシステム10は、メインプロセッサ11とメインプロセッサ12とがプロセッサ間インターフェイス13を通じて接続された密結合マルチプロセッサシステムである。
メインプロセッサ11、12は、コンピュータシステム10の主たる処理を司るプロセッサである。一方のメインプロセッサ11は、コプロセッサ搭載用の拡張スロット14と外部インターフェイスカード搭載用の拡張スロット15とを有する。他方のメインプロセッサ12は、コプロセッサ搭載用の拡張スロット16と外部インターフェイスカード搭載用の拡張スロット17とを有する。
本実施形態にかかるコンピュータシステム10は、2つのメインプロセッサを接続して構成したが、接続するメインプロセッサの数は2つに限定されず、3つ以上であってもよい。
また本実施形態では、それぞれのメインプロセッサに、コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアを1組だけ備えるようにしたが、そのようなペアを2組以上備えるようにしてもよい。
本実施形態にかかるコンピュータシステム10は、それぞれのメインプロセッサ11、12が、コプロセッサ搭載用の拡張スロット14、16と外部インターフェイスカード搭載用の拡張スロット15、17とのペアを有する。このため、外部機器との接続を行う入出力インターフェイスカードとコプロセッサとをペアにして、コンピュータシステム10の機能を拡張することができる。従って、コプロセッサの数を増加した場合に、外部機器との接続を行う入出力インターフェイスカードを複数のコプロセッサ間で奪い合うことがなくなり、コンピュータシステムの大幅な性能の向上が期待できる。
[第2の実施形態]
図2を参照すると、本発明の第2の実施形態にかかるコンピュータシステム100は、メインプロセッサ110とメインプロセッサ120とがプロセッサ間インターフェイス130を通じて接続された密結合マルチプロセッサシステムである。
メインプロセッサ110、120は、コンピュータシステム100の主たる処理を司るプロセッサである。一方のメインプロセッサ110は、コプロセッサ搭載用の拡張スロット140と外部インターフェイスカード搭載用の拡張スロット150とを有する。他方のメインプロセッサ120は、コプロセッサ搭載用の拡張スロット160と外部インターフェイスカード搭載用の拡張スロット170とを有する。
メインプロセッサ110と拡張スロット140、150とは外部インターフェイスを介して接続される。同様にメインプロセッサ120と拡張スロット160、170とは外部インターフェイスを介して接続される。外部インターフェイスは、PCI‐ExpressやSerial RapidIO等のシリアル方式であってもよいし、PCIbus等のパラレル方式であってもよい。
外部インターフェイスカード搭載用の拡張スロットとは、外部インターフェイスカードを物理的および電気的に接続して当該外部インターフェイスカードの機能をシステムに組み入れることができるI/O(Input/Output)スロットの意味であり、外部インターフェイスカード専用か否かは問わない。外部インターフェイスカード搭載用の拡張スロットは、外部インターフェイスカードのコネクタ(オスコネクタ)を物理的および電気的に接続するコネクタ(メスコネクタ)と当該外部インターフェイスカード接続用のスペースとから構成される。外部インターフェイスカードには、その名の通り外部のスイッチやデバイスにつながるケーブルが接続される。例えば、イーサネットのネットワークインターフェイス制御カードでは、イーサネットケーブルが接続される。また、インフィニバンド(Infiniband)のホストチャンネルアダプタ(HCA)カードでは、インフィニバンド・ケーブルが接続される。このため、外部インターフェイスカードを接続した状態で当該カードの接続ケーブルを使用するのが困難な拡張スロットは、外部インターフェイスカード搭載用とは言えない。例えば、ラックマウント型サーバコンピュータでは、拡張スロット用のコネクタ(メスコネクタ)に外部インターフェイスカードを接続した場合に、当該外部インターフェイスカード上に設けられた接続ケーブルを接続するためのコネクタがサーバ筐体の前面または背面に接する(対向する)ようになる場合、当該拡張スロットは、外部インターフェイスカード搭載用の拡張スロットとして使用できる。しかし、拡張スロット用のコネクタ(メスコネクタ)に外部インターフェイスカードを接続した場合に、当該外部インターフェイスカード上に設けられた接続ケーブルを接続するためのコネクタがサーバ筐体の前面および背面に接しない(対向しない)場合、当該拡張スロットは、接続ケーブルを外部機器に接続することが困難であるため外部インターフェイスカード搭載用ではない。
また、コプロセッサ搭載用の拡張スロットとは、コプロセッサを物理的および電気的に接続して当該コプロセッサの機能をシステムに組み入れることができるI/Oスロットの意味であり、コプロセッサ専用か否かは問わない。コプロセッサ搭載用の拡張スロットは、コプロセッサ側のコネクタ(オスコネクタ)を物理的および電気的に接続するコネクタ(メスコネクタ)と当該コプロセッサ接続用のスペースとから構成される。コプロセッサは、外部インターフェイスカードと異なり、外部とつながるケーブルは一般的には接続されていないので、ケーブルの接続に起因する設置場所の制約はない。しかし、コプロセッサは、外部インターフェイスカードに比べて、一般的に縦、横、および奥行ともサイズが大きいため、コプロセッサ搭載用の十分なスペースが確保されている必要がある。従って、十分な空きスペースが確保されていない拡張スロットは、コプロセッサを物理的に接続できないので、コプロセッサ搭載用とは言えない。また、互いに隣接する2つの拡張スロットのうちの何れか一方にコプロセッサを接続すると、その接続したコプロセッサが物理的に干渉して他方の拡張スロットが犠牲になる(使用できなくなる)場合がある。このような2つの拡張スロットは、全体で1つのコプロセッサ搭載用の拡張スロットとして扱うか、或いは2つの外部インターフェイスカード搭載用の拡張スロットとして扱う必要がある。
上述したように本実施形態のコンピュータシステム100は、メインプロセッサ110がコプロセッサ搭載用の拡張スロット140と外部インターフェイスカード搭載用の拡張スロット150とのペアを有すると共に、メインプロセッサ120がコプロセッサ搭載用の拡張スロット160と外部インターフェイスカード搭載用の拡張スロット170とのペアを有する。このため、外部機器との接続を行う入出力インターフェイスカードとコプロセッサとをペアにして、コンピュータシステムの機能を拡張することができる。
図3は、機能拡張後のコンピュータシステム100の構成を示す。図3では、メインプロセッサ110のコプロセッサ搭載用の拡張スロット140にコプロセッサ141が接続され、同じメインプロセッサ110の外部インターフェイスカード搭載用の拡張スロット150に、コプロセッサ141と組み合わせて使用する外部インターフェイスカード151が接続されている。また、この外部インターフェイスカード151の接続ケーブル152を通じて外部機器153が接続されている。他方、メインプロセッサ120のコプロセッサ搭載用の拡張スロット160にコプロセッサ161が接続され、同じメインプロセッサ120の外部インターフェイスカード搭載用の拡張スロット170に、コプロセッサ161と組み合わせて使用する外部インターフェイスカード171が接続されている。また、この外部インターフェイスカード171の接続ケーブル172を通じて外部機器173が接続されている。
コプロセッサ141、161は、大量のデータを処理するためのローカルメモリ142、162と、DMAC(Direct Memory Access Controller)143、163とを有する。また、外部インターフェイスカード151、171は、DMAC154、174を有する。コプロセッサ141、161には、例えば、インテル社のMIC(Many Integrated Core)を使用することができる。MICは、限定された命令しか動作しないGPGPUと異なり、CPU(Xeon(登録商標))と同じ命令を実行することができ、且つ、メインルーチンを実行することができる。そのため、MICは、CPUのアクセラレータとしてしか使えないGPGPUと違って、小規模なCPUコアとして使用することができる。さらにMICは、ローカルメモリを有し、このローカルメモリに外部からDMA転送が行える。但し、本発明で使用するコプロセッサは、MICのような種類のコプロセッサに限定されず、GPGPUや特許文献1に記載のプロセッサエレメントのようなCPUからの命令で動作する種類のコプロセッサであってもよい。
コプロセッサ141のローカルメモリ142は、コプロセッサ141からリード命令およびライト命令等によって直接アクセスできると共に、図2の矢印P1に示すように、外部インターフェイスカード151からメインプロセッサ110内の図示しない内部バスあるいはクロスバスイッチ等を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC143およびDMAC154の何れか一方を使用して行うことが可能である。また、メインプロセッサ110が有する図示しないDMACを使用して上記DMA転送を制御することも可能である。
また、コプロセッサ161のローカルメモリ162は、コプロセッサ161からリード命令およびライト命令等によって直接アクセスできると共に、図2の矢印P2に示すように、外部インターフェイスカード171からメインプロセッサ120内の図示しない内部バスあるいはクロスバスイッチ等を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC163およびDMAC174の何れか一方を使用して行うことが可能である。また、メインプロセッサ120が有する図示しないDMACを使用して上記DMA転送を制御することも可能である。
そして、上記2つのDMA転送は並列に実行することが可能である。このため、コプロセッサ141で処理すべき大量のデータを外部インターフェイスカード151を通じて外部機器153からローカルメモリ142に転送する動作と、コプロセッサ161で処理すべき大量のデータを外部インターフェイスカード171を通じて外部機器173からローカルメモリ162に転送する動作とを並行して行うことができる。そして、コプロセッサ141、161は、それぞれのローカルメモリ142、162に記憶されたデータに対してそれぞれ独立に演算処理を施すことが可能である。
また、コプロセッサ141による処理済みの大量のデータを外部インターフェイスカード151を通じてローカルメモリ142から外部機器153に転送する動作と、コプロセッサ161による処理済みの大量のデータを外部インターフェイスカード171を通じてローカルメモリ162から外部機器173に転送する動作とを並行して行うことができる。
これに対して、図9に示すコンピュータシステム100Aのように、1つのメインプロセッサ110に2つのコプロセッサ搭載用の拡張スロット140と1つの外部インターフェイスカード搭載用の拡張スロット150とを備える構成では、外部機器153との接続を行う入出力インターフェイスカード151を複数のコプロセッサ141が共有して使用しなければならないため、外部機器153との接続を行う入出力インターフェイスカード151とコプロセッサ141との間のデータ転送を並列に実行した場合、それぞれのコプロセッサにとって十分な転送性能を得られないという問題がある。
また、図10に示すコンピュータシステム100Bのように、一方のメインプロセッサ110に2つの外部インターフェイスカード搭載用の拡張スロット150を備え、他方のメインプロセッサ120に2つのコプロセッサ搭載用の拡張スロット160を備える構成では、外部インターフェイスカード150とコプロセッサ161との間でデータ転送を行う場合、図10の矢印P1、P2に示すように、プロセッサ間インターフェイス130を必ず経由しなければならない。このため、プロセッサ間インターフェイス130がスループット上のボトルネックになり、データ転送のレイテンシが悪化する。これに対して図2および図3に示す本実施形態にかかるコンピュータシステム100では、図2の矢印P1、P2に示す経路でデータ転送が行われるため、プロセッサ間インターフェイス130経由によるレイテンシの悪化を避けることができる。
本実施形態にかかるコンピュータシステム100は、2つのメインプロセッサを接続して構成したが、接続するメインプロセッサの数は2つに限定されず、3つ以上であってもよい。
また本実施形態では、それぞれのメインプロセッサに、コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアを1組だけ備えるようにしたが、そのようなペアを2組以上備えるようにしてもよい。
次に本実施形態の効果を説明する。本実施形態にかかるコンピュータシステム100は、それぞれのメインプロセッサ110、120が、コプロセッサ搭載用の拡張スロット140、160と外部インターフェイスカード搭載用の拡張スロット150、170とのペアを有する。このため、外部機器153、173との接続を行う入出力インターフェイスカード151、171とコプロセッサ141、161とをペアにして、コンピュータシステム100の機能を拡張することができる。従って、コプロセッサの数を増加した場合に、外部機器との接続を行う入出力インターフェイスカードを複数のコプロセッサ間で奪い合うことがなくなり、コンピュータシステムの大幅な性能の向上が期待できる。
また本実施形態にかかるコンピュータシステム100は、拡張スロット140、160に接続されたコプロセッサ141、161と、当該拡張スロット140、160を有するメインプロセッサに設けられた他の拡張スロット150、170に外部インターフェイスカード151、171を通じて接続された外部機器153、173との間で、DMA転送を行うため、プロセッサ間インターフェイス130経由によるDMA転送と違ってレイテンシの悪化がない。従って、外部装置のデータをその処理を行うコプロセッサのローカルメモリに転送する場合、およびその反対に処理済みのデータをコプロセッサのローカルメモリから外部装置へ転送する場合のデータ転送のレイテンシが向上する。
[第3の実施形態]
図4を参照すると、本発明の第3の実施形態にかかるコンピュータシステム200は、CPUソケット210とCPUソケット220との2つのCPUソケットを有する2ソケットサーバコンピュータである。
CPUソケット210とCPUソケット220とは、CPUソケット間インターフェイス230で接続される。CPUソケット間インターフェイス230は、例えばQPI(Quickpath Interconnect)を使用することができる。しかし、本発明はそのような特定のCPUソケット間インターフェイスに限定されない。
一方のCPUソケット210は、1または複数のプロセッサコア211と、このプロセッサコア211に接続されたキャッシュメモリ212と、主記憶制御部213と、複数のI/O制御部214、215と、サウスブリッジ(South Bridge)用のI/O制御部217と、上記キャッシュメモリ212、主記憶制御部213、I/O制御部214、215、217、およびCPUソケット間インターフェイス230に接続されたクロスバスイッチ部216とを有する。また、CPUソケット210の主記憶制御部213にはメモリバスを通じて主記憶メモリ280が接続され、I/O制御部217にはDMI(Digital Media Interface)等のインターフェイスを通じてサウスブリッジ218が接続されている。さらに、CPUソケット210の1つのI/O制御部214にはコプロセッサ搭載用の拡張スロット240が接続され、他の1つのI/O制御部215には外部インターフェイスカード搭載用の拡張スロット250が接続されている。サウスブリッジ218は、CPUソケット210(メインプロセッサ)と組み合わせてコンピュータシステムを構成するチップで、CPUソケット210が有していない補完的な機能を有する。例えば、CPUソケット210は、コンピュータシステムの起動(ブート)にこのサウスブリッジ218の機能を利用する場合がある。なお、サウスブリッジ218は、CPUソケット210に内蔵されていてもよいし、あるいは削除されていてもよい。いずれにしても、CPUソケット210は、コンピュータシステムの起動(ブート)を行う機能を持つCPUソケットである。
他方のCPUソケット220は、1または複数のプロセッサコア221と、このプロセッサコア221に接続されたキャッシュメモリ222と、主記憶制御部223と、複数のI/O制御部224、225と、上記キャッシュメモリ222、主記憶制御部223、I/O制御部224、225、およびCPUソケット間インターフェイス230に接続されたクロスバスイッチ部226とを有する。また、CPUソケット220の主記憶制御部223にはメモリバスを通じて主記憶メモリ290が接続されている。さらに、CPUソケット220の1つのI/O制御部224にはコプロセッサ搭載用の拡張スロット260が接続され、他の1つのI/O制御部225には外部インターフェイスカード搭載用の拡張スロット270が接続されている。
主記憶メモリ280、290は、例えばDIMM(Dual Inline Memory Module)である。CPUソケット210、222のプロセッサコア211、221は、自CPUソケットに接続された主記憶メモリ280、290をアクセスすることができると共に、他CPUソケットに接続された主記憶メモリ290、280をCPUソケット間インターフェイス230を通じてアクセスすることができる。但し、後者のアクセス速度は前者よりも遅い。すなわち、コンピュータシステム200は、NUMA(Non-Uniform Memory Access)アーキテクチャを採用している。
またコンピュータシステム200は、PCI‐Expressに準拠した外部インターフェイスを有する。PCI‐Expressでは、送受信の1組の作動ペアをレーンと呼び、1レーン、4レーン、8レーン、16レーンなどのバリエーションで1つのリンクを構成している。以下、Nレーンで構成されたリンクをxNリンクと呼ぶ。
GPGPUやMICなどのコプロセッサは、一般にx16リンクに対応している。他方、イーサネット等のほぼ全ての外部インターフェイスカードは、x4リンクまたはx8リンクに対応しており、x16リンクに対応する外部インターフェイスカードは現時点では存在していない。しかし、コプロセッサがx16リンク対応で、それとペアにして使用する外部インターフェイスカードがx4リンク対応あるいはx8リンク対応のカードしか増設できない場合、コプロセッサの性能を十分に活用することは困難である。そこで、本実施形態では、x16リンク対応の外部インターフェイスカードの増設が行えるように、外部インターフェイスカード搭載用の拡張スロットのレーン数を16とする。但し、本発明は、レーン数が16の拡張スロットに限定されない。
図5は、CPUソケット210が有する外部インターフェイスのレーンとリンクの関係を示す。CPUソケット210は、レーン#0からレーン#39まで合計40のレーンを有する。CPUソケット210は、システムの立ち上げ時に静的にI/Oポートのレーン数を設定することができる。例えば、隣接する4レーンを1個のx4リンクのI/Oポートとして動作するように設定することができる。また、x4リンクを2個分束ねて1個のx8リンクのI/Oポートとして設定することができる。さらに、x8リンクのI/Oポートを2個分束ねて1個のx16リンクのI/Oポートとして設定することができる。本実施形態では、CPUソケット210は、x16リンクのI/Oポートを2個生成し、その一方のI/Oポートをコプロセッサ搭載用の拡張スロット240を制御するI/O制御部214に割り当て、他方を外部インターフェイスカード搭載用の拡張スロット250を制御するI/O制御部215に割り当てる。
CPUソケット220もCPUソケット210と同様に合計40のレーンを有し、1つのx16リンクのI/Oポートをコプロセッサ搭載用の拡張スロット260を制御するI/O制御部224に割り当て、もう1つのx16リンクのI/Oポートを外部インターフェイスカード搭載用の拡張スロット270を制御するI/O制御部225に割り当てる。なお、本実施形態では、CPUソケット210、220は、合計40のレーンを有するものとした。しかし、本発明は、1個のCPUソケットが有する外部インターフェイスのレーン数の合計は40に限定されず、それ以下あるいはそれ以上であってもよく、またそれぞれのCPUソケットのレーン数が相違していてもよい。
このように、本実施形態では、コプロセッサ搭載用の拡張スロット240、260と外部インターフェイスカード搭載用の拡張スロット250、260とは、x16リンクのI/Oポートを有するI/O制御部214、224に接続されている。従って、x16リンクに対応するコプロセッサとx16リンクに対応する外部インターフェイスカードとをペアにしてコンピュータシステム200の機能の拡張が可能になる。
また一般的に、x4リンクまたはx8リンクに対応する外部インターフェイスカードを、x16リンクに対応する拡張スロットに接続すると、拡張スロットはx4リンクまたはx8リンクとして動作する。従って、本実施形態では、換言すると、x16リンクに対応するコプロセッサとx4あるいはx8あるいはx16リンクに対応する外部インターフェイスカードとをペアにしてコンピュータシステム200の機能の拡張が可能であると言える。
図6は、機能拡張後のコンピュータシステム200の構成を示す。図6では、CPUソケット210のコプロセッサ搭載用の拡張スロット240にx16リンク対応のコプロセッサ240が接続され、同じCPUソケット210の外部インターフェイスカード搭載用の拡張スロット250に、コプロセッサ241と組み合わせて使用するx16リンク対応の外部インターフェイスカード251が接続されている。また、この外部インターフェイスカード251の接続ケーブル252を通じて外部機器253が接続されている。他方、CPUソケット220のコプロセッサ搭載用の拡張スロット260にx16リンク対応のコプロセッサ261が接続され、同じCPUソケット210の外部インターフェイスカード搭載用の拡張スロット270に、コプロセッサ261と組み合わせて使用するx16リンク対応の外部インターフェイスカード271が接続されている。また、この外部インターフェイスカード271の接続ケーブル272を通じて外部機器273が接続されている。
コプロセッサ241、261は、大量のデータを処理するためのローカルメモリ242、262と、DMAC243、263とを有する。また、外部インターフェイスカード251、271は、DMAC254、274を有する。
コプロセッサ241のローカルメモリ242は、コプロセッサ241からリード命令およびライト命令等によって直接アクセスできると共に、図6の矢印P1に示すように、外部インターフェイスカード251からCPUソケット210内のI/O制御部214およびクロスバスイッチ部215を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC243およびDMAC254の何れか一方を使用して行うことが可能である。また、CPUソケット210のクロスバスイッチ部215に接続された図示しないDMACを使用して上記DMA転送を制御することも可能である。
また、コプロセッサ261のローカルメモリ262は、コプロセッサ261からリード命令およびライト命令等によって直接アクセスできると共に、図6の矢印P2に示すように、外部インターフェイスカード271からメインプロセッサ220内のI/O制御部224およびクロスバスイッチ部225を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC263およびDMAC274の何れか一方を使用して行うことが可能である。また、CPUソケット220のクロスバスイッチ部225に接続された図示しないDMACを使用して上記DMA転送を制御することも可能である。
そして、上記2つのDMA転送は並列に実行することが可能である。このため、コプロセッサ241で処理すべき大量のデータを外部インターフェイスカード251を通じて外部機器253からローカルメモリ242に転送する動作と、コプロセッサ261で処理すべき大量のデータを外部インターフェイスカード271を通じて外部機器273からローカルメモリ262に転送する動作とを並行して行うことができる。そして、コプロセッサ241、261は、それぞれのローカルメモリ242、262に記憶されたデータに対してそれぞれ独立に演算処理を施すことが可能である。
また、コプロセッサ241による処理済みの大量のデータをローカルメモリ242から外部インターフェイスカード251を通じて外部機器253に転送する動作と、コプロセッサ261による処理済みの大量のデータをローカルメモリ262から外部インターフェイスカード271を通じて外部機器273に転送する動作とを並行して行うことができる。
これに対して、図11に示すコンピュータシステム200Aのように、1つのCPUソケット210に2つのコプロセッサ搭載用の拡張スロット240と1つの外部インターフェイスカード搭載用の拡張スロット250とを備える構成では、外部機器253との接続を行う入出力インターフェイスカード251を複数のコプロセッサ241が同時に使用できないため、外部機器253との接続を行う入出力インターフェイスカード251とコプロセッサ241との間のデータ転送を並列に実行した場合、それぞれのコプロセッサにとって十分な転送性能を得られないという問題がある。
また、図12に示すコンピュータシステム200Bのように、一方のCPUソケット210に2つの外部インターフェイスカード搭載用の拡張スロット250を備え、他方のCPUソケット220に2つのコプロセッサ搭載用の拡張スロット260を備える構成では、外部インターフェイスカード251とコプロセッサ261との間でデータ転送を行う場合、図12の矢印P1、P2に示すように、CPUソケット間インターフェイス230を必ず経由しなければならない。このため、CPUソケット間インターフェイス230がスループット上のボトルネックになり、データ転送のレイテンシが悪化する。これに対して図6に示す本実施形態にかかるコンピュータシステム200では、図6の矢印P1、P2に示す経路でデータ転送が行われるため、プロセッサ間インターフェイス230経由によるレイテンシの悪化を避けることができる。
本実施形態にかかるコンピュータシステム200は、2つのCPUソケットを接続して構成したが、接続するCPUソケットは2つに限定されず、3つ以上であってもよい。
また本実施形態では、それぞれのCPUソケットに、コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアを1組だけ備えるようにしたが、そのようなペアを2組以上備えるようにしてもよい。
次に本実施形態の効果を説明する。本実施形態にかかるコンピュータシステム200は、それぞれのCPUソケット210、220が、コプロセッサ搭載用の拡張スロット240、260と外部インターフェイスカード搭載用の拡張スロット250、270とのペアを有する。このため、外部機器253、273との接続を行う入出力インターフェイスカード251、271とコプロセッサ241、261とをペアにして、コンピュータシステム200の機能を拡張することができる。従って、コプロセッサの数を増加した場合に、外部機器との接続を行う入出力インターフェイスカードを複数のコプロセッサ間で奪い合うことがなくなり、コンピュータシステムの大幅な性能の向上が期待できる。
また本実施形態にかかるコンピュータシステム200は、拡張スロット240、260に接続されたコプロセッサ241、261と、当該拡張スロット240、260を有するCPUソケットと同じCPUソケットの拡張スロット250、270に外部インターフェイスカード251、271を通じて接続された外部機器253、273との間で、DMA転送を行うため、CPUソケット間インターフェイス230経由によるレイテンシの悪化がない。従って、外部装置のデータをその処理を行うコプロセッサのローカルメモリに転送する場合、およびその反対に処理済みのデータをコプロセッサのローカルメモリから外部装置へ転送する場合のレイテンシが向上する。
また本実施形態にかかるコンピュータシステム200は、外部インターフェイスカード搭載用の拡張スロット250、270のレーン数が、ペアを構成するコプロセッサ搭載用の拡張スロット240、260のレーン数と同じであるため、コプロセッサの有するレーン数と同じレーン数を有する外部インターフェイスカードを増設することができる。このため、コプロセッサの有する性能を十分に活用することができる機能拡張が可能である。
[第4の実施形態]
図7を参照すると、本発明の第4の実施形態にかかるコンピュータシステム300は、各CPUソケットのI/O制御部に接続されたPCI‐Expressに準拠するスイッチに、コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアが接続される点で、図4に示した本発明の第3の実施形態にかかるコンピュータシステム200と相違する。
より詳細には、本実施形態のコンピュータシステム300は、CPUソケット210のI/O制御部214にPCI‐Expressに準拠するスイッチSW11が接続され、このスイッチSW11にコプロセッサ搭載用の拡張スロット240−1と外部インターフェイスカード搭載用の拡張スロット250−1とのペアが接続される。また、同じCPUソケット210の別のI/O制御部215にPCI‐Expressに準拠するスイッチSW12が接続され、このスイッチSW12にコプロセッサ搭載用の拡張スロット240−2と外部インターフェイスカード搭載用の拡張スロット250−2との別のペアが接続される。図4と相違し、CPU210にはサウスブリッジが接続されていないが、接続されていてもよい。
さらに、他方のCPUソケット220のI/O制御部224にPCI‐Expressに準拠するスイッチSW21が接続され、このスイッチSW21にコプロセッサ搭載用の拡張スロット260−1と外部インターフェイスカード搭載用の拡張スロット270−1とのペアが接続される。さらにまた、同じCPUソケット220の別のI/O制御部225にPCI‐Expressに準拠するスイッチSW22が接続され、このスイッチSW22にコプロセッサ搭載用の拡張スロット260−2と外部インターフェイスカード搭載用の拡張スロット270−2との別のペアが接続される。
それぞれのスイッチSW11、SW12、SW21、SW22は、1つのアップストリームポート(Upstream Port)と複数のダウンストリームポート(Downstream
Port)とを有する。アップストリームポートおよびダウンストリームポートのレーン数は16である。それぞれのスイッチSW11、SW12、SW21、SW22のアップストリームポートは、CPUソケットのI/O制御部214、215、224、225に接続される。また、それぞれのスイッチSW11、SW12、SW21、SW22の1つのダウンストリームポートは、コプロセッサ搭載用の拡張スロット240−1、240−2、260−1、260−2に接続され、別の1つのダウンストリームポートは外部インターフェイスカード搭載用の拡張スロット250−1、250−2、270−1、270−2に接続される。
このように、本実施形態では、コプロセッサ搭載用の拡張スロット240、260と外部インターフェイスカード搭載用の拡張スロット250、260とは、x16リンクのポートを有するI/O制御部214、224に、x16リンクのアップストリームポートおよびダウンストリームポートを有するスイッチSW11、SW12、SW21、SW22を通じて接続されている。従って、x16リンクに対応するコプロセッサとx16リンクに対応する外部インターフェイスカードとをペアにしてコンピュータシステム300の機能の拡張が可能になる。
図8は、機能拡張後のコンピュータシステム300の構成を示す。図8では、スイッチSW11の1つのダウンストリームポートに接続されたコプロセッサ搭載用の拡張スロット240−1にx16リンク対応のコプロセッサ241−1が接続され、同じスイッチSW11の別のダウンストリームポートに接続された外部インターフェイスカード搭載用の拡張スロット250−1に、コプロセッサ241−1と組み合わせて使用するx16リンク対応の外部インターフェイスカード251−1が接続されている。また、この外部インターフェイスカード251−1の接続ケーブル252−1に外部機器253−1が接続されている。
また、スイッチSW12の1つのダウンストリームポートに接続されたコプロセッサ搭載用の拡張スロット240−2にx16リンク対応のコプロセッサ241−2が接続され、同じスイッチSW12の別のダウンストリームポートに接続された外部インターフェイスカード搭載用の拡張スロット250−2に、コプロセッサ241−2と組み合わせて使用するx16リンク対応の外部インターフェイスカード251−2が接続されている。また、この外部インターフェイスカード251−2の接続ケーブル252−2に外部機器253−2が接続されている。
さらに、スイッチSW21の1つのダウンストリームポートに接続されたコプロセッサ搭載用の拡張スロット260−1にx16リンク対応のコプロセッサ261−1が接続され、同じスイッチSW21の別のダウンストリームポートに接続された外部インターフェイスカード搭載用の拡張スロット270−1に、コプロセッサ261−1と組み合わせて使用するx16リンク対応の外部インターフェイスカード271−1が接続されている。また、この外部インターフェイスカード271−1の接続ケーブル272−1に外部機器273−1が接続されている。
またさらに、スイッチSW22の別の1つのダウンストリームポートに接続されたコプロセッサ搭載用の拡張スロット260−2にx16リンク対応のコプロセッサ261−2が接続され、同じスイッチSW22の別のダウンストリームポートに接続された外部インターフェイスカード搭載用の拡張スロット270−2に、コプロセッサ261−2と組み合わせて使用するx16リンク対応の外部インターフェイスカード271−2が接続されている。また、この外部インターフェイスカード271−2の接続ケーブル272−2に外部機器273−3が接続されている。
コプロセッサ241−1、241−2、261−1、261−2は、大量のデータを処理するためのローカルメモリ242−1、242−2、262−1、262−2と、DMAコントローラ243−1、243−2、263−1、263−2とを有する。また、外部インターフェイスカード251−1、251−2、271−1、271−2は、DMAコントローラ254−1、254−2、274−1、274−2を有する。
コプロセッサ241−1のローカルメモリ242−1は、コプロセッサ241−1からリード命令およびライト命令等によって直接アクセスできると共に、図8の矢印P11に示すように、スイッチSW11を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC243−1およびDMAC254−1の何れか一方を使用して行うことが可能である。
また、コプロセッサ241−2のローカルメモリ242−2は、コプロセッサ241−2からリード命令およびライト命令等によって直接アクセスできると共に、図8の矢印P12に示すように、スイッチSW12を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC243−2およびDMAC254−2の何れか一方を使用して行うことが可能である。
さらに、コプロセッサ261−1のローカルメモリ262−1は、コプロセッサ261−1からリード命令およびライト命令等によって直接アクセスできると共に、図8の矢印P21に示すように、スイッチSW21を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC263−1およびDMAC274−1の何れか一方を使用して行うことが可能である。
またさらに、コプロセッサ261−2のローカルメモリ262−2は、コプロセッサ261−2からリード命令およびライト命令等によって直接アクセスできると共に、図8の矢印P22に示すように、スイッチSW22を介してDMA方式によって直接アクセスすることが可能である。このDMA転送は、DMAC263−2およびDMAC274−2の何れか一方を使用して行うことが可能である。
そして、上記4つのDMA転送は並列に実行することが可能である。このため、コプロセッサ241−1で処理すべき大量のデータを外部機器253−1から外部インターフェイスカード251−1を通じてローカルメモリ242−1に転送する動作と、コプロセッサ241−2で処理すべき大量のデータを外部機器253−2から外部インターフェイスカード251−2を通じてローカルメモリ242−2に転送する動作と、コプロセッサ261−1で処理すべき大量のデータを外部機器273−1から外部インターフェイスカード271−1を通じてローカルメモリ262−1に転送する動作と、コプロセッサ261−2で処理すべき大量のデータを外部機器273−2から外部インターフェイスカード271−2を通じてローカルメモリ262−2に転送する動作とを並行して行うことができる。そして、コプロセッサ241−1、241−2、261−1、261−2は、それぞれのローカルメモリ242−1、242−2、262−1、262−2に記憶されたデータに対してそれぞれ独立に演算処理を施すことが可能である。
また、コプロセッサ241−1による処理済みの大量のデータをローカルメモリ242−1から外部インターフェイスカード251−1を通じて外部機器253−1に転送する動作と、コプロセッサ241−2による処理済みの大量のデータをローカルメモリ242−2から外部インターフェイスカード251−2を通じて外部機器253−2に転送する動作と、コプロセッサ261−1による処理済みの大量のデータをローカルメモリ262−1から外部インターフェイスカード271−1を通じて外部機器273−1に転送する動作と、コプロセッサ261−2による処理済みの大量のデータをローカルメモリ262−2から外部インターフェイスカード271−2を通じて外部機器273−2に転送する動作とを並行して行うことができる。
本実施形態にかかるコンピュータシステム300は、2つのCPUソケットを接続して構成したが、接続するCPUソケットの数は2つに限定されず、3つ以上であってもよい。
また本実施形態では、それぞれのCPUソケットに、コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアを接続するPCI‐Express準拠のスイッチを2個接続したが、そのようなペアを接続するPCI‐Express準拠のスイッチは2個に限定されず、1個だけでもよく、また3組以上備えるようにしてもよい。
また本実施形態では、1つのPCI‐Express準拠のスイッチに、コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアを1組だけ接続したが、1つのPCI‐Express準拠のスイッチに接続する当該ペアの数は1に限定されず、2以上であってもよい。
次に本実施形態の効果を説明する。本実施形態にかかるコンピュータシステム300は、それぞれのCPUソケット210、220が、コプロセッサ搭載用の拡張スロット240、260と外部インターフェイスカード搭載用の拡張スロット250、270とのペアを有する。このため、外部機器253、273との接続を行う入出力インターフェイスカード251、271とコプロセッサ241、261とをペアにして、コンピュータシステム300の機能を拡張することができる。従って、コプロセッサの数を増加した場合に、外部機器との接続を行う入出力インターフェイスカードを複数のコプロセッサ間で奪い合うことがなくなり、コンピュータシステムの大幅な性能の向上が期待できる。
また本実施形態にかかるコンピュータシステム300は、拡張スロット240、260に接続されたコプロセッサ241、261と、当該拡張スロット240、260が接続されたスイッチSW11〜SW22と同じスイッチSW11〜SW22に接続された拡張スロット250、270に外部インターフェイスカード251、271を通じて接続された外部機器253、273との間で、当該スイッチで折り返す経路を通じてDMA転送を行う。このため、CPUソケット間インターフェイス230経由に起因するレイテンシの悪化や、CPUソケット経由に起因するレイテンシの悪化がない。従って、外部装置のデータをその処理を行うコプロセッサのローカルメモリに転送する場合、およびその反対に処理済みのデータをコプロセッサのローカルメモリから外部装置へ転送する場合のレイテンシが向上する。
また本実施形態にかかるコンピュータシステム300は、外部インターフェイスカード搭載用の拡張スロット250、270のレーン数が、ペアを構成するコプロセッサ搭載用の拡張スロット240、260のレーン数と同じであるため、コプロセッサの有するレーン数と同じレーン数を有する外部インターフェイスカードを増設することができる。このため、コプロセッサの有する性能を十分に活用する機能拡張が可能である。
また本実施形態にかかるコンピュータシステム300は、スイッチSW11、SW12、SW21、SW22によってPCI‐Expressのレーン数を論理的に増加させているため、CPUソケットの有するレーン数の上限を超える拡張スロットを、コプロセッサ搭載用および外部インターフェイスカード搭載用に装備することが可能である。
本発明は、複数のメインプロセッサをプロセッサ間インターフェイスで接続して構成される密結合マルチプロセッサシステム、特に2CPUソケットサーバコンピュータの機能拡張に適用可能である。
10、100、200、300…コンピュータシステム
11、12、110、120…メインプロセッサ
13、130…プロセッサ間インターフェイス
14、16、140、160…コプロセッサ搭載用の拡張スロット
15、17、150、170…外部インターフェイスカード搭載用の拡張スロット

Claims (14)

  1. 複数のメインプロセッサをプロセッサ間インターフェイスで接続して構成される密結合マルチプロセッサシステムであって、
    それぞれの前記メインプロセッサは、
    コプロセッサ搭載用の拡張スロットと外部インターフェイスカード搭載用の拡張スロットとのペアを1組以上備える
    密結合マルチプロセッサシステム。
  2. 前記コプロセッサ搭載用の拡張スロットのレーン数と前記外部インターフェイスカード搭載用の拡張スロットのレーン数とは同じである
    請求項1に記載の密結合マルチプロセッサシステム。
  3. 前記コプロセッサ搭載用の拡張スロットおよび前記外部インターフェイスカード搭載用の拡張スロットのレーン数は、16レーンである
    請求項1または2に記載の密結合マルチプロセッサシステム。
  4. 前記メインプロセッサは、前記コプロセッサ搭載用の拡張スロットが接続される第1の入出力制御部と、前記外部インターフェイスカード搭載用の拡張スロットが接続される第2の入出力制御部とを有する
    請求項1乃至3の何れかに記載の密結合マルチプロセッサシステム。
  5. 前記コプロセッサ搭載用の拡張スロットに接続されたコプロセッサと、前記コプロセッサ搭載用の拡張スロットとペアを構成する前記外部インターフェイスカード搭載用の拡張スロットに接続された外部インターフェイスカードにさらに接続された外部機器との間で、DMA転送を行う
    請求項4に記載の密結合マルチプロセッサシステム。
  6. 前記メインプロセッサは、前記コプロセッサ搭載用の拡張スロットと当該コプロセッサ搭載用の拡張スロットとペアを構成する前記外部インターフェイスカード搭載用の拡張スロットとがそれぞれ異なるダウンストリームポートに接続されている、スイッチを有する
    請求項1乃至3の何れかに記載の密結合マルチプロセッサシステム。
  7. 前記メインプロセッサは、前記スイッチのアップストリームポートに接続される入出力制御部を有する
    請求項6に記載の密結合マルチプロセッサシステム。
  8. 前記コプロセッサ搭載用の拡張スロットに接続されたコプロセッサと、前記コプロセッサ搭載用の拡張スロットとペアを構成する前記外部インターフェイスカード搭載用の拡張スロットに接続された外部インターフェイスカードを通じて接続された外部機器との間で、前記スイッチを介してDMA転送を行う
    請求項6または7に記載の密結合マルチプロセッサシステム。
  9. 前記コプロセッサは、前記メインプロセッサが実行する命令と同じ命令を実行可能である
    請求項5または8に記載の密結合マルチプロセッサシステム。
  10. 前記コプロセッサは、メインルーチンを実行可能である
    請求項5または8に記載の密結合マルチプロセッサシステム。
  11. 第1のコプロセッサ搭載用の拡張スロットと第1の外部インターフェイスカード搭載用の拡張スロットとを備える第1のメインプロセッサと、
    前記第1のメインプロセッサとプロセッサ間インターフェイスで接続され、第2のコプロセッサ搭載用の拡張スロットと第2の外部インターフェイスカード搭載用の拡張スロットとを備える第2のメインプロセッサとから構成される密結合マルチプロセッサシステムの制御方法であって、
    前記第1のコプロセッサ搭載用の拡張スロットに接続された第1のコプロセッサと前記第1の外部インターフェイスカード搭載用の拡張スロットに接続された第1の外部インターフェイスカードにさらに接続された第1の外部機器との間で、DMA方式による第1のデータ転送を行わせ、
    前記第2のコプロセッサ搭載用の拡張スロットに接続された第2のコプロセッサと前記第2の外部インターフェイスカード搭載用の拡張スロットに接続された第2の外部インターフェイスカードにさらに接続された第2の外部機器との間で、DMA方式による第2のデータ転送を行わせる
    密結合マルチプロセッサシステムの制御方法。
  12. 前記第1のメインプロセッサは、前記第1のコプロセッサ搭載用の拡張スロットに接続される第1の入出力制御部と、前記第1の外部インターフェイスカード搭載用の拡張スロットに接続される第2の入出力制御部と、前記第1の入出力制御部と前記第2の入出力制御部と前記プロセッサ間インターフェイスとに接続される第1のクロスバスイッチ部とを有し、
    前記第2のメインプロセッサは、前記第2のコプロセッサ搭載用の拡張スロットに接続される第3の入出力制御部と、前記第2の外部インターフェイスカード搭載用の拡張スロットに接続される第4の入出力制御部と、前記第3の入出力制御部と前記第4の入出力制御部と前記プロセッサ間インターフェイスとに接続される第2のクロスバスイッチ部とを有し、
    前記第1のデータ転送は、前記第1の入出力制御部、前記第1のクロスバスイッチ部、および前記第2の入出力制御部を経由して行われ、
    前記第2のデータ転送は、前記第3の入出力制御部、前記第2のクロスバスイッチ部、および前記第4の入出力制御部を経由して行われる
    請求項11に記載の密結合マルチプロセッサシステムの制御方法。
  13. 前記第1のメインプロセッサは、前記第1のコプロセッサ搭載用の拡張スロットと前記第1の外部インターフェイスカード搭載用の拡張スロットとがそれぞれ異なるダウンストリームポートに接続され、アップストリームポートが前記第1のメインプロセッサの入出力制御部に接続される第1のスイッチを有し、
    前記第2のメインプロセッサは、前記第2のコプロセッサ搭載用の拡張スロットと前記第2の外部インターフェイスカード搭載用の拡張スロットとがそれぞれ異なるダウンストリームポートに接続され、アップストリームポートが前記第2のメインプロセッサの入出力制御部に接続される第2のスイッチを有し、
    前記第1のデータ転送は、前記第1のスイッチを経由して行われ、
    前記第2のデータ転送は、前記第2のスイッチを経由して行われる
    請求項11に記載の密結合マルチプロセッサシステムの制御方法。
  14. 前記第1のデータ転送と前記第2のデータ転送とを並行して行わせる
    請求項11乃至13の何れかに記載の密結合マルチプロセッサシステムの制御方法。
JP2012130428A 2012-06-08 2012-06-08 密結合マルチプロセッサシステム Expired - Fee Related JP5949188B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012130428A JP5949188B2 (ja) 2012-06-08 2012-06-08 密結合マルチプロセッサシステム
US13/910,282 US9424223B2 (en) 2012-06-08 2013-06-05 Tightly coupled multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012130428A JP5949188B2 (ja) 2012-06-08 2012-06-08 密結合マルチプロセッサシステム

Publications (2)

Publication Number Publication Date
JP2013254405A JP2013254405A (ja) 2013-12-19
JP5949188B2 true JP5949188B2 (ja) 2016-07-06

Family

ID=49716207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012130428A Expired - Fee Related JP5949188B2 (ja) 2012-06-08 2012-06-08 密結合マルチプロセッサシステム

Country Status (2)

Country Link
US (1) US9424223B2 (ja)
JP (1) JP5949188B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6482190B2 (ja) * 2014-06-10 2019-03-13 キヤノン株式会社 リソグラフィに関するシミュレーションを行う演算方法、装置及びプログラム
US9836423B2 (en) * 2014-07-25 2017-12-05 Netapp, Inc. Adaptive circuit board assembly and flexible PCI express bus
US10331595B2 (en) * 2014-10-23 2019-06-25 Mellanox Technologies, Ltd. Collaborative hardware interaction by multiple entities using a shared queue
US11868301B1 (en) * 2015-03-25 2024-01-09 Amazon Technologies, Inc. Symmetrical multi-processor serial links
JP6703600B2 (ja) * 2016-04-27 2020-06-03 株式会社日立製作所 計算機システム及びサーバ
CN113781596A (zh) * 2020-09-25 2021-12-10 上海联影医疗科技股份有限公司 图像重建方法和系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2834837B2 (ja) * 1990-03-30 1998-12-14 松下電工株式会社 プログラマブルコントローラ
JPH08287025A (ja) * 1995-04-14 1996-11-01 Fujitsu Ltd マルチプロセッサシステムの同期制御方法及びそれを用いたマルチプロセッサシステム
US6272533B1 (en) * 1999-02-16 2001-08-07 Hendrik A. Browne Secure computer system and method of providing secure access to a computer system including a stand alone switch operable to inhibit data corruption on a storage device
US6684305B1 (en) * 2001-04-24 2004-01-27 Advanced Micro Devices, Inc. Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence
US6854025B2 (en) * 2002-07-08 2005-02-08 Globespanvirata Incorporated DMA scheduling mechanism
US7383412B1 (en) * 2005-02-28 2008-06-03 Nvidia Corporation On-demand memory synchronization for peripheral systems with multiple parallel processors
US7728841B1 (en) * 2005-12-19 2010-06-01 Nvidia Corporation Coherent shader output for multiple targets
US8161209B2 (en) * 2008-03-31 2012-04-17 Advanced Micro Devices, Inc. Peer-to-peer special purpose processor architecture and method
US8417842B2 (en) * 2008-05-16 2013-04-09 Freescale Semiconductor Inc. Virtual direct memory access (DMA) channel technique with multiple engines for DMA controller
JP2010272066A (ja) * 2009-05-25 2010-12-02 Mitsubishi Electric Corp ヘテロジニアスマルチコアプロセッサ
US20110225297A1 (en) * 2010-03-11 2011-09-15 International Business Machines Corporation Controlling Access To A Resource In A Distributed Computing System With A Distributed Access Request Queue
US9058675B2 (en) * 2010-05-29 2015-06-16 Intel Corporation Non-volatile storage for graphics hardware
JP5771927B2 (ja) * 2010-09-15 2015-09-02 株式会社リコー 通信装置、通信ユニット、通信システム、通信方法およびプログラム
US20120216015A1 (en) * 2011-02-22 2012-08-23 Mitra Sumanranjan S System and method to concurrently execute a plurality of object oriented platform independent programs by utilizing memory accessible by both a processor and a co-processor
US20130086315A1 (en) * 2011-10-04 2013-04-04 Moon J. Kim Direct memory access without main memory in a semiconductor storage device-based system

Also Published As

Publication number Publication date
US20130332640A1 (en) 2013-12-12
JP2013254405A (ja) 2013-12-19
US9424223B2 (en) 2016-08-23

Similar Documents

Publication Publication Date Title
JP5949188B2 (ja) 密結合マルチプロセッサシステム
Stuecheli et al. CAPI: A coherent accelerator processor interface
KR100305947B1 (ko) 신호프로세싱응용에사용하는재구성가능한컴퓨터구조
CN100456274C (zh) 易于扩展的多cpu系统
KR101642646B1 (ko) 인터럽트가능 저장 익스클루시브
JPS62208158A (ja) マルチプロセツサシステム
US20140115195A1 (en) Dma vector buffer
US11775464B2 (en) Computer system and a computer device
US20220050780A1 (en) System and method for facilitating hybrid hardware-managed and software-managed cache coherency for distributed computing
JPS59501764A (ja) 全体制御を特徴とするマルチプロセツサ計算システム
JP5904948B2 (ja) システムのいくつかの構成要素のメモリ間の直接データ転送を許可するそのシステム
JP2003271574A (ja) 共有メモリ型マルチプロセッサシステムにおけるデータ通信方法
US7904663B2 (en) Secondary path for coherency controller to interconnection network(s)
CN201159895Y (zh) 多处理器连接电路
US20050289334A1 (en) Method for loading multiprocessor program
JP6176162B2 (ja) データ処理装置
JP6432348B2 (ja) 演算装置及び演算方法
JP2549241B2 (ja) コンピュータ・システム
US20130339566A1 (en) Information processing device
US20130155082A1 (en) Data stream processing architecture enabling extension of neighborhood mask
CN216352292U (zh) 服务器主板及服务器
CN112597092B (zh) 一种数据交互方法、机器人及存储介质
WO2019085849A1 (zh) 一种存储设备及存储系统
CN117520214A (zh) 用于支持多处理器架构的系统缓存架构和芯片
JPH0646413B2 (ja) デ−タ処理プロセッサ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160421

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160523

R150 Certificate of patent or registration of utility model

Ref document number: 5949188

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees