Multiprocessing system configured to perform efficient block copy operations
First Claim
1. A method for performing block copy operations in a distributed memory computer system including at least:
- (i) a first node including a first memory to which a first portion of a global address space is assigned; and
(ii) a second node including a second memory to which a second portion of said global address space is assigned, said second portion being different from said first portion, the method comprising;
creating a link between a first block within said first memory and a second block within said second memory;
performing a write operation having an address corresponding to said first block, wherein said write operation includes write data;
discarding said write data and copying data from said second block to said first block in response to detecting said address corresponds to a first address space; and
storing said write data within said first block in response to detecting said address corresponds to a second address space.
0 Assignments
0 Petitions
Accused Products
Abstract
A computer system optimized for block copy operations is provided. In order to perform a block copy from a remote source block to a local destination block, a processor within a local node of the computer system performs a specially coded write operation. The local node, upon detection of the specially coded write operation, performs a read operation to the source block in the remote node. Concurrently, the write operation is allowed to complete in the local node such that the processor may proceed with subsequent computing tasks while the local node completes the copy operation. The read from the remote node and subsequent storage of the data in the local node is completed by the local node, not by the processor. In one specific embodiment, the specially coded write operation is indicated using certain most significant bits of the address of the write operation. The address identifies the destination coherency unit within the local node, and a translation of the address to a global address identifies the source coherency unit. Subsequent to completion of the copy operation, the destination coherency unit may be accessed in the local node.
-
Citations
20 Claims
-
1. A method for performing block copy operations in a distributed memory computer system including at least:
- (i) a first node including a first memory to which a first portion of a global address space is assigned; and
(ii) a second node including a second memory to which a second portion of said global address space is assigned, said second portion being different from said first portion, the method comprising;creating a link between a first block within said first memory and a second block within said second memory;
performing a write operation having an address corresponding to said first block, wherein said write operation includes write data;
discarding said write data and copying data from said second block to said first block in response to detecting said address corresponds to a first address space; and
storing said write data within said first block in response to detecting said address corresponds to a second address space. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
- (i) a first node including a first memory to which a first portion of a global address space is assigned; and
-
10. A computer system comprising:
-
a first processing node including a first memory and a first system interface; and
a second processing node including a second memory and a second system interface, said second processing node coupled to said first processing node;
wherein said first system interface is programmable to create a link between a first block in said first memory and a second block in said second memory, wherein said first processing node is configured to perform a write operation including write data, wherein said write operation has an address corresponding to said first block, wherein said first system interface is configured to discard said write data and copy data from said second block to said first block in response to detecting said address corresponds to a first address space, and wherein said first system interface is configured to store said write data within said first block in response to detecting said address corresponds to a second address space. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. An apparatus configured to perform efficient block copy operations, comprising:
-
a processor configured to initiate a write operation to at least one coherency unit within a first block, wherein said first block is located within a local processing node which includes said processor, and wherein said processor is configured to transmit write data as part of said write operation; and
a system interface coupled to said processor, wherein said system interface is configured to update said first block with said write data in response to detecting said write operation and detecting said address corresponds to a first address space, and wherein said system interface is configured to transmit a read request and discard said write data instead of updating said coherency unit with said write data, in response to detecting said write operation and detecting said address corresponds to a second address space. - View Dependent Claims (17, 18, 19, 20)
-
Specification