-
公开(公告)号:US20190163637A9
公开(公告)日:2019-05-30
申请号:US15913749
申请日:2018-03-06
Applicant: Cray Inc.
Inventor: Sanyam Mehta , James Robert Kohn , Daniel Jonathan Ernst , Heidi Lynn Poxon , Luiz DeRose
IPC: G06F12/0862 , G06F12/1045
Abstract: A method for prefetching data into a cache is provided. The method allocates an outstanding request buffer (“ORB”). The method stores in an address field of the ORB an address and a number of blocks. The method issues prefetch requests for a degree number of blocks starting at the address. When a prefetch response is received for all the prefetch requests, the method adjusts the address of the next block to prefetch and adjusts the number of blocks remaining to be retrieved and then issues prefetch requests for a degree number of blocks starting at the adjusted address. The prefetching pauses when a maximum distance between the reads of the prefetched blocks and the last prefetched block is reached. When a read request for a prefetched block is received, the method resumes prefetching when a resume criterion is satisfied.
-
公开(公告)号:US10303610B2
公开(公告)日:2019-05-28
申请号:US15913749
申请日:2018-03-06
Applicant: Cray Inc.
Inventor: Sanyam Mehta , James Robert Kohn , Daniel Jonathan Ernst , Heidi Lynn Poxon , Luiz DeRose
IPC: G06F12/00 , G06F12/0862 , G06F12/1045 , G06F12/0886
Abstract: A method for prefetching data into a cache is provided. The method allocates an outstanding request buffer (“ORB”). The method stores in an address field of the ORB an address and a number of blocks. The method issues prefetch requests for a degree number of blocks starting at the address. When a prefetch response is received for all the prefetch requests, the method adjusts the address of the next block to prefetch and adjusts the number of blocks remaining to be retrieved and then issues prefetch requests for a degree number of blocks starting at the adjusted address. The prefetching pauses when a maximum distance between the reads of the prefetched blocks and the last prefetched block is reached. When a read request for a prefetched block is received, the method resumes prefetching when a resume criterion is satisfied.
-
公开(公告)号:US20190042435A1
公开(公告)日:2019-02-07
申请号:US15913749
申请日:2018-03-06
Applicant: Cray Inc.
Inventor: Sanyam Mehta , James Robert Kohn , Daniel Jonathan Ernst , Heidi Lynn Poxon , Luiz DeRose
IPC: G06F12/0862 , G06F12/1045
Abstract: A method for prefetching data into a cache is provided. The method allocates an outstanding request buffer (“ORB”). The method stores in an address field of the ORB an address and a number of blocks. The method issues prefetch requests for a degree number of blocks starting at the address. When a prefetch response is received for all the prefetch requests, the method adjusts the address of the next block to prefetch and adjusts the number of blocks remaining to be retrieved and then issues prefetch requests for a degree number of blocks starting at the adjusted address. The prefetching pauses when a maximum distance between the reads of the prefetched blocks and the last prefetched block is reached. When a read request for a prefetched block is received, the method resumes prefetching when a resume criterion is satisfied.
-
公开(公告)号:US10185659B2
公开(公告)日:2019-01-22
申请号:US15374114
申请日:2016-12-09
Applicant: Cray, Inc.
Inventor: Heidi Lynn Poxon , William Homer , David W. Oehmke , Luiz DeRose , Clayton D. Andreasen , Sanyam Mehta
Abstract: A system is provided for allocating memory for data of a program for execution by a computer system with a multi-tier memory that includes LBM and HBM. The system accesses a data structure map that maps data structures of the program to the memory addresses within an address space of the program to which the data structures are initially allocated. The system executes the program to collect statistics relating to memory requests and memory bandwidth utilization of the program. The system determines an extent to which each data structure is used by a high memory utilization portion of the program based on the data structure map and the collected statistics. The system generates a memory allocation plan that favors allocating data structures in HBM based on the extent to which the data structures are used by a high memory utilization portion of the program.
-
公开(公告)号:US20180322064A1
公开(公告)日:2018-11-08
申请号:US16034216
申请日:2018-07-12
Applicant: Cray, Inc.
Inventor: Heidi Lynn Poxon , William Homer , David W. Oehmke , Luiz DeRose , Clayton D. Andreasen , Sanyam Mehta
IPC: G06F12/0871 , G06F12/02
Abstract: A system is provided for allocating memory for data of a program for execution by a computer system with a multi-tier memory that includes LBM and HBM. The system accesses a data structure map that maps data structures of the program to the memory addresses within an address space of the program to which the data structures are initially allocated. The system executes the program to collect statistics relating to memory requests and memory bandwidth utilization of the program. The system determines an extent to which each data structure is used by a high memory utilization portion of the program based on the data structure map and the collected statistics. The system generates a memory allocation plan that favors allocating data structures in HBM based on the extent to which the data structures are used by a high memory utilization portion of the program.
-
公开(公告)号:US09946654B2
公开(公告)日:2018-04-17
申请号:US15335041
申请日:2016-10-26
Applicant: Cray Inc.
Inventor: Sanyam Mehta , James Robert Kohn , Daniel Jonathan Ernst , Heidi Lynn Poxon , Luiz DeRose
IPC: G06F12/00 , G06F12/0862 , G06F12/1045
CPC classification number: G06F12/0862 , G06F12/1054 , G06F2212/602 , G06F2212/68
Abstract: A method for prefetching data into a cache is provided. The method allocates an outstanding request buffer (“ORB”). The method stores in an address field of the ORB an address and a number of blocks. The method issues prefetch requests for a degree number of blocks starting at the address. When a prefetch response is received for all the prefetch requests, the method adjusts the address of the next block to prefetch and adjusts the number of blocks remaining to be retrieved and then issues prefetch requests for a degree number of blocks starting at the adjusted address. The prefetching pauses when a maximum distance between the reads of the prefetched blocks and the last prefetched block is reached. When a read request for a prefetched block is received, the method resumes prefetching when a resume criterion is satisfied.
-
公开(公告)号:US20180074963A1
公开(公告)日:2018-03-15
申请号:US15335041
申请日:2016-10-26
Applicant: Cray Inc.
Inventor: Sanyam Mehta , James Robert Kohn , Daniel Jonathan Ernst , Heidi Lynn Poxon , Luiz DeRose
IPC: G06F12/0862 , G06F12/1045
CPC classification number: G06F12/0862 , G06F12/1054 , G06F2212/602 , G06F2212/68
Abstract: A method for prefetching data into a cache is provided. The method allocates an outstanding request buffer (“ORB”). The method stores in an address field of the ORB an address and a number of blocks. The method issues prefetch requests for a degree number of blocks starting at the address. When a prefetch response is received for all the prefetch requests, the method adjusts the address of the next block to prefetch and adjusts the number of blocks remaining to be retrieved and then issues prefetch requests for a degree number of blocks starting at the adjusted address. The prefetching pauses when a maximum distance between the reads of the prefetched blocks and the last prefetched block is reached. When a read request for a prefetched block is received, the method resumes prefetching when a resume criterion is satisfied.
-
公开(公告)号:US10698813B2
公开(公告)日:2020-06-30
申请号:US16034216
申请日:2018-07-12
Applicant: Cray, Inc.
Inventor: Heidi Lynn Poxon , William Homer , David W. Oehmke , Luiz DeRose , Clayton D. Andreasen , Sanyam Mehta
IPC: G06F12/02 , G06F12/08 , G06F8/41 , G06F12/0871
Abstract: A system is provided for allocating memory for data of a program for execution by a computer system with a multi-tier memory that includes LBM and HBM. The system accesses a data structure map that maps data structures of the program to the memory addresses within an address space of the program to which the data structures are initially allocated. The system executes the program to collect statistics relating to memory requests and memory bandwidth utilization of the program. The system determines an extent to which each data structure is used by a high memory utilization portion of the program based on the data structure map and the collected statistics. The system generates a memory allocation plan that favors allocating data structures in HBM based on the extent to which the data structures are used by a high memory utilization portion of the program.
-
公开(公告)号:US20180165209A1
公开(公告)日:2018-06-14
申请号:US15374114
申请日:2016-12-09
Applicant: Cray, Inc.
Inventor: Heidi Lynn Poxon , William Homer , David W. Oehmke , Luiz DeRose , Clayton D. Andreasen , Sanyam Mehta
IPC: G06F12/0871 , G06F12/02
CPC classification number: G06F12/0871 , G06F8/41 , G06F8/443 , G06F12/023 , G06F12/0284 , G06F12/08 , G06F2201/885 , G06F2212/1016 , G06F2212/1021 , G06F2212/465 , G06F2212/601 , G06F2212/604
Abstract: A system is provided for allocating memory for data of a program for execution by a computer system with a multi-tier memory that includes LBM and HBM. The system accesses a data structure map that maps data structures of the program to the memory addresses within an address space of the program to which the data structures are initially allocated. The system executes the program to collect statistics relating to memory requests and memory bandwidth utilization of the program. The system determines an extent to which each data structure is used by a high memory utilization portion of the program based on the data structure map and the collected statistics. The system generates a memory allocation plan that favors allocating data structures in HBM based on the extent to which the data structures are used by a high memory utilization portion of the program.
-
-
-
-
-
-
-
-