JP4493626B2 - マルチプロセッサシステム、ライブラリモジュール、および描画処理方法 - Google Patents
マルチプロセッサシステム、ライブラリモジュール、および描画処理方法 Download PDFInfo
- Publication number
- JP4493626B2 JP4493626B2 JP2006145727A JP2006145727A JP4493626B2 JP 4493626 B2 JP4493626 B2 JP 4493626B2 JP 2006145727 A JP2006145727 A JP 2006145727A JP 2006145727 A JP2006145727 A JP 2006145727A JP 4493626 B2 JP4493626 B2 JP 4493626B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- processing unit
- graphics
- interface
- file
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
- Multi Processors (AREA)
- Memory System (AREA)
Description
Claims (11)
- ローカルメモリを搭載したグラフィックスプロセッシングユニットと、
メインメモリを搭載した汎用プロセッシングユニットと、
前記グラフィックスプロセッシングユニットのI/Oポートと前記汎用プロセッシングユニットのI/Oポートを接続し、前記グラフィックスプロセッシングユニットと前記汎用プロセッシングユニットが互いにデータをやりとりするためのI/Oインタフェースとを含み、
前記グラフィックスプロセッシングユニットが前記I/Oインタフェースを介して前記メインメモリ内の所定の仮想メモリ領域にアクセスするために、前記I/Oインタフェースを介してアクセス可能なI/Oアドレス空間に前記仮想メモリ領域がメモリマップされており、
前記メインメモリの前記仮想メモリ領域には、前記グラフィックスプロセッシングユニットによるグラフィックス演算において参照されるデータであって、前記グラフィックス演算において更新されないデータを格納したファイルが保持され、前記グラフィックスプロセッシングユニットは、前記I/Oアドレス空間にメモリマップされた前記仮想メモリに前記I/Oインタフェースを介してアクセスして前記ファイルを読み取り、前記グラフィックス演算に利用することを特徴とするマルチプロセッサシステム。 - 前記グラフィックスプロセッシングユニットによるグラフィックス演算において参照されるデータであって、前記グラフィックス演算において更新されないデータを格納した複数のファイルの内、一部のファイルは前記メインメモリの前記仮想メモリ領域に保持され、残りのファイルは前記ローカルメモリに保持され、前記グラフィックスプロセッシングユニットは、前記I/Oアドレス空間にメモリマップされた前記仮想メモリに前記I/Oインタフェースを介してアクセスして前記一部のファイルを読み取るとともに、前記ローカルメモリにアクセスして前記残りのファイルを読み取り、読み取られた前記複数のファイルを前記グラフィックス演算に利用することを特徴とする請求項1に記載のマルチプロセッサシステム。
- 前記グラフィックスプロセッシングユニットによるグラフィックス演算における参照頻度が所定の閾値以下の前記ファイルは前記メインメモリの前記仮想メモリ領域に保持され、残りの前記ファイルは前記ローカルメモリに保持されることを特徴とする請求項2に記載のマルチプロセッサシステム。
- 前記ローカルメモリの容量が前記メインメモリの容量よりも小さい場合、ファイルサイズが所定のサイズ以上の前記ファイルは前記メインメモリの前記仮想メモリ領域に保持され、残りの前記ファイルは前記ローカルメモリに保持されることを特徴とする請求項2に記載のマルチプロセッサシステム。
- 前記複数のファイルの内、前記メインメモリの前記仮想メモリ領域に保持されるファイルの枚数を変えた場合に、前記グラフィックスプロセッシングユニットが前記ローカルメモリに対して描画データを読み書きしながら描画処理を行う過程で前記複数のファイルを参照する際の転送速度が最大になるファイルの枚数が最適枚数として取得され、前記最適枚数の前記ファイルが前記メインメモリの前記仮想メモリ領域に保持され、残りの前記ファイルは前記ローカルメモリに保持されることを特徴とする請求項2に記載のマルチプロセッサシステム。
- 前記ファイルは、前記メインメモリの前記仮想メモリ領域と前記ローカルメモリの両方に重複して保持され、前記グラフィックスプロセッシングユニットは、前記I/Oインタフェースを介した前記仮想メモリのアクセスによる前記ファイルの読み取りと、前記ローカルメモリのアクセスによる前記ファイルの読み取りとを前記ローカルメモリのバスの輻輳状態に応じて切り替え、前記仮想メモリまたは前記ローカルメモリから読み取られた前記ファイルを前記グラフィックス演算に利用することを特徴とする請求項1に記載のマルチプロセッサシステム。
- 前記メインメモリの前記仮想メモリ領域には、前記グラフィックスプロセッシングユニットによるマッピング処理に必要となるマッピングデータを格納したファイルが保持され、前記グラフィックスプロセッシングユニットは、前記I/Oインタフェースを介して前記I/Oアドレス空間にメモリマップされた前記仮想メモリにアクセスして前記ファイルを読み取り、前記マッピング処理に利用することを特徴とする請求項1から6のいずれかに記載のマルチプロセッサシステム。
- I/Oインタフェースを介してグラフィックスプロセッシングユニットと接続可能な汎用プロセッシングユニットにおいて実行されるプログラムから呼び出されるプログラム部品をファイルにまとめたライブラリモジュールであって、
前記グラフィックスプロセッシングユニットが前記I/Oインタフェースを介して前記汎用プロセッシングユニットに搭載されたメインメモリ内の所定の仮想メモリ領域にアクセスするために、前記I/Oインタフェースを介してアクセス可能なI/Oアドレス空間に前記仮想メモリ領域をメモリマップするメモリ管理機能と、
前記グラフィックスプロセッシングユニットによるグラフィックス演算において参照されるデータであって、前記グラフィックス演算において更新されないデータを格納したファイルを前記メインメモリ内の前記仮想メモリ領域に配置するデータ配置機能と
を前記汎用プロセッシングユニットに実現させることを特徴とするライブラリモジュール。 - 前記グラフィックスプロセッシングユニットによるグラフィックス演算において参照されるデータであって、前記グラフィックス演算において更新されないデータを格納した複数のファイルの内、前記メインメモリの前記仮想メモリ領域に配置すべき一部のファイルの指定を受け付けるインタフェース機能と、
前記メインメモリと前記グラフィックスプロセッシングユニットに搭載されたローカルメモリの間でデータ転送するデータ転送機能と
をさらに前記汎用プロセッシングユニットに実現させ、
前記データ配置機能は、前記複数のファイルの内、指定された前記一部のファイルを前記メインメモリの前記仮想メモリ領域に配置し、残りのファイルを前記データ転送機能により前記ローカルメモリに転送することを特徴とする請求項8に記載のライブラリモジュール。 - 汎用プロセッシングユニットとグラフィックスプロセッシングユニットとがI/Oインタフェースを介して互いに接続されたマルチプロセッサシステムにおいて実行可能なプログラムであって、
前記グラフィックスプロセッシングユニットが前記I/Oインタフェースを介して前記汎用プロセッシングユニットに搭載されたメインメモリ内の所定の仮想メモリ領域にアクセスするために、前記I/Oインタフェースを介してアクセス可能なI/Oアドレス空間に前記仮想メモリ領域をメモリマップするメモリ管理機能と、
前記グラフィックスプロセッシングユニットによるグラフィックス演算において参照されるデータであって、前記グラフィックス演算において更新されないデータを格納したファイルを前記メインメモリ内の前記仮想メモリ領域に配置するデータ配置機能と
を前記汎用プロセッシングユニットに実現させ、
前記I/Oインタフェースを介して前記I/Oアドレス空間にメモリマップされた前記仮想メモリにアクセスして前記ファイルを読み取るデータ読み取り機能と、
前記仮想メモリから読み出された前記ファイルを前記グラフィックス演算に利用するグラフィックス処理機能と
を前記グラフィックスプロセッシングユニットに実現させることを特徴とするプログラム。 - 汎用プロセッシングユニットとグラフィックスプロセッシングユニットとがI/Oインタフェースを介して互いに接続されたマルチプロセッサシステムにおける描画処理方法であって、
前記グラフィックスプロセッシングユニットが前記I/Oインタフェースを介して前記汎用プロセッシングユニットに搭載されたメインメモリ内の所定の仮想メモリ領域にアクセスするために、前記I/Oインタフェースを介してアクセス可能なI/Oアドレス空間に前記仮想メモリ領域をメモリマップするステップと、
前記グラフィックスプロセッシングユニットによるグラフィックス演算において参照されるデータであって、前記グラフィックス演算において更新されないデータを格納したファイルを前記メインメモリ内の前記仮想メモリ領域に保持するステップと、
前記グラフィックスプロセッシングユニットが、前記I/Oインタフェースを介して前記I/Oアドレス空間にメモリマップされた前記仮想メモリにアクセスして前記ファイルを読み取り、前記グラフィックス演算に利用するステップとを含むことを特徴とする描画処理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006145727A JP4493626B2 (ja) | 2006-05-25 | 2006-05-25 | マルチプロセッサシステム、ライブラリモジュール、および描画処理方法 |
US12/293,519 US20090128574A1 (en) | 2006-05-25 | 2007-04-03 | Multiprocessor System, Library Module And Rendering Processing Method |
EP07737015A EP2023252A4 (en) | 2006-05-25 | 2007-04-03 | MULTIPROCESSOR SYSTEM, LIBRARY MODULE, AND GRAPHIC PROCESSING METHOD |
PCT/JP2007/000358 WO2007138735A1 (ja) | 2006-05-25 | 2007-04-03 | マルチプロセッサシステム、ライブラリモジュール、および描画処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006145727A JP4493626B2 (ja) | 2006-05-25 | 2006-05-25 | マルチプロセッサシステム、ライブラリモジュール、および描画処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007316940A JP2007316940A (ja) | 2007-12-06 |
JP4493626B2 true JP4493626B2 (ja) | 2010-06-30 |
Family
ID=38778263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006145727A Expired - Fee Related JP4493626B2 (ja) | 2006-05-25 | 2006-05-25 | マルチプロセッサシステム、ライブラリモジュール、および描画処理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20090128574A1 (ja) |
EP (1) | EP2023252A4 (ja) |
JP (1) | JP4493626B2 (ja) |
WO (1) | WO2007138735A1 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8149242B2 (en) * | 2006-11-10 | 2012-04-03 | Sony Computer Entertainment Inc. | Graphics processing apparatus, graphics library module and graphics processing method |
US9354944B2 (en) | 2009-07-27 | 2016-05-31 | Advanced Micro Devices, Inc. | Mapping processing logic having data-parallel threads across processors |
US8279213B2 (en) * | 2009-12-23 | 2012-10-02 | Intel Corporation | Synchronized media processing |
KR101885211B1 (ko) | 2012-01-27 | 2018-08-29 | 삼성전자 주식회사 | Gpu의 자원 할당을 위한 방법 및 장치 |
US9378572B2 (en) | 2012-08-17 | 2016-06-28 | Intel Corporation | Shared virtual memory |
US9214005B2 (en) | 2012-12-18 | 2015-12-15 | Google Technology Holdings LLC | Methods and systems for overriding graphics commands |
US9137320B2 (en) | 2012-12-18 | 2015-09-15 | Google Technology Holdings LLC | Methods and systems for overriding graphics commands |
US8982137B2 (en) * | 2012-12-18 | 2015-03-17 | Google Technology Holdings LLC | Methods and systems for overriding graphics commands |
GB2556743B (en) * | 2012-12-21 | 2018-12-05 | Displaylink Uk Ltd | Management of memory for storing display data |
WO2014178450A1 (ko) * | 2013-04-30 | 2014-11-06 | 전자부품연구원 | Cpu와 gpu 간의 협업 시스템 및 그 방법 |
US20150091912A1 (en) * | 2013-09-27 | 2015-04-02 | Nvidia Corporation | Independent memory heaps for scalable link interface technology |
CN106951190B (zh) * | 2017-03-21 | 2019-11-26 | 联想(北京)有限公司 | 数据存储及访问方法、节点和服务器集群 |
CN110347463B (zh) * | 2019-06-25 | 2022-04-08 | 荣耀终端有限公司 | 图像处理方法、相关设备及计算机存储介质 |
KR102484914B1 (ko) * | 2021-11-23 | 2023-01-06 | (주)글루시스 | 가상화 환경에서 데이터를 저장하는 방법 |
US20240220122A1 (en) * | 2022-12-28 | 2024-07-04 | Advanced Micro Devices, Inc. | Partial Address Memory Requests |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS619738A (ja) * | 1984-06-26 | 1986-01-17 | Fuji Electric Co Ltd | アドレスマツピング方式 |
US5155822A (en) * | 1987-08-13 | 1992-10-13 | Digital Equipment Corporation | High performance graphics workstation |
JPH0573518A (ja) * | 1991-09-18 | 1993-03-26 | Nec Corp | メモリマツプドcpuシステム |
JPH07282023A (ja) * | 1994-04-06 | 1995-10-27 | Hitachi Ltd | データ転送量可変プロセッサ及びそれを用いたシステム |
EP0945788B1 (en) * | 1998-02-04 | 2004-08-04 | Texas Instruments Inc. | Data processing system with digital signal processor core and co-processor and data processing method |
US6750870B2 (en) * | 2000-12-06 | 2004-06-15 | Hewlett-Packard Development Company, L.P. | Multi-mode graphics address remapping table for an accelerated graphics port device |
US6947051B2 (en) * | 2003-02-18 | 2005-09-20 | Microsoft Corporation | Video memory management |
US7355601B2 (en) * | 2003-06-30 | 2008-04-08 | International Business Machines Corporation | System and method for transfer of data between processors using a locked set, head and tail pointers |
-
2006
- 2006-05-25 JP JP2006145727A patent/JP4493626B2/ja not_active Expired - Fee Related
-
2007
- 2007-04-03 US US12/293,519 patent/US20090128574A1/en not_active Abandoned
- 2007-04-03 WO PCT/JP2007/000358 patent/WO2007138735A1/ja active Application Filing
- 2007-04-03 EP EP07737015A patent/EP2023252A4/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
EP2023252A1 (en) | 2009-02-11 |
WO2007138735A1 (ja) | 2007-12-06 |
JP2007316940A (ja) | 2007-12-06 |
EP2023252A4 (en) | 2010-09-29 |
US20090128574A1 (en) | 2009-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4493626B2 (ja) | マルチプロセッサシステム、ライブラリモジュール、および描画処理方法 | |
US7333114B2 (en) | System and method for parallel execution of data generation tasks | |
US7355601B2 (en) | System and method for transfer of data between processors using a locked set, head and tail pointers | |
EP1921584B1 (en) | Graphics processing apparatus, graphics library module, and graphics processing method | |
JP4550878B2 (ja) | グラフィックス処理装置 | |
TWI520071B (zh) | 在中央處理單元與圖形處理單元間分享資源之技術 | |
US8341380B2 (en) | Efficient memory translator with variable size cache line coverage | |
US9734548B2 (en) | Caching of adaptively sized cache tiles in a unified L2 cache with surface compression | |
JP5142299B2 (ja) | 圧縮状態ビットキャッシュ及びバッキング記憶装置 | |
US8760460B1 (en) | Hardware-managed virtual buffers using a shared memory for load distribution | |
US7533237B1 (en) | Off-chip memory allocation for a unified shader | |
TWI645371B (zh) | 在上游著色器內設定下游著色狀態 | |
US8810592B2 (en) | Vertex attribute buffer for inline immediate attributes and constants | |
TWI633516B (zh) | 曲面細分及幾何著色器的功率效率屬性處理 | |
EP2495665A2 (en) | Command transfer controlling apparatus and command transfer controlling method | |
TWI525438B (zh) | 透過貼圖硬體執行記憶體存取操作之技術 | |
US20240193844A1 (en) | Configurable multiple-die graphics processing unit | |
US20210158599A1 (en) | Data flow in a distributed graphics processing unit architecture | |
WO2021157315A1 (ja) | グラフィックプロセッサ及び情報処理システム | |
US12051144B2 (en) | Fully utilized hardware in a multi-tenancy graphics processing unit | |
US8749562B1 (en) | Sharing binding groups between shaders | |
JP5670723B2 (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070822 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100406 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100406 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130416 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |