JP2018514888A - 独立型アレイコンピュータ - Google Patents

独立型アレイコンピュータ Download PDF

Info

Publication number
JP2018514888A
JP2018514888A JP2018506809A JP2018506809A JP2018514888A JP 2018514888 A JP2018514888 A JP 2018514888A JP 2018506809 A JP2018506809 A JP 2018506809A JP 2018506809 A JP2018506809 A JP 2018506809A JP 2018514888 A JP2018514888 A JP 2018514888A
Authority
JP
Japan
Prior art keywords
computer
master computer
node
master
architecture
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.)
Granted
Application number
JP2018506809A
Other languages
English (en)
Other versions
JP6738408B2 (ja
JP2018514888A5 (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.)
International Microsystems Inc IMI
Original Assignee
International Microsystems Inc IMI
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 International Microsystems Inc IMI filed Critical International Microsystems Inc IMI
Publication of JP2018514888A publication Critical patent/JP2018514888A/ja
Publication of JP2018514888A5 publication Critical patent/JP2018514888A5/ja
Application granted granted Critical
Publication of JP6738408B2 publication Critical patent/JP6738408B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17362Indirect interconnection networks hierarchical topologies
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17331Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Multi Processors (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

複数のノードコンピュータに接続されているマスターコンピュータから構成される階層アレイコンピュータアーキテクチャであって、各ノードがメモリセグメントを有する、階層アレイコンピュータアーキテクチャ。マスターコンピュータとノードとの間の高速接続方式によって、マスターコンピュータまたは個々のノードが、ノードのメモリセグメントに、条件付きでアクセスすることができる。結果としてのアーキテクチャでは、大きな分散メモリを有するアレイコンピュータが作成され、分散メモリの各メモリセグメントが、関連するコンピューティング要素を有し、アレイ全体が、ブレードサーバタイプのエンクロージャ内に格納されている。このアーキテクチャを使用して作成されるアレイコンピュータでは、ノードの数に対応して処理速度が線形的に増大する。【選択図】 図5B

Description

本発明は、コンピュータアーキテクチャに関し、詳細には、階層アレイコンピュータに関する。
特許文献1に記載されているように、電子メールなどWebベースのデータを処理するサーバファームにおいて最もしばしば見られるブレードサーバと称される、特定の用途に特化されたコンピュータのアレイが、21世紀の初めに登場した。ブレードサーバにおけるブレードは、ブレードエンクロージャ(blade enclosure)と称される共通のシャーシ内にグループ化された比較的小型のサーバコンピュータである。一般的なブレードエンクロージャ内では、ブレードが共通の電源およびデータバスを共有し、データバスは、データおよびコマンドを受信および送信する手段をブレードに提供する。さらに、ブレードエンクロージャにはスイッチサーバ(管理モジュールと称されることもある)が含まれており、スイッチサーバは、特許文献2に記載されているように、ブレードのためのジョブコントローラとして機能する。
ブレードサーバの例を図1に示してある。ブレードシャーシ100は、取り外し可能なサーバブレード101a〜101nを含む。ブレード101は共通のバックプレーン102を共有しており、共通のバックプレーン102は、電源103からのブレード電力と、通常はEthernetバスである共有通信バス104とを提供する。すべての外部コマンドおよび外部データは、内部の通信バス104を通じて共有される。1つまたは複数の管理モジュール105が、サーバブレードの動作を調整する。通信バスの外部接続部106によって、NAS(ネットワーク接続ストレージ:Network Attached Storage)ストレージなど共通のメモリソース107へのアクセスがブレードに提供される。ブレード101a〜101nは、一般には、それぞれのローカルな処理に使用するための自身のプライベートメモリ108a〜108nを有する。
その後、特許文献3に記載されているように、ブレードエンクロージャにおけるサーバブレード管理モジュールに修正が加えられ、サーバブレードがUSBメモリデバイスなど共通の一連のUSBデバイスにアクセスできるようになった。引用した特許においては、サーバブレードエンクロージャのUSBホストポートとブレードとの間のブリッジとして機能するブレードサーバ管理モジュールによって、各ブレードを複数の外部USBデバイスポートに接続するための手段が提供される。USBデバイスにはキーボード、マウス、CD−ROM、USBスティックなど多数のタイプがあるため、ブレードサーバは、多くの追加機能を利用することができる。このようにブレードサーバにおいて外部USBデバイスを使用する状況の簡略図を図2に示してある。図2の追加のI/Oネットワーク110と、ブレードサーバ管理モジュール105の中の追加のハードウェアとによって、USBデバイス112a−112mはサーバブレード101a〜101nと通信することができる。
非特許文献1において論じられているように、ブレードサーバは、コンピュータのアレイとみなすことはできるが、「アレイコンピュータ」とはみなされず、「アレイコンピュータ」は、通常ではハードウェアの実行およびソフトウェアの実行の両方において互いに密結合されているコンピュータのグループを意味する。アレイコンピュータの主たる違いは、アレイを構成している異なるコンピューティングノードの間の相互接続経路を記述するアレイの「アーキテクチャ」である。
非特許文献1におけるアレイコンピュータのアーキテクチャの総説論文には、過去のアレイ処理のソリューションに関連付けられる、ハードウェアおよびソフトウェアの幅広い複雑な実装が示されている。実際のアレイ処理コンピュータの良い例は、1990年頃にJurgen Sauermannによって構築された並列APLマシン(parallel APL machine)(非特許文献2)である。図3は、Sauermannマシン300の簡略ブロック図を示している。Sauermannマシン300は、アレイコンピュータの要素すべてを有し、すなわちマスタープロセッサ301が共通の通信ネットワーク303を介してスレーブプロセッサ304のアレイに密結合されており、デュアルポートメモリ302がマスターコンピュータとスレーブプロセッサとの間で共有されている。スレーブプロセッサは、数学的計算を実行するFPGAのアレイであるネットワーク305にさらに接続されている。Sauermannマシンは、コンピュータスクリプト言語APLで書かれたプログラムを処理するという特定のタスク専用であった。Sauermannマシンのいくつかは、製造後に独国の郵便局で使用された。
プロジェクトは成功したが、Sauermannマシンのアーキテクチャを別の用途に適合させることは容易ではない。特定の用途に特化されたハードウェアおよびソフトウェアは、アレイ処理の典型である。このように述べる理由として、本発明は、Sauermannマシンの対象用途への関心から着想されたものであり、本発明者らの試み、すなわち、ソフトウェアおよびハードウェアの両方の観点から幅広く使用することのできるアレイ処理アーキテクチャを提示すると同時に、コンピュータのハードウェアおよびソフトウェアの今後の進歩に対して柔軟に適合可能であるアーキテクチャを提供することにつながったためである。
大規模な接続されたアレイにコンピューティング要素を配置することに加えて、より最近の方法では、非特許文献3に記載されているように、多数のCPUコアを含む1つの集積化プロセッサが構築された。Intel社やAMD社から入手可能なものなど、マルチコアプロセッサは、計算速度を大幅に高めることができる。しかしながらこれらのマルチコアプロセッサには、マルチコア設計を利用するための特殊なハードウェアおよびソフトウェアが要求される。さらに、これらのマルチコアプロセッサには、プログラミングの複雑さを増大させ、計算を遅くする1つの大きな欠点がある。すなわちすべてのコアが1つの物理チャネルを通じて外部ストレージにアクセスする。
アレイコンピュータの主たる目標は、単一のコンピュータの処理能力を使用し、処理速度が単一のコンピュータよりもN倍高速である、N個のコンピュータを有するマシンを作成することである。このシンプルな目標から、ソフトウェアおよびハードウェアの幅広いソリューションが生み出されたが、これらは一般的に複雑および/または高価なソリューションとなった。
本発明は、独立型コンピューティングノード(disjoint computing node)および新規の分散メモリ構造を有する階層コンピュータアーキテクチャを使用することによって、追加のコンピューティングノードにより処理能力において線形利得を達成する、ブレードサーバタイプのエンクロージャ内に格納されるアレイコンピュータを作成する一方で、アレイ処理のための簡単なプログラミングモデルを提供する手段を提供する。
米国特許第6,411,506号明細書 米国特許第7,209,347号明細書 米国特許第7,412,544号明細書
"A Decade of RCS" Proc. IEEE Conf. on Design, Automation and Test in Europe (2001) "A Parallel APL Machine"1990 ACM 089791-371 "Multicore Processors - A Necessity" by Bryan Schauer (csa-discoveryguides-multicore review, 9-2008)
メモリセグメントが直接接続されているコンピューティングノードのアレイにマスターコンピュータを接続する独立型高速データチャネルを使用する、セグメント化されている大きなセグメント化メモリを有するマスターコンピュータ、から構成されている階層アレイコンピュータアーキテクチャ。マスターコンピュータは、マスストレージのブロックのアレイとしてメモリセグメントをマッピングし、各メモリセグメントは、マスターコンピュータに、または、メモリセグメントが直接接続されているコンピューティングノードに、排他的にマッピングされる。
コンピューティングノードは、それぞれのクライアントであるマスターコンピュータからのコマンドを待機しているサーバとして機能し、マスターコンピュータからの命令時、それぞれの関連する共有メモリセグメントにおいてデータを処理するために使用される。
説明したアーキテクチャは、ストレージの各メモリセグメントが、マスターコンピュータによって、またはコンピューティングノードのアレイの1つのメンバーのみによって、排他的にアクセス可能である、分散ストレージとみなすこともできる。コンピューティングノードのアレイ内に存在する多数のメモリコントローラによって、極めて高いメモリアクセス速度と、容易にスケーラブルなストレージアレイが提供される。
従来技術: 一般的なブレードサーバエンクロージャ。 従来技術: USBポートアクセスをサーバブレードに提供するブレードサーバ。 従来技術: Sauermann並列APLマシン。 DACコンピュータアーキテクチャであり、マスターコンピュータとノードコンピュータとの間の接続を示している。 DACマスターコンピュータがメモリセグメントのアレイに接続されている状況。 DACマスターコンピュータがコンピューティングノードのアレイに接続されている状況。 2レベルのDACコンピュータの好ましい実施形態であり、レベル1のマスターコンピュータとレベル2の各ノードコンピュータとの間の1つのUSBマルチガジェットチャネルが、マスターコンピュータおよび接続されているノードプロセッサの間のストレージリンクおよび通信リンクの両方を提供する。
本発明は、一般的には、コンピュータアーキテクチャに関し、詳細には、階層アレイコンピュータに関する。以下の説明は、この技術分野における通常の技能を有する者が本発明を作製および使用することを可能にする目的で提示するものであり、特許出願およびその要件に基づいて提供されている。当業者には、本明細書に記載されている好ましい実施形態へのさまざまな修正ならびに一般的な原理および特徴が容易に理解されるであろう。したがって、本発明は、示した実施形態に制限されるようには意図されておらず、本明細書に記載されている原理および特徴に矛盾しない最も広い範囲が許容されるように意図されている。
本発明を説明するため、短い頭字語「DAC」が使用されている。この名前は句「独立型アレイコンピュータ:Disjoint Array Computer」から来ており、なぜならDACコンピュータは並列アレイコンピュータであり、コンピューティングノードのアレイが、共通のバスを共有しない高速データチャネルを使用してマスターコンピュータに接続されているためである。すなわちコンピューティングノードは互いに独立している。図4は、階層的な2レベルのDACコンピュータ400の実施形態を示している。
図4において、高速データ経路402a〜402nは、(a)マスターコンピュータとノードコンピュータ403a〜403nそれぞれとの間の通信チャネルと、(b)マスターコンピュータにN個のマスストレージメモリセグメント404a〜404nを提供する、というデュアル機能を提供する。各メモリセグメント404a〜404nは、マスターコンピュータ401によって、または代わりに個々のコンピュータノード403a〜403nによって、アドレッシング可能であるのみである。マスターコンピュータとノード(コンピューティングレベルにかかわらず)は、通信チャネル402a〜402nを使用することによって、マスストレージメモリセグメント404a〜404nに単独でアクセスする。図4のDACコンピュータ400は、以下の点で独特なメモリマッピング構造を提供し、すなわちレベル1のマスターコンピュータ401を対象とする大きなセグメント化メモリを作成することができ、メモリセグメントには、コンピューティングノード403a〜403nに接続されている高速独立型データチャネル402a〜402nを使用してアクセスされる。
図5Aは、マスターコンピュータがN個のメモリセグメントすべてに単独でアクセスするときに、この共有メモリがマスターコンピュータからどのように認識されるかを示している。図5Bは、すべてのノードがメモリセグメントに単独でアクセスするときに、マスターコンピュータがレベル2のノードのアレイをどのように認識するかを示している。
この実施形態は、それぞれが自身のコントローラを有する多数のメモリブロックが、1つのメモリマネージャによって制御される大きな分散メモリストア(distributed memory store)としてみなされ得るようにすることによって、分散マスストレージアーキテクチャを作成する手段を提供する。したがって、DACメモリ構造は、比較的小さいメモリブロックの増大を使用して線形的に拡張する能力を有するメモリストアを提供する。例えば、図4のDACコンピュータが、それぞれが1TBのSSDフラッシュドライブを有する32個のノードを有し、これらが4TBのSSDドライブに置き換えられる場合、レベル1のDACコンピュータによって認識される合計メモリは、32TBから256TBに増大する。
各メモリセグメントが自身のコントローラを有するこのような分散ストレージアーキテクチャの主たる利点として、1つの大きなストア内に存在する同じ量のストレージが1つのメモリコントローラによってアクセスされる場合よりも、各メモリセグメントにずっと高速にアクセスすることができる。
第2の主たる利点として、コンピューティングノードが、それぞれが処理するように課せられているデータに密結合され、この結合によって、別のノードまたはマスターコンピュータとのあらゆる衝突が排除される。
個々のメモリセグメントが、マスターコンピュータによって、または代わりに分離されているコンピューティングノードによって、完全に所有されるというデュアル特性は、DAC設計の重要な要素である。これにより、マスターコンピュータおよびノードコンピュータの両方におけるソフトウェアプログラムは、自身がアクセスしているメモリを完全に所有することができ、マルチポートメモリに一般に関連付けられるインタラクティブ問題を処理しなくてよい。
図4、図5A、および図5Bに示した上述したアーキテクチャは、本発明者らが、独立型メモリ(disjoint memory)を使用する独立型コンピューティング(disjoint computing)と称するものである。
図4のDAC共有メモリの同じ領域に、マスターコンピュータ401と、コンピューティングノード403の1つの両方によって同時にアクセスされるべきではないため、マスターコンピュータが共有メモリへの排他的アクセスを調整できるようにする手段を、マスターコンピュータとすべてのコンピューティングノードとの間に提供しなければならない。
図6は、DACコンピュータアーキテクチャの図4の好ましい実施形態の1つのバージョンを示しており、レベル1のコンピュータ600とレベル2のノード603との間の高速データチャネルがUSBシリアルチャネル602である。この実施形態においては、コンピューティングノードのUSBデバイスポート604が、マスターコンピュータのUSBホストポート601に接続されている。ノードのUSBデバイスポートドライバは、スリーウェイUSBマルチガジェットアーキテクチャ(three way USB multi-gadget architecture)をサポートし、このアーキテクチャによってマスターコンピュータは、自身のUSBホストポート601が3つの異なるUSBガジェット(すなわちメモリストレージブロックI/Oデバイス604b、Ethernetポート604a、およびTTYポート604c)に接続されているものと認識することができる。この特定の実施形態においては、USBブロックI/Oデバイス604bは、コンピューティングノードの物理ストレージドライブ606にマッピングされている。USBガジェットである仮想Ethernetポート604aは、マスターコンピュータとコンピューティングノードとの間のコマンドチャネルとして使用することができる。USBガジェットであるTTYポート604cは、コンピューティングノードを識別および初期化する目的にマスターコンピュータによって使用することができる。
上の実施形態では、マスターコンピュータをコンピューティングノードに接続するのにUSB接続が使用されていたが、サポートソフトウェアドライバを有する別の物理バスを使用して、上述した方法と同じようにマスターコンピュータをノードコンピュータに接続することもできる(マスターコンピュータおよびノードコンピュータにおけるそれぞれのPCIeバスに接続されるカスタムFPGAの使用を含む)。
Webブレードサーバは、高速Webトラフィックを処理するのにしばしば使用される。最初の方で説明したブレードサーバアーキテクチャは、図4に示したDACコンピュータの好ましい実施形態に似ている。いずれの実施形態も、通常では標準のサーバラックに収まるように設計される。いずれも、個々の処理ノードに給電するのに共通の電源を使用する。いずれも、処理ノードを制御するためのマネージャを有する。
しかしながら、標準的なWebブレードサーバと、提示したDACコンピュータの好ましい実施形態との間には、大きな違いが存在する。データ転送のための、ブレードサーバの主たる通信チャネルは、ブレード管理モジュールを含むすべてのブレードに接続されている高速バスである。DACコンピュータは、代わりに、自身のマスターコンピュータとコンピュータノードとの間の個別のデータチャネルを使用する。これに加えて、DACコンピュータのメモリ構造は新規のストレージメモリであり、このストレージメモリを使用して、DACマスターコンピュータを対象とする大きなセグメント化メモリと、DACコンピューティングノードを対象とする、これに代わるより小さいメインメモリセグメントの両方を提供する。さらには、DACノードは、DACコンピュータエンクロージャの外側の外部メモリに直接アクセスしないのに対して、Webサーバブレードは、Ethernetネットワークなどのネットワーク接続を通じて外部メモリを直接アドレッシングする。
階層DACコンピュータアーキテクチャでは、DACマスターコンピュータとDACコンピューティングノードとの間の通信およびメモリの完全な直交性を維持することによって、ハードウェア設計およびソフトウェア設計の両方において他に類を見ない単純性が達成される。
これに加えて、セグメント化されたストレージメモリをコンピューティングノードに物理的に配置することによって、極めて大きなストレージを多数のメモリコントローラによって容易に制御することができる。
ここまで本発明について、示した実施形態に従って説明してきたが、これらの実施形態のバリエーションを導くことができ、それらのバリエーションが本発明の趣旨および範囲内であることが、この技術分野における通常の技能を有する者には容易に認識されるであろう。したがって、この技術分野における通常の技能を有する者には、添付の請求項の趣旨および範囲から逸脱することなく、多くの修正を行うことができる。

Claims (9)

  1. マスターコンピュータと、ノードコンピュータのアレイと、を備えており、
    前記マスターコンピュータは、複数のノードコンピュータのそれぞれに、前記マスターコンピュータのみが個別の通信チャネルを介して任意のノードコンピュータに直接アクセスするよう、前記個別の通信チャネルによって接続されており、
    前記複数のノードコンピュータは、前記ノードコンピュータまたは前記マスターコンピュータによりアクセス可能なメモリセグメントをそれぞれ有し、かつ、前記マスターコンピュータを共通のクライアントとするサーバとして機能し、
    前記マスターコンピュータまたは前記ノードコンピュータのいずれかによる前記メモリセグメントへの排他的アクセスの選択が、前記マスターコンピュータと前記ノードコンピュータとの間の前記通信チャネルを使用して前記マスターコンピュータによって決定され、
    前記マスターコンピュータと前記複数のノードコンピュータの両方が、同じエンクロージャを共有する、
    階層コンピュータアーキテクチャ。
  2. 前記マスターコンピュータおよび前記複数のノードコンピュータは、自身の電力を前記エンクロージャ内の中央電源から得る、
    請求項1の階層コンピュータアーキテクチャ。
  3. 前記マスターコンピュータが、通信独立型データチャネル以外の手段を使用して、コマンドを伝えて前記複数のノードコンピュータからステータスを受信できる、
    請求項1の階層コンピュータアーキテクチャ。
  4. 前記複数のノードコンピュータのそれぞれが、前記マスターコンピュータにおける複数のUSBホストポートにインタフェース接続されている、前記ノードコンピュータに存在するUSBデバイスポート、を使用し、
    前記マスターコンピュータにおける前記複数のUSBホストポートのそれぞれが、前記ノードコンピュータにアタッチされている物理メモリストアである、前記ノードコンピュータにおけるメモリセグメント、にマッピングされる、
    請求項1の階層コンピュータアーキテクチャ。
  5. 前記複数のノードコンピュータの前記USBデバイスポートが、1つまたは複数のUSBストレージデバイスおよびUSB通信チャネルを前記マスターコンピュータに提供するUSBマルチガジェットデバイスとして、前記マスターコンピュータに認識される、
    請求項4の階層コンピュータアーキテクチャ。
  6. 前記マスターコンピュータによって認識される、前記複数のノードコンピュータにおける前記マルチガジェットUSBデバイスが、USB Ethernetポートを含む、
    請求項5の階層コンピュータアーキテクチャ。
  7. 前記マスターコンピュータによって認識される、前記複数のノードコンピュータにおける前記マルチガジェットUSBデバイスが、USB TTYポートを含む、
    請求項5の階層コンピュータアーキテクチャ。
  8. 前記複数のノードコンピュータは、前記複数のノードコンピュータに存在するPCIeポートに接続されているFPGAから得られる通信ポート、を使用し、
    前記FPGA通信ポートは、前記マスターコンピュータに対して互換性の通信ポートをさらに提供し、
    前記マスターコンピュータにおける前記互換性の通信ポートのそれぞれが、前記マスターコンピュータから、前記複数のノードコンピュータのそれぞれに個別にアタッチされているメモリセグメントへのアクセスを提供する、
    請求項1の階層コンピュータアーキテクチャ。
  9. 前記ノードコンピュータのアレイに接続されているマスターコンピュータの前記階層コンピュータアーキテクチャを使用して、分散ストレージメモリアーキテクチャが作成され、
    前記複数のノードコンピュータのそれぞれが、前記マスターコンピュータによって、個別にアドレッシング可能なストレージデバイスとしてマッピングできる1つまたは複数のストレージデバイス、を有し、
    前記1つまたは複数のストレージデバイスの集まりが、前記マスターコンピュータを対象とする、容易にスケーラブルであり構造的にモジュール式である大きな分散ストレージメモリ、を形成する、
    請求項1の階層コンピュータアーキテクチャ。
JP2018506809A 2015-04-22 2016-04-22 独立型アレイコンピュータ Active JP6738408B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562151290P 2015-04-22 2015-04-22
US62/151,290 2015-04-22
US14/743,752 2015-06-18
US14/743,752 US9977762B2 (en) 2015-04-22 2015-06-18 Disjoint array computer
PCT/US2016/029056 WO2016172634A1 (en) 2015-04-22 2016-04-22 Disjoint array computer

Publications (3)

Publication Number Publication Date
JP2018514888A true JP2018514888A (ja) 2018-06-07
JP2018514888A5 JP2018514888A5 (ja) 2019-05-30
JP6738408B2 JP6738408B2 (ja) 2020-08-12

Family

ID=57143689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018506809A Active JP6738408B2 (ja) 2015-04-22 2016-04-22 独立型アレイコンピュータ

Country Status (6)

Country Link
US (4) US9977762B2 (ja)
EP (1) EP3286883B1 (ja)
JP (1) JP6738408B2 (ja)
KR (1) KR20170139631A (ja)
CN (1) CN107710688B (ja)
WO (1) WO2016172634A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020051505A1 (en) * 2018-09-07 2020-03-12 The Board Of Trustees Of The University Of Illinois Application-transparent near-memory processing architecture with memory channel network

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155851A (en) * 1989-05-15 1992-10-13 Bell Communications Research, Inc. Routing an incoming data stream to parallel processing stations
JPH06290283A (ja) * 1993-04-05 1994-10-18 Mitsubishi Electric Corp 並列データ処理装置
JP2002057688A (ja) * 2000-04-10 2002-02-22 Internatl Business Mach Corp <Ibm> ネットワーク処理システムにおけるメモリ管理方法およびシステム
JP2005062956A (ja) * 2003-08-14 2005-03-10 Toshiba Corp スケジューリング方法および情報処理システム
JP2007503647A (ja) * 2003-08-27 2007-02-22 エピセンター、インコーポレイテッド ラックアーキテクチャおよび管理システム
US20090031051A1 (en) * 2007-07-26 2009-01-29 Vincent Nguyen Centralized server rack management using usb
JP2014130420A (ja) * 2012-12-28 2014-07-10 Hitachi Ltd 計算機システム及び計算機の制御方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7418470B2 (en) * 2000-06-26 2008-08-26 Massively Parallel Technologies, Inc. Parallel processing systems and method
US6411506B1 (en) 2000-07-20 2002-06-25 Rlx Technologies, Inc. High density web server chassis system and method
US9170812B2 (en) * 2002-03-21 2015-10-27 Pact Xpp Technologies Ag Data processing system having integrated pipelined array data processor
US20040103163A1 (en) * 2002-11-27 2004-05-27 Hao-Hsing Lin Serial bus disk extender and portable storage device
US7412544B2 (en) 2004-06-18 2008-08-12 International Business Machines Corporation Reconfigurable USB I/O device persona
TW200602888A (en) 2004-07-09 2006-01-16 Quanta Comp Inc Server blade system
US7707348B2 (en) * 2005-07-13 2010-04-27 Cisco Technology, Inc. Multi-use USB host to Ethernet adapter
US8407660B2 (en) * 2007-09-12 2013-03-26 Neal Solomon Interconnect architecture in three dimensional network on a chip
JP5347408B2 (ja) * 2008-09-26 2013-11-20 富士通株式会社 処理方法及び記憶システム
US8230121B2 (en) * 2009-01-05 2012-07-24 Sierra Wireless, Inc. Method and apparatus for identifying a device handle in a computer system
US8171027B1 (en) * 2009-02-25 2012-05-01 The Mathworks, Inc. Clustering for additive trees
US8122177B1 (en) * 2009-05-19 2012-02-21 Xilinx, Inc. Direct memory access technique for use with PCIe endpoints
US9094317B2 (en) * 2009-06-18 2015-07-28 Hewlett-Packard Development Company, L.P. Processor topology switches
CN101938368A (zh) * 2009-06-30 2011-01-05 国际商业机器公司 刀片服务器系统中的虚拟机管理器和虚拟机处理方法
EP2499576A2 (en) * 2009-11-13 2012-09-19 Richard S. Anderson Distributed symmetric multiprocessing computing architecture
TWI437445B (zh) * 2010-02-09 2014-05-11 Quanta Comp Inc 刀鋒型伺服器之電腦管理方法
US9135086B2 (en) * 2010-09-22 2015-09-15 Rosetta Stone, Ltd. Performing a computerized language teaching lesson using a main computer and a mobile device
US20140129681A1 (en) * 2011-06-10 2014-05-08 Dmitry Alekseevich Gorilovsky Method of installing a driver to emulate a network card
US9619417B2 (en) * 2011-06-17 2017-04-11 Alcatel Lucent Method and apparatus for remote delivery of managed USB services via a mobile computing device
US9158548B2 (en) * 2012-11-13 2015-10-13 The Johns Hopkins University System and method for program and resource allocation within a data-intensive computer
US9760481B2 (en) * 2014-06-13 2017-09-12 Sandisk Technologies Llc Multiport memory

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155851A (en) * 1989-05-15 1992-10-13 Bell Communications Research, Inc. Routing an incoming data stream to parallel processing stations
JPH06290283A (ja) * 1993-04-05 1994-10-18 Mitsubishi Electric Corp 並列データ処理装置
JP2002057688A (ja) * 2000-04-10 2002-02-22 Internatl Business Mach Corp <Ibm> ネットワーク処理システムにおけるメモリ管理方法およびシステム
JP2005062956A (ja) * 2003-08-14 2005-03-10 Toshiba Corp スケジューリング方法および情報処理システム
JP2007503647A (ja) * 2003-08-27 2007-02-22 エピセンター、インコーポレイテッド ラックアーキテクチャおよび管理システム
US20090031051A1 (en) * 2007-07-26 2009-01-29 Vincent Nguyen Centralized server rack management using usb
JP2014130420A (ja) * 2012-12-28 2014-07-10 Hitachi Ltd 計算機システム及び計算機の制御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
佐藤陽二,桑野雅彦: "USB機器のハードウェアとソフトウェアの構成", INTERFACE, vol. 第30巻,第10号,(通巻第328号), JPN6020012196, 1 October 2004 (2004-10-01), JP, pages 52 - 59, ISSN: 0004244989 *
桑野雅彦: "パソコンと通信するための準備 3ステップ", INTERFACE, vol. 第39巻,第12号,(通巻第438号), JPN6020012197, 1 December 2013 (2013-12-01), JP, pages 70 - 77, ISSN: 0004244988 *

Also Published As

Publication number Publication date
KR20170139631A (ko) 2017-12-19
US11016927B2 (en) 2021-05-25
CN107710688A (zh) 2018-02-16
US20180232336A1 (en) 2018-08-16
US20160314094A1 (en) 2016-10-27
EP3286883A1 (en) 2018-02-28
US20190347240A1 (en) 2019-11-14
WO2016172634A1 (en) 2016-10-27
JP6738408B2 (ja) 2020-08-12
US11360931B2 (en) 2022-06-14
US9977762B2 (en) 2018-05-22
EP3286883A4 (en) 2018-12-19
US20210271629A1 (en) 2021-09-02
US10366047B2 (en) 2019-07-30
EP3286883B1 (en) 2021-12-01
CN107710688B (zh) 2020-11-03

Similar Documents

Publication Publication Date Title
US10521273B2 (en) Physical partitioning of computing resources for server virtualization
US20240168823A1 (en) Computer cluster arrangement for processing a computation task and method for operation thereof
US10841234B2 (en) Constructing virtual motherboards and virtual storage devices
US12056077B2 (en) Machine templates for compute units
US20180307972A1 (en) Local multicast in single-host multi-gpu machine for distributed deep learning systems
Roozbeh et al. Software-defined “hardware” infrastructures: A survey on enabling technologies and open research directions
US10404800B2 (en) Caching network fabric for high performance computing
CN109445905A (zh) 虚拟机数据通信方法和系统以及虚拟机配置方法和装置
JP6491741B2 (ja) セルオートマトンを用いたクラスタサーバの構成
US10521260B2 (en) Workload management system and process
EP3718018A1 (en) Mechanisms for fpga chaining and unified fpga views to composed system hosts
Turisini et al. Leonardo: A pan-European pre-exascale supercomputer for HPC and AI applications
US11360931B2 (en) Disjoint array computer
US20200341597A1 (en) Policy-Based Dynamic Compute Unit Adjustments
Roozbeh Toward Next-generation Data Centers: Principles of Software-Defined “Hardware” Infrastructures and Resource Disaggregation
Quintero et al. IBM Platform Computing Solutions Reference Architectures and Best Practices
US11314455B2 (en) Mapping of RAID-CLI requests to vSAN commands by an out-of-band management platform using NLP
US20230036751A1 (en) Sparse memory handling in pooled memory
Misawa et al. Dynamic Reconfiguration of Computer Platforms at the Hardware Device Level for High Performance Computing Infrastructure as a Service
Vaihela The performance and optimization of HPC clusters
CN109313583A (zh) 用于减小对软件定义的基础设施架构的静态和动态分片影响的方法和装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20180425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190418

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190418

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190809

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190819

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20190813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200622

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: 20200630

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200717

R150 Certificate of patent or registration of utility model

Ref document number: 6738408

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250