JP2015505091A5 - - Google Patents

Download PDF

Info

Publication number
JP2015505091A5
JP2015505091A5 JP2014546668A JP2014546668A JP2015505091A5 JP 2015505091 A5 JP2015505091 A5 JP 2015505091A5 JP 2014546668 A JP2014546668 A JP 2014546668A JP 2014546668 A JP2014546668 A JP 2014546668A JP 2015505091 A5 JP2015505091 A5 JP 2015505091A5
Authority
JP
Japan
Prior art keywords
memory
cache
command message
message
locality
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014546668A
Other languages
English (en)
Other versions
JP2015505091A (ja
JP5973590B2 (ja
Filing date
Publication date
Priority claimed from US13/324,432 external-priority patent/US9239793B2/en
Application filed filed Critical
Publication of JP2015505091A publication Critical patent/JP2015505091A/ja
Publication of JP2015505091A5 publication Critical patent/JP2015505091A5/ja
Application granted granted Critical
Publication of JP5973590B2 publication Critical patent/JP5973590B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (17)

  1. キャッシュに電気的に接続されたアクセラレイテッド処理デバイスを含むシステムであって、
    コントローラを備え、
    前記コントローラは、
    コマンドメッセージを受信することであって、前記コマンドメッセージは、前記アクセラレイテッド処理デバイスによる処理の間にアクセスされる命令を含み、前記命令は、メモリの複数の部分のうち一部に関連するデータを含む、ことと、
    前記コマンドメッセージが、前記メモリのうちアクセスされる前記一部を前記キャッシュにプレローディングするためのプレローディング命令を含むか否かを判別することによって前記コマンドメッセージを解釈することであって前記コマンドメッセージが前記プレローディング命令を含むと判別された場合に、少なくとも前記メモリの前記一部を前記キャッシュにプレローディングし、前記コマンドメッセージが前記プレローディング命令を含んでいないと判別された場合に、前記コマンドメッセージの命令をキャッシュアクセス履歴と比較し、前記コマンドメッセージと前記キャッシュアクセス履歴との比較に基づいて、少なくとも前記メモリの前記一部を前記キャッシュにプレローディングすると判別する、ことと、
    (i)ローカリティ参照情報および(ii)前記キャッシュポリシー情報の少なくとも一方に基づいて、前記メモリのうちどの前記複数の部分を前記キャッシュにプレローディングするのか判別することと、
    記一部の内容に関連するデータを含むフェッチメッセージを作成することと、
    記フェッチメッセージを前記キャッシュに出力することと、
    を行うように構成されている、システム。
  2. 前記メモリの前記一部に関連するデータを含む前記コマンドメッセージを出力するように構成されたホストプロセッサをさらに備える、請求項1に記載のシステム。
  3. 前記ポリシー情報は、
    前記メモリのうちプレローディングされる前記一部がどのように前記キャッシュに記憶されるのか、及び、前記キャッシュのブロックが、(1)読み取りのみ、又は、(2)読み取りと書き込みの両方、の何れのときに書き込まれるのか、を決定し、
    前記フェッチメッセージは、前記キャッシュに、前記ポリシー情報に基づいて前記データを前記メモリの一部からロードさせる、請求項1に記載のシステム。
  4. 前記コマンドメッセージは、参照情報のローカリティを含む、請求項に記載のシステム。
  5. 前記ローカリティ参照情報は、前記メモリの一部の時間的ローカリティに基づいている、請求項に記載のシステム。
  6. 前記ローカリティ参照情報は、前記メモリの一部の空間的ローカリティに基づいている、請求項に記載のシステム。
  7. キャッシュをプレローディングするための、コンピュータで実施される方法であって、
    マンドメッセージを受信することであって、前記コマンドメッセージは、前記アクセラレイテッド処理デバイスによる処理の間にアクセスされる命令を含み、前記命令は、メモリの複数の部分のうち一部に関連するデータを含む、ことと、
    前記コマンドメッセージが、前記メモリのうちアクセスされる前記一部を前記キャッシュにプレローディングするためのプレローディング命令を含むか否かを判別することによって前記コマンドメッセージを解釈することであって前記コマンドメッセージが前記プレローディング命令を含むと判別された場合に、少なくとも前記メモリの前記一部を前記キャッシュにプレローディングし、前記コマンドメッセージが前記プレローディング命令を含んでいないと判別された場合に、前記コマンドメッセージの命令をキャッシュアクセス履歴と比較し、前記コマンドメッセージと前記キャッシュアクセス履歴との比較に基づいて、少なくとも前記メモリの前記一部を前記キャッシュにプレローディングすると判別する、ことと、
    (i)特定されたローカリティ参照情報および(ii)特定された前記キャッシュのポリシー情報の少なくとも一方に基づいて、前記メモリのうちどの前記複数の部分を前記キャッシュにプレローディングするのか判別することと、
    前記一部の内容に関連するデータを含むフェッチメッセージを作成することと、
    前記フェッチメッセージを前記キャッシュに送信することと、
    を含む、方法。
  8. 前記ポリシー情報は、
    前記メモリのうちプレローディングされる前記一部がどのように前記キャッシュに記憶されるのか、及び、前記キャッシュのブロックが、(1)読み取りのみ、又は、(2)読み取りと書き込みの両方、の何れのときに書き込まれるのか、を決定し、
    前記フェッチメッセージは、前記キャッシュに前記メモリの一部からデータをロードさせる、請求項に記載の方法。
  9. 前記コマンドメッセージは、前記ローカリティ参照情報を含む、請求項に記載の方法。
  10. 前記参照情報のローカリティは、前記メモリの一部の時間的ローカリティに基づいている、請求項に記載の方法。
  11. 前記参照情報のローカリティは、前記メモリの一部の空間的ローカリティに基づいている、請求項に記載の方法。
  12. 前記コントローラは、前記コマンドメッセージが、メモリの各部分に対する物理アドレスを有するプレローディング命令を含むか否かを判別することによって、前記コマンドメッセージを解釈するように構成されている、請求項に記載のシステム。
  13. 前記コントローラは、前記コマンドメッセージが、前記メモリの一部に対する仮想アドレスを有するプレローディング命令を含むか否かを判別することによって、コマンドメッセージを解釈するように構成されている、請求項に記載のシステム。
  14. 前記コントローラは、前記メモリの一部に対する仮想アドレスを物理アドレスに変換するように構成されている、請求項13に記載のシステム。
  15. 前記コマンドメッセージを解釈することは、前記メモリの一部に対する仮想アドレスを有するプレローディング命令を含むか否かを判別することをさらに含む、請求項に記載の方法。
  16. 前記メモリの一部に対する仮想アドレスを物理アドレスに変換することをさらに含む、請求項15に記載の方法。
  17. 前記コマンドメッセージを解釈することは、前記メモリの一部に対する物理アドレスを有するプレローディング命令を含むか否かを判別することをさらに含む、請求項に記載の方法。
JP2014546668A 2011-12-13 2012-12-12 キャッシュのプレローディングにgpuコントローラを使用するための機構 Active JP5973590B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/324,432 US9239793B2 (en) 2011-12-13 2011-12-13 Mechanism for using a GPU controller for preloading caches
US13/324,432 2011-12-13
PCT/IB2012/002938 WO2013108070A1 (en) 2011-12-13 2012-12-12 Mechanism for using a gpu controller for preloading caches

Publications (3)

Publication Number Publication Date
JP2015505091A JP2015505091A (ja) 2015-02-16
JP2015505091A5 true JP2015505091A5 (ja) 2016-02-12
JP5973590B2 JP5973590B2 (ja) 2016-08-23

Family

ID=48573113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014546668A Active JP5973590B2 (ja) 2011-12-13 2012-12-12 キャッシュのプレローディングにgpuコントローラを使用するための機構

Country Status (6)

Country Link
US (1) US9239793B2 (ja)
EP (1) EP2791933B1 (ja)
JP (1) JP5973590B2 (ja)
KR (1) KR101868997B1 (ja)
CN (1) CN104025185B (ja)
WO (1) WO2013108070A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8842122B2 (en) * 2011-12-15 2014-09-23 Qualcomm Incorporated Graphics processing unit with command processor
US9342712B2 (en) * 2012-06-08 2016-05-17 Advanced Micro Devices, Inc. Method and system for accelerating cryptographic processing
US9092341B2 (en) 2012-07-10 2015-07-28 International Business Machines Corporation Methods of cache preloading on a partition or a context switch
US10922851B2 (en) * 2014-09-25 2021-02-16 The Boeing Company Virtual reality environment color and contour processing system
CN107423232B (zh) * 2016-05-24 2020-10-16 北京忆芯科技有限公司 Ftl快速访问方法与装置
CN106127673B (zh) * 2016-07-19 2019-02-12 腾讯科技(深圳)有限公司 一种视频处理方法、装置及计算机设备
US20180336034A1 (en) * 2017-05-17 2018-11-22 Hewlett Packard Enterprise Development Lp Near memory computing architecture
GB2567466B (en) 2017-10-12 2020-01-22 Advanced Risc Mach Ltd Cache stashing in a data processing system
CN109634491A (zh) * 2018-12-14 2019-04-16 珠海市小源科技有限公司 一种双向分段加载数据并显示的方法、计算机装置及计算机可读存储介质
US10877896B2 (en) 2019-03-07 2020-12-29 Micron Technology, Inc. Adaptive readahead cache manager based on detected active streams of read commands
US11232533B2 (en) * 2019-03-15 2022-01-25 Intel Corporation Memory prefetching in multiple GPU environment
CN110187835B (zh) * 2019-05-24 2023-02-03 北京百度网讯科技有限公司 用于管理访问请求的方法、装置、设备和存储介质
CN111522771B (zh) * 2020-04-20 2023-08-15 北京百度网讯科技有限公司 眼底图像处理方法、终端设备及存储介质
US20230069890A1 (en) * 2021-09-03 2023-03-09 Advanced Micro Devices, Inc. Processing device and method of sharing storage between cache memory, local data storage and register files

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761720A (en) 1996-03-15 1998-06-02 Rendition, Inc. Pixel engine pipeline processor data caching mechanism
US6347369B1 (en) * 1997-11-17 2002-02-12 Advanced Micro Devices, Inc. Method and circuit for single cycle multiple branch history table access
KR100291628B1 (ko) 1999-06-19 2001-05-15 윤덕용 3차원 그래픽 텍스쳐 맵핑용 캐쉬 메모리 및 그의 캐쉬 미스페널티 저감방법
US20050010726A1 (en) 2003-07-10 2005-01-13 Rai Barinder Singh Low overhead read buffer
US20050195200A1 (en) 2004-03-03 2005-09-08 Chuang Dan M. Embedded system with 3D graphics core and local pixel buffer
US7360027B2 (en) * 2004-10-15 2008-04-15 Intel Corporation Method and apparatus for initiating CPU data prefetches by an external agent
US7502913B2 (en) 2006-06-16 2009-03-10 Microsoft Corporation Switch prefetch in a multicore computer chip
US8325184B2 (en) * 2007-09-14 2012-12-04 Qualcomm Incorporated Fragment shader bypass in a graphics processing unit, and apparatus and method thereof
JP2009230374A (ja) * 2008-03-21 2009-10-08 Fujitsu Ltd 情報処理装置,プログラム,及び命令列生成方法
US20100123717A1 (en) 2008-11-20 2010-05-20 Via Technologies, Inc. Dynamic Scheduling in a Graphics Processor
US8489851B2 (en) 2008-12-11 2013-07-16 Nvidia Corporation Processing of read requests in a memory controller using pre-fetch mechanism
US20100153934A1 (en) * 2008-12-12 2010-06-17 Peter Lachner Prefetch for systems with heterogeneous architectures
US8171219B2 (en) * 2009-03-31 2012-05-01 Intel Corporation Method and system to perform caching based on file-level heuristics
US8140769B2 (en) * 2009-04-20 2012-03-20 Oracle America, Inc. Data prefetcher
US9582222B2 (en) 2009-04-30 2017-02-28 Western Digital Technologies, Inc. Pre-cache similarity-based delta compression for use in a data storage system
US8219758B2 (en) * 2009-07-10 2012-07-10 Apple Inc. Block-based non-transparent cache
US9354944B2 (en) * 2009-07-27 2016-05-31 Advanced Micro Devices, Inc. Mapping processing logic having data-parallel threads across processors
US8803897B2 (en) 2009-09-03 2014-08-12 Advanced Micro Devices, Inc. Internal, processing-unit memory for general-purpose use
US20110072218A1 (en) * 2009-09-24 2011-03-24 Srilatha Manne Prefetch promotion mechanism to reduce cache pollution
CN101866318B (zh) * 2010-06-13 2012-02-22 北京北大众志微系统科技有限责任公司 一种高速缓存替换策略的管理系统及方法
US8937622B2 (en) 2010-09-20 2015-01-20 Qualcomm Incorporated Inter-processor communication techniques in a multiple-processor computing platform

Similar Documents

Publication Publication Date Title
JP2015505091A5 (ja)
KR102353782B1 (ko) NVMe 기반 솔리드 스테이트 드라이브에서 읽기 버퍼 사이즈 요구량을 감소하는 방법
IN2012DN02977A (ja)
EP3279788A1 (en) Access method, device and system for expanding memory
KR102268601B1 (ko) 데이터 포워딩을 위한 프로세서, 그것의 동작 방법 및 그것을 포함하는 시스템
JP5608594B2 (ja) プレロード命令制御
JP2015506041A5 (ja)
JP2017526071A5 (ja)
JP2018504694A (ja) 仮想アドレスを使用してアクセスされるキャッシュ
JP2018504694A5 (ja)
TW200502679A (en) Access request for a data processing system having no system memory
JP2015507310A5 (ja)
JP2017516228A5 (ja)
EP2669807A3 (en) Processor resource and execution protection methods and apparatus
WO2010004242A3 (en) Data processing apparatus, for example using vector pointers
CN109388517A (zh) 存储器控制器、包括存储器控制器的存储器系统和应用处理器
WO2007020264B1 (en) System and method for limiting the size of a local storage of a processor
GB2520856A (en) Enabling Virtualization of a processor resource
KR101743409B1 (ko) 메모리 관리
US20160034345A1 (en) Memory latency management
JP2008529181A5 (ja)
JP2011507073A5 (ja)
US9250913B2 (en) Collision-based alternate hashing
US20140244939A1 (en) Texture cache memory system of non-blocking for texture mapping pipeline and operation method of texture cache memory
WO2012037439A3 (en) Single step processing of memory mapped accesses in a hypervisor