发明名称 |
Method and apparatus for efficient, low-latency, streaming memory copies |
摘要 |
Systems, methods, and apparatus with improved techniques for copying data from a source memory location to a destination memory location are disclosed. An exemplary method includes receiving a source address that indicates the source memory location, a destination address that indicates the destination memory location, and receiving a size indicator that indicates the size of the data. When the size is less than a threshold size, a particular pointer in a jump table is accessed, based upon the size that points to particular load and store instructions. The jump table includes a plurality of pointers that point to a corresponding one of a plurality of load and store instructions. The particular load-store instructions are then executed with a processor of the computing device to copy the data from the source memory location to the destination memory location. Several other efficiency-improvement aspects are also disclosed that may be used in connection with these steps to further improve copy efficiencies. |
申请公布号 |
US8880829(B2) |
申请公布日期 |
2014.11.04 |
申请号 |
US201213681036 |
申请日期 |
2012.11.19 |
申请人 |
Qualcomm Innovation Center, Inc. |
发明人 |
Reid Gregory A.;Lohman Terence J.;Degraaf Brent L. |
分类号 |
G06F13/14;G06F12/16 |
主分类号 |
G06F13/14 |
代理机构 |
Neugeboren O'Dowd PC |
代理人 |
Neugeboren O'Dowd PC |
主权项 |
1. A method for copying data from a source memory location to a destination memory location on a computing device, the method comprising:
receiving a source address indicating the source memory location; receiving a destination address indicating the destination memory location; receiving a size indicator indicating a copy size of the data; accessing, when the copy size is less than a threshold size, a particular pointer in a jump table that points to particular load and store instructions based upon the copy size of the data, the jump table including a plurality of pointers, each of the plurality of pointers pointing to a corresponding one of a plurality of load and store instructions; and executing the particular load-store instructions on the computing device to copy the data from the source memory location to the destination memory location. |
地址 |
San Diego CA US |