发明名称 Statically allocating set of tasks to particular cluster and dynamically allocating each task to different processing units within cluster
摘要 A system including a plurality of processing units for executing tasks in parallel and a communication network. The processing units are organized into clusters of units, each cluster comprising a local memory. The system includes means for statically allocating tasks to each cluster of units, so that a task of an application is processed by the same cluster of units from one execution to another. Each cluster includes cluster management means for allocating tasks to each of its processing units and space in the local memory for executing them, so that a given task of an application may not be processed by the same processing unit from one execution to another. The cluster management means includes means for managing the tasks, means for managing the processing units, means for managing the local memory and means for managing the communications involving its processing units. The management means operate simultaneously and cooperatively.
申请公布号 US9164807(B2) 申请公布日期 2015.10.20
申请号 US200812747715 申请日期 2008.12.11
申请人 COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES 发明人 Blanc Frédéric;Collette Thierry;David Raphaël;David Vincent;Harrand Michel;Louise Stéphane;Ventroux Nicolas
分类号 G06F9/46;G06F9/50 主分类号 G06F9/46
代理机构 Stroock & Stroock & Lavan LLP 代理人 Stroock & Stroock & Lavan LLP
主权项 1. A system for executing a given application by executing tasks in parallel, the system comprising: a plurality of processing units, the processing units being organized into a plurality of clusters of units, each cluster comprising a local memory, each local memory comprising one or more memory blocks; means for statically allocating a set of tasks of said application to one of said clusters of units, so that said set of tasks is processed by the same cluster of units from one execution to another execution of said application; wherein each cluster of units further comprises a cluster manager for dynamically allocating each task of a set of tasks allocated to the cluster to a processing unit in said cluster and memory blocks in the local memory for executing said task, so that said set of tasks allocated to the cluster may be processed by a different processing unit from one execution to another execution of said application, the cluster manager including: a task manager for managing the execution of tasks on the processing units of the cluster; anda memory manager for managing the allocation of data comprised in one or more memory blocks in said local memory to a set of tasks allocated to the cluster, said task manager and said memory manager operating simultaneously and cooperatively; wherein when a task allocated to a cluster of units has to consume data produced in another cluster of units, a data sending task is executed in the cluster where the data are produced, said data sending task transmitting the data to a data receiving task executed in the cluster where the data are consumed, and a memory space dedicated to communication between the data sending task and the data receiving task is reserved in the local memory of one of the two clusters involved.
地址 Paris FR