JP2008511087A - Facilitating resource allocation in heterogeneous computing environments - Google Patents

Facilitating resource allocation in heterogeneous computing environments Download PDF

Info

Publication number
JP2008511087A
JP2008511087A JP2007535123A JP2007535123A JP2008511087A JP 2008511087 A JP2008511087 A JP 2008511087A JP 2007535123 A JP2007535123 A JP 2007535123A JP 2007535123 A JP2007535123 A JP 2007535123A JP 2008511087 A JP2008511087 A JP 2008511087A
Authority
JP
Japan
Prior art keywords
environment
node
resource manager
attribute
request
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
JP2007535123A
Other languages
Japanese (ja)
Other versions
JP4587183B2 (en
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 Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2008511087A publication Critical patent/JP2008511087A/en
Application granted granted Critical
Publication of JP4587183B2 publication Critical patent/JP4587183B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

異種計算環境におけるリソース割り当てが容易化される。異種計算環境のリソース・マネージャは、異種計算環境のどのノードが、それらのネイティブのオペレーティング・システムおよびプラットホームのほかに、付加的なオペレーティング・システムおよびプラットホームをサポートできるかを記述する情報を得る。この情報は次に、特定のジョブを満たすために、リソース・マネージャによりリソース割り当てにおいて用いられる。  Resource allocation in a heterogeneous computing environment is facilitated. The heterogeneous computing environment resource manager obtains information describing which nodes of the heterogeneous computing environment can support additional operating systems and platforms in addition to their native operating systems and platforms. This information is then used in resource allocation by the resource manager to satisfy a particular job.

Description

本発明は、異種計算環境に関し、詳細には、異種計算環境におけるリソース割り当ての容易化に関する。  The present invention relates to a heterogeneous computing environment, and more particularly to facilitating resource allocation in a heterogeneous computing environment.

異種計算環境は、種々のアーキテクチャおよびオペレーティング・システムを有する複数のノードを含む。例えば、その環境の少なくとも1つのノードが、その環境の少なくとも1つの他のノードと異なるオペレーティング・システムを実行する異なるアーキテクチャに基づいている。異種計算環境の1つの例がグリッド計算環境である。  A heterogeneous computing environment includes multiple nodes having various architectures and operating systems. For example, at least one node in the environment is based on a different architecture running a different operating system than at least one other node in the environment. One example of a heterogeneous computing environment is a grid computing environment.

1つのグリッド計算環境は、大がかりな計算問題を解くために協力するワークステーションまたはサーバのような多くのノードを含む。通常、1つのグリッドは、広い地理的区域上に広がっている。グリッドに寄与する個々のノードは、多くの他の代替的な目的を様々な時に有することがあり、それらは、グリッド・メンバとしてだけでなく、クラスタ内のノードまたは各ワークステーションとして用いられ得る。通常、個々のノードまたはノードのグループを、そのグリッドにとって利用可能にする決定は、そのグリッドがその非グリッド役割においてどれほどビジーであるか、グリッド・ノードについての要求、およびそのノード用に確保されたリソースのタイプを含む、多くの項目に基づく。ストレージ、メモリ、計算パワーおよびファイル・システム・リソースのようなこれらのリソースは、強力で動的な問題解決環境を作り出すために、より大きいグリッドに割り当てられ得る。  A grid computing environment includes many nodes such as workstations or servers that cooperate to solve large-scale computational problems. Usually, one grid extends over a large geographical area. Individual nodes contributing to the grid may have many other alternative purposes at various times, and they can be used not only as grid members but also as nodes or each workstation in the cluster. Typically, the decision to make an individual node or group of nodes available to the grid is reserved for how busy the grid is in its non-grid role, the demand for the grid node, and for that node Based on a number of items, including the type of resource. These resources, such as storage, memory, computing power and file system resources, can be allocated to a larger grid to create a powerful and dynamic problem solving environment.

現在の技術水準において、グリッド・ノードとそのノード上で実行されるべきジョブの特性との間に強いアフィニティ(親和性)がある。特に、ジョブまたはその一部を走らせるために選ばれたノードは、正しいバージョンのオペレーティング・システムおよび正しいプラットホーム・アーキテクチャ(すなわち、正しい環境)を有する必要がある。これは、特定のプラットホーム上で特定のオペレーティング・システムについてコンパイルおよびリンクされる実行可能ファイルをバインドしたジョブの結果である。例えば、実行可能ファイルは、同じ環境のマシン上でのみ走り得るマシン・レベル命令を含んでいる。この欠点は、実行されるべきジョブと同じ環境を有するノードのみのリソースを割り当てるようにグリッドを限定する。  In the current state of the art, there is a strong affinity between a grid node and the characteristics of the job to be executed on that node. In particular, the node chosen to run the job or part thereof needs to have the correct version of the operating system and the correct platform architecture (ie, the correct environment). This is the result of a job binding an executable file that is compiled and linked for a specific operating system on a specific platform. For example, an executable file contains machine level instructions that can only run on machines in the same environment. This drawback limits the grid to allocate resources only for nodes that have the same environment as the job to be executed.

以前より、この欠点を克服するための試みがなされてきた。しかしながら、異種計算環境においてリソース割り当てを容易にする必要性が依然存在する。  Previous attempts have been made to overcome this drawback. However, there remains a need to facilitate resource allocation in heterogeneous computing environments.

異種計算環境においてリソース割り当てを容易化する方法を講じることにより、先行技術の欠点が克服され、付加的な利点が提供される。  By taking a method to facilitate resource allocation in a heterogeneous computing environment, the disadvantages of the prior art are overcome and additional advantages are provided.

上記で要約された方法に対応するシステムおよびコンピュータ・プログラム製品も、本明細書において説明および特許請求される。  Systems and computer program products corresponding to the methods summarized above are also described and claimed herein.

本発明の特徴および利点は、添付図面と共に解釈される以下の詳細な説明から明白である。  The features and advantages of the present invention will become apparent from the following detailed description taken in conjunction with the accompanying drawings.

異種計算環境におけるリソース割り当てを容易にする能力が提供される。異種環境は、環境のどのノードが特定の要求を処理できるかの決定を担う少なくとも1つのリソース・マネージャを含む。この決定を行うため、これまでは、リソース・マネージャは、要求と同じ環境(すなわち、アーキテクチャおよびオペレーティング・システム)を有するノードが考慮することになろう。さらに、改良として、「仮想マシンの起動を含む計算環境内の管理プロセス(Managing Processing Within Computing Emvironments Including Initiation Of Virtual Machines)」と表題を付けられた同時継続PCT特許出願PCT/EP2004/051499号に記載されるように、リソース・マネージャは、要求と同じアーキテクチャの異なる世代のノードも考慮し得るであろう。  The ability to facilitate resource allocation in heterogeneous computing environments is provided. A heterogeneous environment includes at least one resource manager that is responsible for determining which nodes of the environment can handle a particular request. To make this decision, so far, the resource manager will be considered by nodes that have the same environment (ie, architecture and operating system) as the request. Further, as an improvement, a concurrent PCT patent application No. PCT / EP2004 / 0599 titled “Managing Processing With Computing Completing Initiation Of Virtual Machines” including virtual machine activation. As done, the resource manager could also consider different generation nodes of the same architecture as the request.

特定の要求を処理するために考慮されるべきノードの範囲は、大きく拡張される。例えば、要求と異なるネイティブ環境を有するノードが考慮され得る。これらの異種ノードは、そのネイティブ環境が要求とは異なるが、他の環境をサポートできるので、考慮され得る。  The range of nodes that should be considered to handle a particular request is greatly expanded. For example, a node having a native environment different from the request may be considered. These heterogeneous nodes can be considered because their native environment is different from the requirements, but can support other environments.

異種計算環境のリソース・マネージャは、環境中の様々なノードから情報を得、ある要求を処理するためにどのノードが使用できるかを決定するためにその情報を用いる。リソース・マネージャにより得られた情報は、それらのノードによりサポートされるがそれらのノードにとりネイティブではない1つ以上の環境(例えば、プラットホームおよびオペレーティング・システム)に関する属性を含む。これらの互換性属性は、特定の要求を処理するために利用可能なノード、従って、リソースの範囲を広げるために、リソース・マネージャにとり利用可能にされる。  A resource manager in a heterogeneous computing environment obtains information from various nodes in the environment and uses that information to determine which nodes can be used to process a request. The information obtained by the resource manager includes attributes relating to one or more environments (eg, platforms and operating systems) supported by those nodes but not native to those nodes. These compatibility attributes are made available to resource managers to increase the range of nodes available to process a particular request, and thus resources.

異種計算環境の1つの例が図1に示してある。この例において、異種環境は、例えば、インターネット、エクストラネット、またはイントラネットを介してジョブ管理サービス104に結合された複数のユーザ・ワークステーション102(例えば、ラップトップ、ThinkPad(IBM社の登録商標)のようなノートブック、パーソナル・コンピュータ、RS/6000(IBM社の登録商標)等)を含むグリッド計算環境100である。ジョブ管理サービス104は、例えば、IBM(R)により提供されるWebsphere(IBM社の登録商標)のようなウェブ・アプリケーション・サーバ上で実行、または複数のサーバを横断して分散されるウェブ・アプリケーションを含んでいる。ジョブ管理サービスは、ユーザ要求を受け取り、その要求を環境の適切なノードに渡す責任を負う。1つの例として、1人のユーザは、ウェブ・ブラウザまたはスタンド・アロン・アプリケーションのようなクライアント・アプリケーションを介してジョブ管理サービスと対話する。例えば、Platform(www.platform.com)により提供されるLSF、およびhttp://www.supercluster.orgにおいて利用可能なオープン・ソース・スケジューラであるMaui、を含むジョブ管理サービスを含む様々な製品がある。(IBM(R)は、米国ニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーションの登録商標である。本明細書中で用いられる他の名称は、インターナショナル・ビジネス・マシーンズ・コーポレーションおよび他社の登録商標、商標または製品名であることがある。)  One example of a heterogeneous computing environment is shown in FIG. In this example, the heterogeneous environment is, for example, a plurality of user workstations 102 (eg, laptops, ThinkPad (registered trademark of IBM)) coupled to the job management service 104 via the Internet, an extranet, or an intranet. Grid computing environment 100 including such a notebook, personal computer, RS / 6000 (registered trademark of IBM Corporation), and the like. The job management service 104 is executed on a web application server such as Websphere (registered trademark of IBM Corporation) provided by IBM (R) or distributed across a plurality of servers. Is included. The job management service is responsible for receiving user requests and passing the requests to the appropriate nodes in the environment. As one example, a single user interacts with a job management service via a client application, such as a web browser or a stand-alone application. For example, LSF provided by Platform (www.platform.com), and http: // www. supercluster. There are various products including job management services including Maui, an open source scheduler available in org. (IBM® is a registered trademark of International Business Machines Corporation of Armonk, NY, USA. Other names used herein are registered trademarks of International Business Machines Corporation and other companies, May be a trademark or product name.)

ジョブ管理サービス104はさらに、インターネット、エクストラネットまたはイントラネットを介して1つ以上のデータ・センター106に結合されている。各データ・センターは、例えば、メインフレーム、ワークステーションまたはサーバあるいはそれら全部のような1つ以上のノード108を含む。環境のノードは、少なくとも1つのノードが異なるアーキテクチャに基づいている、または少なくとも1つの他のノードと異なるオペレーティング・システムを実行する、あるいはその両方であるという点で異種である。例えば、1つのノードはLinuxオペレーティング・システムを走らせるx86アーキテクチャに基づくことができ、別のノードはAIX(IBM社の登録商標)を走らせるPowerPC(IBM社の登録商標)アーキテクチャに基づくことができる。  The job management service 104 is further coupled to one or more data centers 106 via the Internet, extranet or intranet. Each data center includes one or more nodes 108 such as, for example, mainframes, workstations and / or servers. The nodes of the environment are heterogeneous in that at least one node is based on a different architecture and / or runs a different operating system than at least one other node. For example, one node can be based on the x86 architecture running the Linux operating system, and another node can be based on the PowerPC (IBM registered trademark) architecture running AIX (IBM registered trademark). .

本明細書中に記載されるように、グリッド計算環境は、大がかりな計算問題を解くために協力する複数のノードを含む。グリッドに寄与する個々のノードは、多くの他の代替的な目的を有し得る。例えば、グリッド内のノードは、個々のワークステーションとして用いられたり、クラスタを形成することができ、その1つの例が図2に示してある。クラスタ200は、例えば、1組の同種ノード202を含んでおり、これらの同種ノードは、クラスタ・リソース・マネージャのようなリソース・マネージャ204により管理される。クラスタ・リソース・マネージャは、ユーザからの要求を受信し、個々の要求へのクラスタ・リソースの割り当てを担当する。リソースが割り当てられるやり方は、要求の要件(例えば、ストレージ、CPU要件等)に依存する。スループットを最大化するためにリソースを効率的に用いることは、クラスタ・リソース・マネージャの責任である。クラスタ・リソース・マネージャの1つの例は、ニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーションにより提供されるLoadleveler(IBM社の登録商標)である。  As described herein, a grid computing environment includes a plurality of nodes that cooperate to solve large-scale computational problems. Individual nodes contributing to the grid may have many other alternative purposes. For example, the nodes in the grid can be used as individual workstations or can form a cluster, one example of which is shown in FIG. The cluster 200 includes, for example, a set of homogeneous nodes 202 that are managed by a resource manager 204, such as a cluster resource manager. The cluster resource manager receives requests from users and is responsible for assigning cluster resources to individual requests. The manner in which resources are allocated depends on the requirements of the request (eg, storage, CPU requirements, etc.). It is the responsibility of the cluster resource manager to efficiently use resources to maximize throughput. One example of a cluster resource manager is the Loadleveler (registered trademark of IBM Corporation) provided by International Business Machines Corporation of Armonk, New York.

グリッド計算環境を形成するため、1つ以上のクラスタが一緒に結合され得る。1つのグリッド環境において、図3に示されるように、より大きなグリッドにノードを割り当てるソフトウェアの付加的な層が付加される。グリッド計算環境300は、複数のクラスタの複数のクラスタ・リソース・マネージャ304に結合されるグリッド・リソース・マネージャ302のようなジョブ管理サービスを含む。ある要求がグリッド・リソース・マネージャに渡され、そのグリッド・リソース・マネージャは、各々が異なるアーキテクチャおよびオペレーティング・システムを有することがある1つ以上のノードの組を認識する。あるグリッド要求について利用可能なリソースを評価する際にグリッド・リソース・マネージャが利用するのは、このアーキテクチャおよびオペレーティング・システムのプールからである。例えば、x86クラスタ用にコンパイルされたLinux実行可能プログラムであるグリッド要求(例えば、ジョブまたはその一部)が渡される場合、グリッド・マネージャは、候補リソースを選ぶために、これらの条件を正確に満たすノードの組を考慮するだけである。この欠点は図4に例示されており、そこでは、渡された要求のオペレーティング・システムおよびアーキテクチャの制約のせいで、多数のリソースがアイドル状態のままになることがある。  One or more clusters can be combined together to form a grid computing environment. In one grid environment, an additional layer of software that assigns nodes to a larger grid is added, as shown in FIG. The grid computing environment 300 includes a job management service such as a grid resource manager 302 that is coupled to a plurality of cluster resource managers 304 in a plurality of clusters. A request is passed to the grid resource manager, which recognizes a set of one or more nodes, each of which may have a different architecture and operating system. It is from this architecture and operating system pool that the grid resource manager utilizes in evaluating the available resources for a grid request. For example, if a grid request (eg, a job or part thereof) is passed that is a Linux executable compiled for an x86 cluster, the grid manager will meet these conditions exactly to select a candidate resource. It only considers the set of nodes. This disadvantage is illustrated in FIG. 4, where a large number of resources may remain idle due to operating system and architectural constraints of the passed request.

図4を参照すると、グリッド・リソース・マネージャ400は、クラスタ・リソース・マネージャ404に結合された計算ノード402を考慮するのみである。なぜならば、グリッド・リソース・マネージャは、それらのノードが、走らされるべき実行可能プログラムと同じ環境を有することを認識しているからである。すなわち、x86クラスタ用にコンパイルされたLinux実行可能プログラムは、それらのノード上で走ることができる。なぜならば、それらはx86アーキテクチャに基づいており、Linuxオペレーティング・システムを実行しているからである。PowerPC(IBM社の登録商標)アーキテクチャ上でAIX(IBM社の登録商標)オペレーティング・システムを走らせる、クラスタ・リソース・マネージャ408により管理されるノード406は、リソース割り当てのために考慮されない。なぜならば、それらのノードは、渡された実行可能プログラムと同じ環境ではないからである。  Referring to FIG. 4, the grid resource manager 400 only considers the compute node 402 coupled to the cluster resource manager 404. This is because the grid resource manager knows that these nodes have the same environment as the executable program to be run. That is, Linux executable programs compiled for x86 clusters can run on those nodes. This is because they are based on the x86 architecture and are running the Linux operating system. Nodes 406 managed by the cluster resource manager 408 running the AIX (IBM) operating system on the PowerPC (IBM) trademark architecture are not considered for resource allocation. This is because those nodes are not in the same environment as the passed executable program.

しかしながら、本発明の1つの局面に従って、ノード406は考慮され得る。すなわち、付加的なノードがさらなるオペレーティング・システムおよびアーキテクチャをサポートできれば、グリッド・リソース・マネージャがそれらの付加的なノードを考慮できるようにする能力が提供される。例えば、あるグリッドの1つ以上のノードが1つの環境に対してネイティブである(すなわち、特定のハードウェア・プラットホームおよびオペレーティング・システムを有する)が、それらのノードが他の環境をサポートでできるということが考えられる。例えば、AIX(IBM社の登録商標)を実行するPowerPC(IBM社の登録商標)のネイティブな操作環境を有するノードが、Linuxを実行するx86環境をサポートできることがある。従って、そのノードは、要求により明示的にまたは黙示的にのいずれか一方で示されるような、どちらか一方の環境を必要とする要求を処理(例えば、プログラムを実行)することができる。  However, in accordance with one aspect of the present invention, node 406 can be considered. That is, if additional nodes can support additional operating systems and architectures, the ability to allow the grid resource manager to consider those additional nodes is provided. For example, one or more nodes of a grid are native to one environment (ie have a specific hardware platform and operating system), but those nodes can support other environments It is possible. For example, a node having a native operating environment of PowerPC (registered trademark of IBM Corporation) running AIX (registered trademark of IBM Corporation) may be able to support an x86 environment running Linux. Thus, the node can process (eg, execute a program) a request that requires either environment, as indicated either explicitly or implicitly by the request.

ある要求が、その要求に対してネイティブではないノード上で実行されるために、その要求は、他の環境に移動される。例えば、その要求があるプログラムを走らせることであれば、ネイティブ環境用に書かれているプログラムは、他の環境に移動される。あるプログラムを1つの環境から移動し、それを別の環境において実行可能にするための手法が存在する。1つのそのような手法は、アプリケーション・プログラミング・インタフェース(API)の使用を含む。プログラムは、1つのAPIにおいて定義された一連の適切に定義されたオペレーティング・システム機能を介して、ファイルの読み取りおよび書き込みのような、オペレーティング・システム・ルーチンにアクセスする。Cプログラミング言語のような高レベル・プログラミング言語で書かれた適切に構成されたプログラムは、両方のオペレーティング・システムが同じAPIをサポートするのであれば、1つのオペレーティング・システムから別のオペレーティング・システムに容易に移植できる。例えば、多くのAPIコールを有するCで書かれたプログラムは、AIX(IBM社の登録商標)オペレーティング・システム上で走るかもしれないが、AIX(IBM社の登録商標)がサポートするのと同じAPIの組をLinuxがサポートすれば、Linux上で走るように容易に移植され得るであろう。あるアプリケーションをx86(Intel32ビット)プラットホームから64ビット・プラットホームAPIに移植する場合に同じことが当てはまり、あるAPIが提供されれば、そのプログラムはかなり容易に移植されるはずである。  Because a request is executed on a node that is not native to the request, the request is moved to another environment. For example, if a program having the request is run, a program written for the native environment is moved to another environment. There are techniques for moving a program from one environment and making it executable in another. One such approach involves the use of an application programming interface (API). The program accesses operating system routines, such as reading and writing files, through a series of well-defined operating system functions defined in one API. A well-structured program written in a high-level programming language, such as the C programming language, can be used from one operating system to another if both operating systems support the same API. Easy to transplant. For example, a program written in C with many API calls may run on the AIX (IBM registered trademark) operating system, but the same API supported by AIX (IBM registered trademark) If Linux supports this set, it could be easily ported to run on Linux. The same is true when porting an application from an x86 (Intel 32-bit) platform to a 64-bit platform API, and if an API is provided, the program should be ported fairly easily.

APIの欠点は、APIがプログラミング・インタフェースであり、アプリケーションを1つの環境から別の環境に移植するためにコードの再コンパイルを必要とすることである。AIX(IBM社の登録商標)において走るCプログラムの例に再度戻ると、同じプログラムは、Linuxの下でそのプログラムをうまく実行させるために、LinuxAPIを用いての、Linux環境における再コンパイルを必要とするであろう。1つの環境から別の環境に移植される各プログラムについて再コンパイルを強制するというこの概念は、時間がかかり、時として、API中の隠された欠陥をむきだしにする。従って、他の手法が求められてきた。  The disadvantage of the API is that it is a programming interface and requires code recompilation to port applications from one environment to another. Returning again to the example of a C program running on AIX (a registered trademark of IBM), the same program requires recompilation in the Linux environment using the Linux API in order to successfully run the program under Linux. Will do. This concept of forcing recompilation for each program ported from one environment to another is time consuming and sometimes exposes hidden flaws in the API. Accordingly, other approaches have been sought.

ABIすなわちアプリケーション・バイナリ・インタフェース(Application Binary Interface)と呼ばれる1つの手法は、プログラムを異なる環境で走らせるためのより直接的な手法を提供する。ABIは、1つの環境から実行可能プログラムを取り出し、エミュレーション・ソフトウェア層の使用またはターゲット・マシン上での直接的なハードウェア・サポートにより、別の環境においてその実行可能プログラムを再コンパイルなしで走らせる手法を提供する。ABIを用いる1つのアーキテクチャは、カリフォルニア州サニーヴェールのAMDにより提供されるAMD64アーキテクチャである。ABIの1つの例が、「2進互換性(Binary Compatibility)」、http://gcc.gnu.org/onlinedocs/gcc/Compatibility.htmlに記載されている。  One approach, referred to as ABI or Application Binary Interface, provides a more direct way to run programs in different environments. ABI takes an executable program from one environment and runs the executable program in another environment without recompilation through the use of an emulation software layer or direct hardware support on the target machine Provide a method. One architecture that uses ABI is the AMD64 architecture provided by AMD, Sunnyvale, California. One example of ABI is “Binary Compatibility”, http: // gcc. gnu. org / onlinedoc / gcc / Compatibility. It is described in html.

ABI対応であるノードのような種々のアーキテクチャをサポートできるノードは、グリッド・リソース・マネージャに曝され、その結果、グリッド・リソース・マネージャは、個々のクラスタまたはノードにタスクを割り当てる際にこの情報を用いることができる。これは、ノードのより広いグループがより大きいグリッドに対して利用可能になることを可能にする。  Nodes that can support various architectures, such as nodes that are ABI-enabled, are exposed to the grid resource manager so that the grid resource manager can use this information when assigning tasks to individual clusters or nodes. Can be used. This allows a wider group of nodes to be available for a larger grid.

種々の能力をグリッド・リソース・マネージャに曝すことに関連するロジックであって、グリッド・リソース・マネージャが次にそのリソース割り当てにおいてこの情報を用いることができる、ロジックの1つの実施形態が図5に関連して説明される。  One embodiment of the logic associated with exposing various capabilities to the grid resource manager, which the grid resource manager can then use this information in its resource allocation is shown in FIG. Related description will be given.

ワークステーションのようなノードがオンラインになると(ステップ500)、そのノードは、クラスタ・リソース・マネージャのようなそのリソース・マネージャに1組の属性を提供する(ステップ502)。これらの属性としては、例えば、ノードのプラットホーム(アーキテクチャ)、ノードのオペレーティング・システムおよびオペレーティング・システム・レベル、ならびに、例えば、ABIを介してそのノードによりサポートされる例えば任意の付加的なオペレーティング・システムまたは任意の付加的なプラットホーム(アーキテクチャ)あるいはその両方を含む1組の互換性属性が含まれる。この情報は、例えば、ウェブ・サービス・コール(Web Services Call)またはウェブ・サービス通知(Web Services Notification)を介してクラスタ・リソース・マネージャに提供される。例えば、これらの属性を指定するXML文書は、SOAPコールのようなウェブ・サービス・コールまたは通知を用いてクラスタ・リソース・マネージャに転送される。SOAPの1つの例は、“SOAP Version1.2Part0:Primer”、Nilo Mitra,http://www,w3.org/TR/2003/REC−soap12−part0−20030624/に記載されている。  When a node, such as a workstation, comes online (step 500), the node provides a set of attributes to its resource manager, such as a cluster resource manager (step 502). These attributes include, for example, the node's platform (architecture), the node's operating system and operating system level, and any additional operating systems supported by that node, eg, via ABI. Or a set of compatibility attributes including any additional platform (architecture) or both. This information is provided to the cluster resource manager via, for example, a web service call or a web service notification. For example, an XML document that specifies these attributes is forwarded to the cluster resource manager using a web service call or notification, such as a SOAP call. One example of SOAP is “SOAP Version 1.2 Part 0: Primer”, Niro Mitra, http: // www, w3. org / TR / 2003 / REC-soap12-part0-20003624 /.

クラスタ・リソース・マネージャは、この情報を受信し、少なくともノードの互換性属性(例えば、そのノードがサポートする1つ以上の非ネイティブ環境)をグリッド・リソース・マネージャにパーコレートする(ステップ504)。1つの例において、この情報は、あるノードからクラスタ・リソース・マネージャに情報を送るために使用されるような同様な機構を用いてグリッド・リソース・マネージャに提供される。例えば、互換性属性は、SOAPコールのようなウェブ・サービス・コールを介して、グリッド・リソース・マネージャにより曝されたウェブ・サービスに提供される。情報の提供についての例が本明細書中で示されているが、多くの他の通信媒体が可能である。グリッド・リソース・マネージャは次に、リソースを要求に割り当てる際にこれらの属性を考慮に入れる(ステップ506)。  The cluster resource manager receives this information and percolates at least the compatibility attributes of the node (eg, one or more non-native environments supported by the node) to the grid resource manager (step 504). In one example, this information is provided to the grid resource manager using a similar mechanism such as that used to send information from a node to the cluster resource manager. For example, compatibility attributes are provided to web services exposed by the grid resource manager via web service calls such as SOAP calls. Although examples for providing information are presented herein, many other communication media are possible. The grid resource manager then takes these attributes into account when assigning resources to the request (step 506).

図6は、グリッド・リソース・マネージャがリソース割り当てにおいて互換性属性を使うことができるように互換性属性を得るグリッド・リソース・マネージャの図示である。図6に示されるように、計算ノード600は各々、AIX(IBM社の登録商標)およびPowerPC(IBM社の登録商標)のネイティブ環境を有しているが、x86およびLinuxABI互換である。これらのノードは、この情報をそれらのクラスタ・リソース・マネージャ602に提供する。このクラスタ・リソース・マネージャは次に、グリッド・リソース・マネージャ604までこの情報をパーコレートする。従って、グリッド・リソース・マネージャがLinux実行可能プログラムについての要求を受信すると、グリッド・リソース・マネージャは、リソースをどのように割り当てるかを決める際に、ノード600だけでなくノード606も考慮できる。例えば、ノード600および606が必要なリソースを有するかどうかを見るために、それらのノードについての質問をそれらのノード上のマネージャに送ることができる。それらのノードの1つ以上がリソースを有していれば、その要求を処理するためにそれらのノードの少なくとも1つが選ばれる。  FIG. 6 is an illustration of a grid resource manager that obtains compatibility attributes so that the grid resource manager can use the compatibility attributes in resource allocation. As shown in FIG. 6, each of the compute nodes 600 has a native environment of AIX (registered trademark of IBM Corporation) and PowerPC (registered trademark of IBM Corporation), but is compatible with x86 and Linux ABI. These nodes provide this information to their cluster resource manager 602. This cluster resource manager then percolates this information up to the grid resource manager 604. Thus, when the grid resource manager receives a request for a Linux executable program, the grid resource manager can consider not only node 600 but also node 606 when deciding how to allocate resources. For example, to see if nodes 600 and 606 have the necessary resources, questions about those nodes can be sent to the manager on those nodes. If one or more of those nodes have resources, at least one of those nodes is chosen to handle the request.

異種計算環境におけるリソース割り当てを容易化するための能力が上記で詳細に説明されている。グリッド・リソース・マネージャのようなリソース・マネージャは、異種環境中のどのノードが付加的なオペレーティング・システムおよびプラットホームをサポートできるかを識別する情報を得る。リソース・マネージャは次に、この情報を用いてリソースをどのように割り当てるかを決める。これは、特定の要求について異種計算環境にとり利用可能なリソースの数を有利に拡大する。  The ability to facilitate resource allocation in heterogeneous computing environments is described in detail above. A resource manager, such as a grid resource manager, obtains information that identifies which nodes in a heterogeneous environment can support additional operating systems and platforms. The resource manager then uses this information to determine how to allocate resources. This advantageously expands the number of resources available to the heterogeneous computing environment for specific requirements.

ノードは、本明細書において記載されたクラスと異なるクラス(例えば、メインフレーム、ワークステーションまたはサーバ以外)であること、または異なる環境をサポートすること、あるいはその両方が可能である。さらに、異種環境は、別のノードと同じアーキテクチャを有するが世代が異なるノードを含み得る。加えて、ABI以外の様々なタイプのインタフェースも、ジョブを異なる環境に移動させるために用いられ得る。さらに、互換性属性をノードからグリッド・リソース・マネージャまたは他のマネージャにパーコレートするために様々な機構が用いられ得る。  Nodes can be different classes than those described herein (eg, other than mainframe, workstation or server) and / or support different environments. Furthermore, a heterogeneous environment may include nodes that have the same architecture as another node but different generations. In addition, various types of interfaces other than ABI can be used to move jobs to different environments. In addition, various mechanisms can be used to percolate compatibility attributes from a node to a grid resource manager or other manager.

さらに別の例として、ユーザは、自動化されたサービスまたはプログラムにより置き換えられ得る。さらに、単一の要求またはジョブは、多数のノード上で同時に走る多数のジョブを含み得る。これは、上述されたものと同様に達成される。例えば、グリッド・リソース・マネージャは、複数のクラスタ・マネージャと接触し、それらのマネージャに複数の要求を管理させる。多くの他の変型例も存在する。さらなる例として、環境は、区分化された1つ以上のノードを含み得る、さらなる例として、本発明の1つ以上の局面は、日立製作所のPlug Compatible Machines(PCM)に適用される。他の例も可能である。  As yet another example, a user can be replaced by an automated service or program. Furthermore, a single request or job may include multiple jobs that run simultaneously on multiple nodes. This is accomplished in a similar manner as described above. For example, the grid resource manager contacts a plurality of cluster managers and causes them to manage a plurality of requests. There are many other variations. As a further example, the environment may include one or more nodes that are partitioned. As a further example, one or more aspects of the present invention apply to Hitachi's Plug Compatible Machines (PCM). Other examples are possible.

本発明により、大がかりなノードの設置基盤を有する組織に対し直ちに経済的利益をもたらす未利用コンピュータ・パワーの活用が可能になる。  The present invention enables the utilization of unused computer power that immediately provides economic benefits to organizations with large node installation bases.

本発明は、ソフトウェア、ファームウェア、ハードウェアまたはそれらの何らかの組み合わせにおいて実施できる。  The present invention can be implemented in software, firmware, hardware, or some combination thereof.

本発明は、例えば、コンピュータ利用可能媒体を有する製造品(例えば、1つ以上のコンピュータ・プログラム製品)に含めることができる。媒体はその中に、例えば、本発明の能力を提供し容易化するためのコンピュータ可読プログラム・コード手段またはロジック(例えば、命令、コード、コマンド等)を有している。製造品は、コンピュータ・システムの一部として含めるか、または別個に販売することができる。  The invention can be included, for example, in an article of manufacture (eg, one or more computer program products) having computer-usable media. The medium has, for example, computer readable program code means or logic (eg, instructions, code, commands, etc.) to provide and facilitate the capabilities of the present invention. The article of manufacture can be included as part of the computer system or sold separately.

加えて、本発明の能力を実行するためにマシンにより実行可能な命令の少なくとも1つのプログラムを具体化するマシンにより可読な少なくとも1つのプログラム格納デバイスが提供され得る  Additionally, at least one program storage device readable by a machine that embodies at least one program of instructions executable by the machine to perform the capabilities of the present invention may be provided.

本明細書中で示される流れ図がまさにその例である。本明細書中に記載されたこれらの図あるいはステップ(または操作)の多くの変型が本発明の精神を逸脱することなく可能であろう。例えば、ステップは異なる順序で実行することができ、あるいはステップは、付加、削除または修正され得る。  The flowchart shown herein is just an example. Many variations of these figures or steps (or operations) described herein will be possible without departing from the spirit of the invention. For example, the steps can be performed in a different order, or steps can be added, deleted or modified.

本発明の1つ以上の局面を含みかつ用いる異種計算環境の1つの実施形態を図示する。1 illustrates one embodiment of a heterogeneous computing environment that includes and uses one or more aspects of the present invention. 本発明の1つの局面に従って、図1の異種計算環境において用い得るクラスタの1つの例を図示する。2 illustrates one example of a cluster that can be used in the heterogeneous computing environment of FIG. 本発明の1つの局面に従って、グリッド計算環境の複数のクラスタの1つの例を図示する。Figure 4 illustrates one example of multiple clusters of a grid computing environment, according to one aspect of the invention. グリッドにとり利用可能なリソースが限定されるグリッド計算環境の1つの実施形態を図示する。1 illustrates one embodiment of a grid computing environment where resources available to the grid are limited. 本発明の1つの局面に従って、付加的なリソースのグリッドへの提供に関連付けられたロジックの1つの実施形態を図示する。FIG. 4 illustrates one embodiment of logic associated with providing additional resources to a grid in accordance with one aspect of the invention. 本発明の1つの局面に従って、付加的なリソースが割り当てのためにグリッドにとり利用可能なグリッド計算環境の1つの実施形態を図示する。FIG. 4 illustrates one embodiment of a grid computing environment in which additional resources are available for a grid for allocation in accordance with one aspect of the invention.

Claims (19)

異種計算環境におけるリソース割り当てを容易にする方法であって、前記異種計算環境のリソース・マネージャにより、前記リソース・マネージャと通信しているノードに関する属性を得るステップであって、前記属性は、前記ノードによりサポートされる少なくとも1つの互換の非ネイティブ環境を指定するものであるステップと、ノードのリソースを要求に割り当てる際に、前記リソース・マネージャにより、前記属性を考慮に入れるステップとを含む方法。  A method for facilitating resource allocation in a heterogeneous computing environment, comprising obtaining an attribute relating to a node communicating with the resource manager by a resource manager of the heterogeneous computing environment, wherein the attribute is the node A method comprising: designating at least one compatible non-native environment supported by, and taking into account the attributes by the resource manager when assigning node resources to requests. 互換の非ネイティブ環境の前記属性は、前記環境のオペレーティング・システムおよびプロセッサを指定する請求項1に記載の方法。  The method of claim 1, wherein the attribute of a compatible non-native environment specifies an operating system and processor for the environment. 考慮に入れる前記ステップは、前記要求により示された環境とは異なるネイティブ環境を有するが、前記要求により示された前記環境をサポートできる少なくとも1つのノードを考慮するステップを含む請求項1に記載の方法。  The step of taking into account includes considering at least one node having a native environment different from the environment indicated by the request, but capable of supporting the environment indicated by the request. Method. 前記リソース・マネージャにより前記要求を受信するステップをさらに含み、前記要求は、該要求が処理される環境を示し、割り当てられるリソースを有する前記ノードは、前記環境が前記ノードのネイティブ環境ではないが、前記ノードの属性により示されるように、前記環境をサポートできる請求項1に記載の方法。  Receiving the request by the resource manager, wherein the request indicates an environment in which the request is processed, and the node having the allocated resources is not the native environment of the node; The method of claim 1, wherein the environment can be supported as indicated by an attribute of the node. 前記要求は、実行されるプログラムを含む請求項4に記載の方法。  The method of claim 4, wherein the request includes a program to be executed. 属性を得る前記ステップは、前記ノードにより前記属性を前記リソース・マネージャに提供するステップを含む請求項1に記載の方法。  The method of claim 1, wherein obtaining the attribute comprises providing the attribute to the resource manager by the node. 前記ノードにより前記属性を前記リソース・マネージャに提供する前記ステップは、前記1つ以上のノードに結合された1つ以上の他のリソース・マネージャを介するものである請求項6に記載の方法。  The method of claim 6, wherein the step of providing the attribute to the resource manager by the node is via one or more other resource managers coupled to the one or more nodes. 前記非ネイティブ環境において前記プログラムを走らせるためにアプリケーション・バイナリ・インタフェース(Application Binary Interface)が用いられる請求項5に記載の方法。  6. The method of claim 5, wherein an application binary interface is used to run the program in the non-native environment. 前記異種計算環境はグリッド計算環境を含み、前記リソース・マネージャはグリッド・リソース・マネージャを含む請求項1に記載の方法。  The method of claim 1, wherein the heterogeneous computing environment comprises a grid computing environment, and the resource manager comprises a grid resource manager. 異種計算環境におけるリソース割り当てを容易にするシステムであって、前記異種計算環境のリソース・マネージャにより、前記リソース・マネージャと通信しているノードに関する属性を得るための手段であって、前記属性は、前記ノードによりサポートされる少なくとも1つの互換の非ネイティブ環境を指定するものである手段と、ノードのリソースを要求に割り当てる際に、前記リソース・マネージャにより、前記属性を考慮に入れるための手段とを含むシステム。  A system for facilitating resource allocation in a heterogeneous computing environment, the resource manager of the heterogeneous computing environment being means for obtaining an attribute relating to a node communicating with the resource manager, wherein the attribute is Means for specifying at least one compatible non-native environment supported by the node; and means for taking the attribute into account by the resource manager when assigning node resources to requests. Including system. 互換の非ネイティブ環境の前記属性は、前記環境のオペレーティング・システムおよびプロセッサを指定する請求項10に記載のシステム。  The system of claim 10, wherein the attribute of a compatible non-native environment specifies an operating system and processor for the environment. 考慮に入れるための前記手段は、前記要求により示された環境とは異なるネイティブ環境を有するが、前記要求により示された前記環境をサポートできる少なくとも1つのノードを考慮する請求項10に記載のシステム。  11. The system of claim 10, wherein the means for taking into account considers at least one node that has a native environment different from the environment indicated by the request, but is capable of supporting the environment indicated by the request. . 前記リソース・マネージャにより前記要求を受信するための手段をさらに含み、前記要求は、該要求が処理される環境を示し、割り当てられるリソースを有する前記ノードは、前記環境が前記ノードのネイティブ環境ではないが、前記ノードの属性により示されるように、前記環境をサポートできる請求項10に記載のシステム。  Further comprising means for receiving the request by the resource manager, wherein the request indicates an environment in which the request is processed, and the node having the allocated resources is not the node's native environment 11. The system of claim 10, wherein the system can support the environment as indicated by the node attributes. 前記要求は、実行されるプログラムを含む請求項13に記載のシステム。  The system of claim 13, wherein the request includes a program to be executed. 属性を得るための前記手段は、前記ノードにより前記属性を前記リソース・マネージャに提供するための手段を含む請求項10に記載の方法。  The method of claim 10, wherein the means for obtaining an attribute includes means for providing the attribute to the resource manager by the node. 前記ノードにより前記属性を前記リソース・マネージャに提供するための前記手段は、前記1つ以上のノードに結合された1つ以上の他のリソース・マネージャを介するものである請求項15に記載のシステム。  The system of claim 15, wherein the means for providing the attribute to the resource manager by the node is via one or more other resource managers coupled to the one or more nodes. . 前記非ネイティブ環境において前記プログラムを走らせるためにアプリケーション・バイナリ・インタフェース(Application Binary Interface)が用いられる請求項14に記載のシステム。  15. The system of claim 14, wherein an application binary interface is used to run the program in the non-native environment. 前記異種計算環境はグリッド計算環境を含み、前記リソース・マネージャはグリッド・リソース・マネージャを含む請求項10に記載のシステム。  The system of claim 10, wherein the heterogeneous computing environment comprises a grid computing environment, and the resource manager comprises a grid resource manager. コンピュータ・システム上で走らされる場合に、先行請求項のいずれかに記載の方法を実行することを前記コンピュータ・システムに命令するための、コンピュータ可読格納媒体上に格納されたコンピュータ・プログラム製品。  A computer program product stored on a computer readable storage medium for instructing the computer system to perform the method of any of the preceding claims when run on a computer system.
JP2007535123A 2004-03-10 2005-01-19 Facilitating resource allocation in heterogeneous computing environments Active JP4587183B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/798,108 US7975270B2 (en) 2004-03-10 2004-03-10 Facilitating allocation of resources in a heterogeneous computing environment
PCT/EP2005/050216 WO2005091129A2 (en) 2004-03-10 2005-01-19 Facilitating allocation of resources in a heterogeneous computing environment

Publications (2)

Publication Number Publication Date
JP2008511087A true JP2008511087A (en) 2008-04-10
JP4587183B2 JP4587183B2 (en) 2010-11-24

Family

ID=34920214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007535123A Active JP4587183B2 (en) 2004-03-10 2005-01-19 Facilitating resource allocation in heterogeneous computing environments

Country Status (9)

Country Link
US (1) US7975270B2 (en)
EP (1) EP1730638B1 (en)
JP (1) JP4587183B2 (en)
KR (1) KR100940976B1 (en)
CN (1) CN100383745C (en)
BR (1) BRPI0507780B1 (en)
CA (1) CA2559232C (en)
TW (1) TWI333621B (en)
WO (1) WO2005091129A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011087355A (en) * 2009-10-13 2011-04-28 Hitachi Ltd Distributed computer system and method for operating the same

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7325123B2 (en) * 2001-03-22 2008-01-29 Qst Holdings, Llc Hierarchical interconnect for configuring separate interconnects for each group of fixed and diverse computational elements
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
WO2005089239A2 (en) * 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method of providing a self-optimizing reservation in space of compute resources
US7555544B1 (en) * 2004-03-17 2009-06-30 Sun Microsystems, Inc. Implementation of affinities in high availability computer system clusters
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
WO2006053093A2 (en) 2004-11-08 2006-05-18 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US8930536B2 (en) 2005-03-16 2015-01-06 Adaptive Computing Enterprises, Inc. Virtual private cluster
US8863143B2 (en) * 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
ES2614751T3 (en) 2005-04-07 2017-06-01 Iii Holdings 12, Llc Access on demand to computer resources
CN100437586C (en) * 2005-10-21 2008-11-26 中国科学院计算技术研究所 A resource allocation method and system for shared memory
US7958509B2 (en) 2005-12-21 2011-06-07 International Business Machines Corporation Method and system for scheduling of jobs
US8190682B2 (en) * 2006-03-31 2012-05-29 Amazon Technologies, Inc. Managing execution of programs by multiple computing systems
US7944572B2 (en) * 2007-01-26 2011-05-17 Xerox Corporation Protocol allowing a document management system to communicate inter-attribute constraints to its clients
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8943409B2 (en) * 2008-12-26 2015-01-27 Sandisk Il Ltd. Storage device managing playable content
US20100169395A1 (en) * 2008-12-26 2010-07-01 Sandisk Il Ltd. Device and method for filtering a file system
US8166067B2 (en) * 2008-12-26 2012-04-24 Sandisk Il Ltd. Method and apparatus for providing access to files based on user identity
US8239395B2 (en) * 2008-12-26 2012-08-07 Sandisk Il Ltd. Storage device presenting to hosts only files compatible with a defined host capability
US9864637B2 (en) * 2009-03-18 2018-01-09 Microsoft Technology Licensing, Llc Adaptable software resource managers based on intentions
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
KR101308404B1 (en) 2010-03-02 2013-09-16 에스케이플래닛 주식회사 A method for generating a resource file package available in different platform and a method for using a resource in a different platform
US8831993B2 (en) * 2010-03-19 2014-09-09 Novell, Inc. Techniques for sharing virtual machine (VM) resources
US8959220B2 (en) 2010-11-02 2015-02-17 International Business Machines Corporation Managing a workload of a plurality of virtual servers of a computing environment
US8984109B2 (en) 2010-11-02 2015-03-17 International Business Machines Corporation Ensemble having one or more computing systems and a controller thereof
US8966020B2 (en) 2010-11-02 2015-02-24 International Business Machines Corporation Integration of heterogeneous computing systems into a hybrid computing system
US9253016B2 (en) 2010-11-02 2016-02-02 International Business Machines Corporation Management of a data network of a computing environment
US9081613B2 (en) * 2010-11-02 2015-07-14 International Business Machines Corporation Unified resource manager providing a single point of control
US8707083B2 (en) * 2010-12-03 2014-04-22 Lsi Corporation Virtualized cluster communication system
US9268613B2 (en) * 2010-12-20 2016-02-23 Microsoft Technology Licensing, Llc Scheduling and management in a personal datacenter
US9451012B1 (en) * 2011-08-30 2016-09-20 CSC Holdings, LLC Heterogeneous cloud processing utilizing consumer devices
CN102707951A (en) * 2012-04-28 2012-10-03 浪潮电子信息产业股份有限公司 Design method of highly available system on heterogeneous platform
US9292330B2 (en) 2012-11-29 2016-03-22 International Business Machines Corporation Replacing virtual machine disks
US9092837B2 (en) 2012-11-29 2015-07-28 International Business Machines Corporation Use of snapshots to reduce risk in migration to a standard virtualized environment
US9282166B2 (en) 2012-11-29 2016-03-08 International Business Machines Corporation Management infrastructure analysis for cloud migration
US9742873B2 (en) * 2012-11-29 2017-08-22 International Business Machines Corporation Adjustment to managed-infrastructure-as-a-service cloud standard
US9692632B2 (en) * 2012-11-29 2017-06-27 International Business Machines Corporation Migration to managed clouds
KR20140107042A (en) * 2013-02-27 2014-09-04 삼성전자주식회사 Management apparatus and method for managing server node
CN103197976A (en) * 2013-04-11 2013-07-10 华为技术有限公司 Method and device for processing tasks of heterogeneous system
US9513962B2 (en) 2013-12-03 2016-12-06 International Business Machines Corporation Migrating a running, preempted workload in a grid computing system
CN103970214B (en) * 2014-05-19 2018-05-04 浪潮电子信息产业股份有限公司 A kind of isomery accelerates bladed computer systems framework
WO2019125434A1 (en) * 2017-12-20 2019-06-27 James Giles Joint transmission commitment simulation

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08235112A (en) * 1995-03-01 1996-09-13 Mitsubishi Electric Corp Decentralized job management system of computer system
JPH08241277A (en) * 1995-03-03 1996-09-17 Fujitsu Ltd Unitary management system of resources
JP2000315192A (en) * 1999-04-30 2000-11-14 Ntt Data Corp Client-server system, method for managing server application and recording medium
JP2001209618A (en) * 2000-01-27 2001-08-03 Victor Co Of Japan Ltd Object distribution system
JP2002251292A (en) * 2001-02-22 2002-09-06 Nec Software Chubu Ltd Job management system in client server system and job management method in client server system
JP2002261818A (en) * 2001-03-01 2002-09-13 Kddi Corp Communication network resource allocation method

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4564903A (en) * 1983-10-05 1986-01-14 International Business Machines Corporation Partitioned multiprocessor programming system
US4660144A (en) * 1985-05-23 1987-04-21 International Business Machines Corp. Adjunct machine
US4843541A (en) * 1987-07-29 1989-06-27 International Business Machines Corporation Logical resource partitioning of a data processing system
JP2594979B2 (en) * 1987-10-23 1997-03-26 株式会社日立製作所 Multi-processor system
EP0473913A3 (en) 1990-09-04 1992-12-16 International Business Machines Corporation Method and apparatus for providing a service pool of virtual machines for a plurality of vm users
US5175679A (en) * 1990-09-28 1992-12-29 Xerox Corporation Control for electronic image processing systems
CA2100540A1 (en) * 1992-10-19 1994-04-20 Jonel George System and method for performing resource reconfiguration in a computer system
JPH06187178A (en) * 1992-12-18 1994-07-08 Hitachi Ltd Input and output interruption control method for virtual computer system
US5473773A (en) * 1994-04-04 1995-12-05 International Business Machines Corporation Apparatus and method for managing a data processing system workload according to two or more distinct processing goals
US5564040A (en) * 1994-11-08 1996-10-08 International Business Machines Corporation Method and apparatus for providing a server function in a logically partitioned hardware machine
US5675739A (en) * 1995-02-03 1997-10-07 International Business Machines Corporation Apparatus and method for managing a distributed data processing system workload according to a plurality of distinct processing goal types
US6199095B1 (en) * 1996-01-29 2001-03-06 Compaq Computer Corporation System and method for achieving object method transparency in a multi-code execution environment
US6513057B1 (en) * 1996-10-28 2003-01-28 Unisys Corporation Heterogeneous symmetric multi-processing system
US6366945B1 (en) * 1997-05-23 2002-04-02 Ibm Corporation Flexible dynamic partitioning of resources in a cluster computing environment
EP1057101A2 (en) * 1998-02-26 2000-12-06 Sun Microsystems, Inc. Method and apparatus for dynamic distributed computing over a network
US6247109B1 (en) * 1998-06-10 2001-06-12 Compaq Computer Corp. Dynamically assigning CPUs to different partitions each having an operation system instance in a shared memory space
US6978455B1 (en) * 1998-09-21 2005-12-20 Unisys Corporation Teller/scanner system and method
US6788980B1 (en) * 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6597956B1 (en) * 1999-08-23 2003-07-22 Terraspring, Inc. Method and apparatus for controlling an extensible computing system
US6587938B1 (en) * 1999-09-28 2003-07-01 International Business Machines Corporation Method, system and program products for managing central processing unit resources of a computing environment
GB9928503D0 (en) * 1999-12-03 2000-02-02 Ibm Resource allocation in data processing systems
US6938256B2 (en) * 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
JP2001219618A (en) 2000-02-08 2001-08-14 Canon Inc Imaging apparatus, and system and method of manufacture
US7146233B2 (en) * 2000-02-11 2006-12-05 Sun Microsystems, Inc. Request queue management
WO2002029598A1 (en) 2000-10-02 2002-04-11 Learning Tree International Method and system for hands-on e-learning
US7574346B2 (en) * 2000-10-30 2009-08-11 Microsoft Corporation Kernel emulator for non-native program modules
CN1368810A (en) * 2001-02-02 2002-09-11 北京翔智信息技术有限公司 Distributed information switch and processing system and method
US6985951B2 (en) * 2001-03-08 2006-01-10 International Business Machines Corporation Inter-partition message passing method, system and program product for managing workload in a partitioned processing environment
JP4291964B2 (en) * 2001-04-19 2009-07-08 株式会社日立製作所 Virtual computer system
US7299466B2 (en) * 2001-12-20 2007-11-20 Cadence Design Systems, Inc. Mechanism for managing execution environments for aggregated processes
US7603469B2 (en) * 2002-01-15 2009-10-13 International Business Machines Corporation Provisioning aggregated services in a distributed computing environment
US7072960B2 (en) * 2002-06-10 2006-07-04 Hewlett-Packard Development Company, L.P. Generating automated mappings of service demands to server capacities in a distributed computer system
US7162617B2 (en) * 2003-02-14 2007-01-09 Fine Arc Incorporated Data processor with changeable architecture
US7519800B2 (en) * 2003-03-27 2009-04-14 Hewlett-Packard Development Company, L.P. Apparatus and method for enforcing homogeneity within partitions of heterogeneous computer systems
WO2004110018A1 (en) * 2003-06-04 2004-12-16 Sony Computer Entertainment, Inc. Content distribution overlay network for a peer to peer network
US8079034B2 (en) * 2003-09-15 2011-12-13 Intel Corporation Optimizing processor-managed resources based on the behavior of a virtual machine monitor
US7426749B2 (en) * 2004-01-20 2008-09-16 International Business Machines Corporation Distributed computation in untrusted computing environments using distractive computational units

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08235112A (en) * 1995-03-01 1996-09-13 Mitsubishi Electric Corp Decentralized job management system of computer system
JPH08241277A (en) * 1995-03-03 1996-09-17 Fujitsu Ltd Unitary management system of resources
JP2000315192A (en) * 1999-04-30 2000-11-14 Ntt Data Corp Client-server system, method for managing server application and recording medium
JP2001209618A (en) * 2000-01-27 2001-08-03 Victor Co Of Japan Ltd Object distribution system
JP2002251292A (en) * 2001-02-22 2002-09-06 Nec Software Chubu Ltd Job management system in client server system and job management method in client server system
JP2002261818A (en) * 2001-03-01 2002-09-13 Kddi Corp Communication network resource allocation method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011087355A (en) * 2009-10-13 2011-04-28 Hitachi Ltd Distributed computer system and method for operating the same

Also Published As

Publication number Publication date
CA2559232A1 (en) 2005-09-29
TW200540643A (en) 2005-12-16
TWI333621B (en) 2010-11-21
WO2005091129A3 (en) 2005-11-17
JP4587183B2 (en) 2010-11-24
CA2559232C (en) 2014-04-08
US20050204040A1 (en) 2005-09-15
BRPI0507780B1 (en) 2017-05-02
CN1918547A (en) 2007-02-21
WO2005091129A2 (en) 2005-09-29
EP1730638B1 (en) 2014-06-18
BRPI0507780A (en) 2007-12-18
KR20070006756A (en) 2007-01-11
EP1730638A2 (en) 2006-12-13
KR100940976B1 (en) 2010-02-05
CN100383745C (en) 2008-04-23
US7975270B2 (en) 2011-07-05

Similar Documents

Publication Publication Date Title
JP4587183B2 (en) Facilitating resource allocation in heterogeneous computing environments
JP5497201B2 (en) Method for allocating resources, computer program for allocating resources, and system for allocating resources
US11553034B2 (en) Server computer management system for supporting highly available virtual desktops of multiple different tenants
Foster et al. Virtual clusters for grid communities
Neary et al. Javelin++ Scalability Issues in Global Computing
US8327350B2 (en) Virtual resource templates
US20090228883A1 (en) Dynamic cluster expansion through virtualization-based live cloning
JP2013518330A5 (en)
US20090228889A1 (en) Storage medium storing job management program, information processing apparatus, and job management method
KR20050001321A (en) Software image creation in a distributed build environment
KR20060069464A (en) Managing processing within computing environments including initiation of virtual machines
JP2007500382A (en) Sustainable grid manager
US20190056942A1 (en) Method and apparatus for hardware acceleration in heterogeneous distributed computing
Tsakalozos et al. Hint-based execution of workloads in clouds with nefeli
CN112286633A (en) Virtual machine creating method, device, equipment and storage medium based on CloudStack platform
WO2023179387A1 (en) Cloud application scheduling method and apparatus, and electronic device and storage medium
US20110179177A1 (en) Resource Deployment Management
Birnbaum et al. Grid workflow software for a high-throughput proteome annotation pipeline
Bessis et al. Cloud scheduling optimization: a reactive model to enable dynamic deployment of virtual machines instantiations
de Assunção et al. An integration of global and enterprise grid computing: Gridbus broker and Xgrid perspective
Chaturvedi et al. Analyzing Effects on Average Execution time by varying Tasks and VMs on Cloud Data Centre
MXPA06009282A (en) Facilitating allocation of resources in a heterogeneous computing environment
Righi et al. On the replacement of objects from round‐based applications over heterogeneous environments
Nimmagadda et al. {High-End} Workstation Compute Farms Using Windows {NT}
Kaur et al. Minimizing Virtual Machine Migration for Efficient Resource Management in Green Clouds

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100223

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100427

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100427

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20100427

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100722

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100722

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

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100827

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20100827

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100831

R150 Certificate of patent or registration of utility model

Ref document number: 4587183

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130917

Year of fee payment: 3