Patent · US2014317221A1 · A1 · US
System, computer-implemented method and computer program product for direct communication between hardward accelerators in a computer cluster
- (11) Publication number
- US2014317221A1
- (21) Application number
- 14/361,290
- (22) Filing date
- 2012-09-28
- (30) Priority date
- 2011-11-29
- (43) Publication date
- 2014-10-23
- (52) CPC
- G06F Electric digital data processing: 15/167, 13/28
- (73) Assignee
- EXTOLL GMBH
- (54) Title
- System, computer-implemented method and computer program product for direct communication between hardward accelerators in a computer cluster
- (57) Abstract
Systems, methods and computer program products for direct communication between hardware accelerators in a computer cluster are disclosed. The system for direct communication between hardware accelerators in a computer cluster includes: a first hardware accelerator in a first computer of a computer cluster; and a second hardware accelerator in a second computer of the computer cluster. The first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and/or to communicate data to the second computer.
- Full text
- View on Google Patents
Claims (1)
- A system for direct communication between hardware accelerators in a computer cluster, comprising: a first hardware accelerator in a first computer of a computer cluster; and a second hardware accelerator in a second computer of the computer cluster; wherein the first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and wherein the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and to communicate data to the second computer. 2. The system of claim 1, wherein the direct communication between the hardware accelerators takes place directly via the network and corresponding network interfaces on the computers in the cluster. 3. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of computing and/or memory units. 4. The system of claim 3, wherein the computing and/or memory units include CPUs and/or main memories of the first and second computers. 5. The system of claim 1, wherein the global address space is transparent, such that the accelerators see no difference between a local memory access and an access to a remote memory in one of the computers of the computer cluster. 6. The system of claim 1, wherein the global address space is a partition in a distributed shared memory of the computer cluster. 7. The system of claim 6, wherein the partition is a shared partition in the distributed shared memory of the computer cluster. 8. The system of claim 1, wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space. 9. The system of claim 8, wherein the second accelerator is determined by means of a mask in the global address space. 10. The system of claim 8, wherein the second accelerator is determined by means of intervals in the global address space. 11. A method for direct communication between hardware accelerators in a computer cluster, the method comprising: providing a first hardware accelerator in a first computer of a computer cluster; and providing a second hardware accelerator in a second computer of the computer cluster; wherein the first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and wherein the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and/or to communicate data to the second computer. 12. A computer program product stored on a computer-readable medium, which, when loaded into the memory of a computer and executed by the computer, causes the computer to: provide a first hardware accelerator in a first computer of a computer cluster; and provide a second hardware accelerator in a second computer of the computer cluster; wherein the first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and wherein the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and/or to communicate data to the second computer. 13. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers. 14. The system of claim 1, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition. 15. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, and wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition. 16. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition, and wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space. 17. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition, wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space, and wherein the second accelerator is determined by means of a mask in the global address space. 18. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition, wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space, and wherein the second accelerator is determined by means of intervals in the global address space.
Citations (10)
- US2008266302A1
- US2011154488A1
- US2012001927A1
- US2012075319A1
- US2013057560A1
- US5311595A
- US6310884B1
- US6956579B1
- US7274706B1
- US7619629B1
Record as JSON
{
"publication_number": "US2014317221A1",
"country": "US",
"kind": "A1",
"title": "System, computer-implemented method and computer program product for direct communication between hardward accelerators in a computer cluster",
"abstract": "Systems, methods and computer program products for direct communication between hardware accelerators in a computer cluster are disclosed. The system for direct communication between hardware accelerators in a computer cluster includes: a first hardware accelerator in a first computer of a computer cluster; and a second hardware accelerator in a second computer of the computer cluster. The first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and/or to communicate data to the second computer.",
"claims": [
"1. A system for direct communication between hardware accelerators in a computer cluster, comprising: a first hardware accelerator in a first computer of a computer cluster; and a second hardware accelerator in a second computer of the computer cluster; wherein the first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and wherein the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and to communicate data to the second computer. 2. The system of claim 1, wherein the direct communication between the hardware accelerators takes place directly via the network and corresponding network interfaces on the computers in the cluster. 3. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of computing and/or memory units. 4. The system of claim 3, wherein the computing and/or memory units include CPUs and/or main memories of the first and second computers. 5. The system of claim 1, wherein the global address space is transparent, such that the accelerators see no difference between a local memory access and an access to a remote memory in one of the computers of the computer cluster. 6. The system of claim 1, wherein the global address space is a partition in a distributed shared memory of the computer cluster. 7. The system of claim 6, wherein the partition is a shared partition in the distributed shared memory of the computer cluster. 8. The system of claim 1, wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space. 9. The system of claim 8, wherein the second accelerator is determined by means of a mask in the global address space. 10. The system of claim 8, wherein the second accelerator is determined by means of intervals in the global address space. 11. A method for direct communication between hardware accelerators in a computer cluster, the method comprising: providing a first hardware accelerator in a first computer of a computer cluster; and providing a second hardware accelerator in a second computer of the computer cluster; wherein the first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and wherein the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and/or to communicate data to the second computer. 12. A computer program product stored on a computer-readable medium, which, when loaded into the memory of a computer and executed by the computer, causes the computer to: provide a first hardware accelerator in a first computer of a computer cluster; and provide a second hardware accelerator in a second computer of the computer cluster; wherein the first computer and the second computer differ from one another and are designed to be able to communicate remotely via a network, and wherein the first accelerator is designed to request data from the second accelerator and/or to retrieve data by means of a direct memory access to a global address space on the second computer and/or to communicate data to the second computer. 13. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers. 14. The system of claim 1, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition. 15. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, and wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition. 16. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition, and wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space. 17. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition, wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space, and wherein the second accelerator is determined by means of a mask in the global address space. 18. The system of claim 1, wherein the direct communication between the hardware accelerators occurs without support of CPUs or main memories of the first and second computers, wherein the global address space includes a partition in a distributed shared memory of the computer cluster, wherein the partition is transparent, such that the accelerators see no difference between a local memory access and an access to the partition, wherein retrieving data by means of the direct memory access to the global address space includes translating a source address in the special memory of the first accelerator into a global address in the global address space, wherein the second accelerator is determined by means of the global address in the global address space, and wherein the second accelerator is determined by means of intervals in the global address space."
],
"cpc": [
"G06F 15/167",
"G06F 13/28"
],
"assignees": [
"EXTOLL GMBH"
],
"filing_date": "2012-09-28",
"publication_date": "2014-10-23",
"priority_date": "2011-11-29",
"application_number": "US-201214361290-A",
"family_id": "47044948",
"citations": [
"US2008266302A1",
"US2011154488A1",
"US2012001927A1",
"US2012075319A1",
"US2013057560A1",
"US5311595A",
"US6310884B1",
"US6956579B1",
"US7274706B1",
"US7619629B1"
]
}
Record 2,110 of 5,000 in Patents full text (MLC-0201). Request the full dataset.