-
公开(公告)号:US10032246B2
公开(公告)日:2018-07-24
申请号:US14049557
申请日:2013-10-09
Applicant: NVIDIA CORPORATION
Inventor: Eric T. Anderson , Poornachandra Rao
Abstract: A texture processing pipeline is configured to store decoded texture data within a cache unit in order to expedite the processing of texture requests. When a texture request is processed, the texture processing pipeline queries the cache unit to determine whether the requested data is resident in the cache. If the data is not resident in the cache unit, a cache miss occurs. The texture processing pipeline then reads encoded texture data from global memory, decodes that data, and writes different portions of the decoded memory into the cache unit at specific locations according to a caching map. If the data is, in fact, resident in the cache unit, a cache hit occurs, and the texture processing pipeline then reads decoded portions of the requested texture data from the cache unit and combines those portions according to the caching map.
-
公开(公告)号:US11080051B2
公开(公告)日:2021-08-03
申请号:US16712083
申请日:2019-12-12
Applicant: NVIDIA Corporation
Inventor: Andrew Kerr , Jack Choquette , Xiaogang Qiu , Omkar Paranjape , Poornachandra Rao , Shirish Gadre , Steven J. Heinrich , Manan Patel , Olivier Giroux , Alan Kaatz
IPC: G06F9/30 , G06F12/0808 , G06F12/0888
Abstract: A technique for block data transfer is disclosed that reduces data transfer and memory access overheads and significantly reduces multiprocessor activity and energy consumption. Threads executing on a multiprocessor needing data stored in global memory can request and store the needed data in on-chip shared memory, which can be accessed by the threads multiple times. The data can be loaded from global memory and stored in shared memory using an instruction which directs the data into the shared memory without storing the data in registers and/or cache memory of the multiprocessor during the data transfer.
-
公开(公告)号:US20210124582A1
公开(公告)日:2021-04-29
申请号:US16712083
申请日:2019-12-12
Applicant: NVIDIA Corporation
Inventor: Andrew Kerr , Jack Choquette , Xiaogang Qiu , Omkar Paranjape , Poornachandra Rao , Shirish Gadre , Steven J. Heinrich , Manan Patel , Olivier Giroux , Alan Kaatz
IPC: G06F9/30 , G06F12/0888 , G06F12/0808
Abstract: A technique for block data transfer is disclosed that reduces data transfer and memory access overheads and significantly reduces multiprocessor activity and energy consumption. Threads executing on a multiprocessor needing data stored in global memory can request and store the needed data in on-chip shared memory, which can be accessed by the threads multiple times. The data can be loaded from global memory and stored in shared memory using an instruction which directs the data into the shared memory without storing the data in registers and/or cache memory of the multiprocessor during the data transfer.
-
公开(公告)号:US10705994B2
公开(公告)日:2020-07-07
申请号:US15587213
申请日:2017-05-04
Applicant: NVIDIA Corporation
Inventor: Xiaogang Qiu , Ronny Krashinsky , Steven Heinrich , Shirish Gadre , John Edmondson , Jack Choquette , Mark Gebhart , Ramesh Jandhyala , Poornachandra Rao , Omkar Paranjape , Michael Siu
IPC: G06F12/084 , G06F13/28 , G06F12/0891 , G06F12/0811 , G06F12/0895 , G06F12/122 , G11C7/10
Abstract: A unified cache subsystem includes a data memory configured as both a shared memory and a local cache memory. The unified cache subsystem processes different types of memory transactions using different data pathways. To process memory transactions that target shared memory, the unified cache subsystem includes a direct pathway to the data memory. To process memory transactions that do not target shared memory, the unified cache subsystem includes a tag processing pipeline configured to identify cache hits and cache misses. When the tag processing pipeline identifies a cache hit for a given memory transaction, the transaction is rerouted to the direct pathway to data memory. When the tag processing pipeline identifies a cache miss for a given memory transaction, the transaction is pushed into a first-in first-out (FIFO) until miss data is returned from external memory. The tag processing pipeline is also configured to process texture-oriented memory transactions.
-
公开(公告)号:US11907717B2
公开(公告)日:2024-02-20
申请号:US18107374
申请日:2023-02-08
Applicant: NVIDIA Corporation
Inventor: Andrew Kerr , Jack Choquette , Xiaogang Qiu , Omkar Paranjape , Poornachandra Rao , Shirish Gadre , Steven J. Heinrich , Manan Patel , Olivier Giroux , Alan Kaatz
IPC: G06F9/30 , G06F9/52 , G06F12/0808 , G06F12/0888
CPC classification number: G06F9/30043 , G06F9/3009 , G06F9/522 , G06F12/0808 , G06F12/0888 , G06F9/3004
Abstract: A technique for block data transfer is disclosed that reduces data transfer and memory access overheads and significantly reduces multiprocessor activity and energy consumption. Threads executing on a multiprocessor needing data stored in global memory can request and store the needed data in on-chip shared memory, which can be accessed by the threads multiple times. The data can be loaded from global memory and stored in shared memory using an instruction which directs the data into the shared memory without storing the data in registers and/or cache memory of the multiprocessor during the data transfer.
-
公开(公告)号:US11604649B2
公开(公告)日:2023-03-14
申请号:US17363561
申请日:2021-06-30
Applicant: NVIDIA Corporation
Inventor: Andrew Kerr , Jack Choquette , Xiaogang Qiu , Omkar Paranjape , Poornachandra Rao , Shirish Gadre , Steven J. Heinrich , Manan Patel , Olivier Giroux , Alan Kaatz
IPC: G06F9/30 , G06F12/0808 , G06F12/0888 , G06F9/32 , G06F9/38 , G06F9/52 , G06F9/54
Abstract: A technique for block data transfer is disclosed that reduces data transfer and memory access overheads and significantly reduces multiprocessor activity and energy consumption. Threads executing on a multiprocessor needing data stored in global memory can request and store the needed data in on-chip shared memory, which can be accessed by the threads multiple times. The data can be loaded from global memory and stored in shared memory using an instruction which directs the data into the shared memory without storing the data in registers and/or cache memory of the multiprocessor during the data transfer.
-
公开(公告)号:US20230185570A1
公开(公告)日:2023-06-15
申请号:US18107374
申请日:2023-02-08
Applicant: NVIDIA Corporation
Inventor: Andrew KERR , Jack Choquette , Xiaogang Qiu , Omkar Paranjape , Poornachandra Rao , Shirish Gadre , Steven J. Heinrich , Manan Patel , Olivier Giroux , Alan Kaatz
IPC: G06F9/30 , G06F12/0808 , G06F12/0888 , G06F9/32 , G06F9/38 , G06F9/52 , G06F9/54
CPC classification number: G06F9/30043 , G06F12/0808 , G06F12/0888 , G06F9/3009 , G06F9/321 , G06F9/3871 , G06F9/522 , G06F9/542 , G06F9/544 , G06F9/546 , G06F9/3838 , G06F2212/621 , G06F9/3004
Abstract: A technique for block data transfer is disclosed that reduces data transfer and memory access overheads and significantly reduces multiprocessor activity and energy consumption. Threads executing on a multiprocessor needing data stored in global memory can request and store the needed data in on-chip shared memory, which can be accessed by the threads multiple times. The data can be loaded from global memory and stored in shared memory using an instruction which directs the data into the shared memory without storing the data in registers and/or cache memory of the multiprocessor during the data transfer.
-
公开(公告)号:US11347668B2
公开(公告)日:2022-05-31
申请号:US16921795
申请日:2020-07-06
Applicant: NVIDIA Corporation
Inventor: Xiaogang Qiu , Ronny Krashinsky , Steven Heinrich , Shirish Gadre , John Edmondson , Jack Choquette , Mark Gebhart , Ramesh Jandhyala , Poornachandra Rao , Omkar Paranjape , Michael Siu
IPC: G06F13/28 , G06F12/0891 , G06F12/0811 , G06F12/084 , G06F12/0895 , G06F12/122 , G11C7/10
Abstract: A unified cache subsystem includes a data memory configured as both a shared memory and a local cache memory. The unified cache subsystem processes different types of memory transactions using different data pathways. To process memory transactions that target shared memory, the unified cache subsystem includes a direct pathway to the data memory. To process memory transactions that do not target shared memory, the unified cache subsystem includes a tag processing pipeline configured to identify cache hits and cache misses. When the tag processing pipeline identifies a cache hit for a given memory transaction, the transaction is rerouted to the direct pathway to data memory. When the tag processing pipeline identifies a cache miss for a given memory transaction, the transaction is pushed into a first-in first-out (FIFO) until miss data is returned from external memory. The tag processing pipeline is also configured to process texture-oriented memory transactions.
-
公开(公告)号:US10459861B2
公开(公告)日:2019-10-29
申请号:US15716461
申请日:2017-09-26
Applicant: NVIDIA Corporation
Inventor: Xiaogang Qiu , Ronny Krashinsky , Steven Heinrich , Shirish Gadre , John Edmondson , Jack Choquette , Mark Gebhart , Ramesh Jandhyala , Poornachandra Rao , Omkar Paranjape , Michael Siu
IPC: G06F12/02 , G06F13/28 , G06F12/0891 , G06F12/0811 , G06F12/084
Abstract: A unified cache subsystem includes a data memory configured as both a shared memory and a local cache memory. The unified cache subsystem processes different types of memory transactions using different data pathways. To process memory transactions that target shared memory, the unified cache subsystem includes a direct pathway to the data memory. To process memory transactions that do not target shared memory, the unified cache subsystem includes a tag processing pipeline configured to identify cache hits and cache misses. When the tag processing pipeline identifies a cache hit for a given memory transaction, the transaction is rerouted to the direct pathway to data memory. When the tag processing pipeline identifies a cache miss for a given memory transaction, the transaction is pushed into a first-in first-out (FIFO) until miss data is returned from external memory. The tag processing pipeline is also configured to process texture-oriented memory transactions.
-
公开(公告)号:US09754561B2
公开(公告)日:2017-09-05
申请号:US14046064
申请日:2013-10-04
Applicant: NVIDIA CORPORATION
Inventor: Jonathan Dunaisky , Henry Packard Moreton , Jeffrey A. Bolz , Yury Y. Uralsky , James Leroy Deming , Rui M. Bastos , Patrick R. Brown , Amanpreet Grewal , Christian Amsinck , Poornachandra Rao , Jerome F. Duluk, Jr. , Andrew J. Tao
IPC: G06T1/60 , G06F12/08 , G06F12/10 , G09G5/39 , G06F12/0897 , G06F12/1027
CPC classification number: G09G5/39 , G06F12/0897 , G06F12/1027 , G06T1/60
Abstract: One embodiment of the present invention includes a memory management unit (MMU) that is configured to manage sparse mappings. The MMU processes requests to translate virtual addresses to physical addresses based on page table entries (PTEs) that indicate a sparse status. If the MMU determines that the PTE does not include a mapping from a virtual address to a physical address, then the MMU responds to the request based on the sparse status. If the sparse status is active, then the MMU determines the physical address based on whether the type of the request is a write operation and, subsequently, generates an acknowledgement of the request. By contrast, if the sparse status is not active, then the MMU generates a page fault. Advantageously, the disclosed embodiments enable the computer system to manage sparse mappings without incurring the performance degradation associated with both page faults and conventional software-based sparse mapping management.
-
-
-
-
-
-
-
-
-