KR20100029230A - 그래픽 서브시스템의 컴포넌트, 컴퓨터 판독가능 기록매체, 및 타겟 메모리 버퍼들을 제공하는 방법 - Google Patents
그래픽 서브시스템의 컴포넌트, 컴퓨터 판독가능 기록매체, 및 타겟 메모리 버퍼들을 제공하는 방법 Download PDFInfo
- Publication number
- KR20100029230A KR20100029230A KR1020100017849A KR20100017849A KR20100029230A KR 20100029230 A KR20100029230 A KR 20100029230A KR 1020100017849 A KR1020100017849 A KR 1020100017849A KR 20100017849 A KR20100017849 A KR 20100017849A KR 20100029230 A KR20100029230 A KR 20100029230A
- Authority
- KR
- South Korea
- Prior art keywords
- graphics
- program
- mrts
- program instructions
- data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Processing (AREA)
- Digital Computer Display Output (AREA)
Abstract
Description
도 2a 내지 도 2c는 종래의 그래픽스 파이프라인이 갖는 각종 제한들 및 문제점들을 설명하는 도면.
도 3a는 본 발명이 구현될 수 있는 각종 연산 디바이스들을 갖는 예시적인 네트워크 환경을 나타낸 블록도.
도 3b는 본 발명이 구현될 수 있는 예시적인 무제한 연산 디바이스들을 나타내는 블록도.
도 4는 하드웨어 명령 카운트 제한을 피하기 위한 본 발명의 중간 메모리 타겟들의 예시적인 사용을 나타낸 도면.
도 5는 본 발명에 따른 API의 사용을 설명하는 예시적인 흐름도.
도 6은 본 발명의 중간 메모리 타겟들의 예시적인 특징들을 설명하는 블록도.
도 7은 본 발명에 따라 하드웨어에 의해 수개의 프로그램 패스(pass)들을 갖는 복잡한 기능을 실현하기 위한 중간 메모리 타겟들의 예시적인 사용을 설명하는 도면.
14 : 통신 네트워크/버스
100 : 연산 환경
120 : 프로세싱 유닛
130 : 시스템 메모리
140 : 제거불가능한 불휘발성 메모리 인터페이스
150 : 제거가능한 불휘발성 메모리 인터페이스
160 : 사용자 입력 인터페이스
170 : 네트워크 인터페이스
Claims (20)
- 동작들을 수행하도록 구성된 그래픽 처리 장치(Graphics Processing Unit: GPU)를 포함하는 컴퓨팅 시스템의 그래픽 서브시스템의 컴포넌트로서, 상기 동작들은,
복수의 표면을 갖는 3차원 그래픽을 처리하는 그래픽 프로그램의 연산을 지원하는 단계 - 상기 복수의 표면의 칼라 요소들은 각각의 표면들에 개별적으로 결합됨 -;
최대 그래픽 명령어 제한을 초과하는 상기 그래픽 프로그램으로부터 명령어를 수신하는 단계;
상기 3차원 그래픽을 위한 중간 메모리 버퍼들을 할당하는 단계;
최대 그래픽 하드웨어 명령어 카운트를 초과하지 않고 상기 중간 메모리 버퍼들을 사용하는 제1 기능을 수행하기 위하여, 프로그램 명령어들의 제1 세트로 상기 명령어를 분리하는 단계 - 프로그램 명령어들의 상기 제1 세트는 상기 그래픽 프로그램의 일부의 연산들을 상기 GPU가 수행하도록 구성됨 -;
상기 최대 그래픽 하드웨어 명령어 카운트를 초과하지 않고 상기 중간 메모리 버퍼들을 사용하는 제2 기능을 수행하기 위하여, 프로그램 명령어들의 제2 세트로 상기 명령어를 분리하는 단계 - 프로그램 명령어들의 상기 제2 세트는 프로그램 명령어들의 상기 제1 세트와는 달리 상기 그래픽 프로그램의 다른 부분의 연산들을 상기 GPU가 수행하도록 구성됨 -; 및
상기 최대 그래픽 하드웨어 명령어 카운트를 초과하지 않고 상기 중간 메모리 버퍼들을 사용하는 제3 기능을 수행하기 위하여, 프로그램 명령어들의 제3 세트로 상기 명령어를 분리하는 단계 - 프로그램 명령어들의 상기 제3 세트는 프로그램 명령어들의 상기 제1 세트 및 프로그램 명령어들의 상기 제2 세트와는 달리 상기 그래픽 프로그램의 또 다른 부분의 연산들을 상기 GPU가 수행하도록 구성됨 -
를 포함하는, 그래픽 서브시스템의 컴포넌트. - 제1항에 있어서,
상기 컴포넌트는 절차적 셰이더(procedural shader)를 포함하는, 그래픽 서브시스템의 컴포넌트. - 제2항에 있어서,
각각의 중간 메모리 버퍼의 해상도는 가변적으로 설정되고, 각각의 칼라 요소는 인터리브 방식(interleaved fashion)으로 각각의 표면에 기입되는, 그래픽 서브시스템의 컴포넌트. - 메모리, 중앙 처리 장치(CPU) 및 그래픽 처리 장치(GPU)를 포함하는 컴퓨팅 시스템에서 연산 가능한 다수의 재순환 타겟들(Multiple Recirculation Targets: MRTs)을 포함하는 데이터 구조를 포함하는 컴퓨터 판독가능 기록매체로서, 상기 MRT들은,
최대 그래픽 명령어 카운트를 초과하는 그래픽 프로그램에 대한 입력으로서 역할하는 MRT들의 제1 세트 - 상기 그래픽 프로그램은 절차적 셰이더(procedural shader)를 구현하고, 복수의 텍스쳐링된 표면을 갖는 3차원 그래픽을 처리하며, 상기 복수의 텍스쳐링된 표면의 칼라 요소들은 각각의 텍스쳐링된 표면들에 개별적으로 결합되며, 상기 그래픽 프로그램은 상기 최대 그래픽 명령어 카운트를 초과함 -; 및
프로그램 부분으로부터의 출력들로서 역할하는 MRT들의 제2 세트 - 상기 프로그램 부분은, 상기 최대 그래픽 명령어(Maximum Graphics Instruction: MGI) 카운트를 초과하고 최대 그래픽 하드웨어 명령어 카운트를 초과하지 않는 상기 그래픽 프로그램의 일부이며, MRT들의 상기 제2 세트는, 상기 그래픽 프로그램이 상기 MGI 카운트를 초과한다는 판정에 응답하여, 표면 생성 기능에 의해 생성되고, MRT들의 상기 제2 세트는 각각의 칼라 요소들이 각각의 표면들에 개별적으로 결합되도록 생성되며, 상기 프로그램 부분은 MRT들의 상기 제1 세트의 임의의 수의 MRT들로부터 동시에 판독한 후에 MRT들의 상기 제2 세트의 임의의 수의 MRT들에 기입함 -
를 포함하는, 컴퓨터 판독가능 기록매체. - 제4항에 있어서,
MRT들의 상기 제2 세트의 각각의 MRT의 해상도는 가변적으로 설정되는, 컴퓨터 판독가능 기록매체. - 제4항에 있어서,
상기 프로그램 부분은 MRT들의 상기 제2 세트의 다수의 MRT들로 동시에 출력하고, MRT들의 상기 제2 세트의 각각의 MRT는 상기 텍스쳐링된 표면들의 텍스쳐들의 별개 요소를 포함하는, 컴퓨터 판독가능 기록매체. - 제6항에 있어서,
MRT들의 상기 제1 세트는 단일 요소 텍스쳐들을 포함하는, 컴퓨터 판독가능 기록매체. - 제4항에 있어서,
상기 프로그램 부분은 MRT들의 상기 제2 세트의 다수의 MRT들로 기입함으로써 텍스쳐의 다수의 요소들에 동시에 기입하는, 컴퓨터 판독가능 기록매체. - 제4항에 있어서,
상기 프로그램 부분은 인터리브 방식으로 복수의 텍스쳐 각각에 대해 칼라 요소와 연관된 네 개의 컴포넌트 출력을 기입하는, 컴퓨터 판독가능 기록매체. - 제4항에 있어서,
상기 절차적 셰이더는 버텍스 셰이더(vertex shader) 또는 픽셀 셰이더(pixel shader) 중 적어도 하나인, 컴퓨터 판독가능 기록매체. - 그래픽 처리 장치(GPU) 및 중앙 처리 장치(CPU)를 포함하는 컴퓨팅 시스템에서 3차원 그래픽을 위한 타겟 메모리 버퍼들을 제공하는 방법으로서, 상기 방법은,
절차적 셰이더를 포함하는 그래픽 프로그램을 연산하는 단계;
상기 그래픽 프로그램이 최대 그래픽 하드웨어 명령어 카운트를 초과하는 때에 프로그램 명령어들의 세트들로 상기 그래픽 프로그램을 분리하는 단계 - 프로그램 명령어들의 세트 각각은 상기 최대 그래픽 하드웨어 명령어 카운트를 초과하지 않으며, 상기 3차원 그래픽은 복수의 표면을 갖고, 상기 복수의 표면의 칼라 요소들은 각각의 표면들로 개별적으로 결합됨 -;
상기 GPU로 상기 프로그램 명령어들의 세트를 전송하는 단계;
상기 프로그램 명령어들의 상기 세트를 실행함으로써 생성된 데이터를 보유하기 위하여, 상기 GPU로 전송된 상기 프로그램 명령어들의 상기 세트에 의해, 타겟 메모리 버퍼들을 할당하는 단계;
프로그램 명렁어들의 상기 세트에 의해, 복수의 상기 타겟 메모리 버퍼들에 기입하는 단계; 및
프로그램 명령어들의 다른 세트들에 의한 사용을 위해 상기 타겟 메모리 버퍼들을 지속시키는 단계를 포함하는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
각각의 타겟 메모리 버퍼의 해상도는 가변적으로 설정되고, 상기 복수의 타겟 메모리 버퍼로의 기입은 동시에 이루어지는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
상기 그래픽 프로그램은 실시간으로 버텍스(vertex)마다에 기반하여 연산하는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
상기 절차적 셰이더는 버텍스 셰이더 및 픽셀 셰이더 중 하나이고, 상기 GPU로 전송된 프로그램 명령어들의 상기 세트는 상기 복수의 표면 각각에 대한 텍스쳐의 다수의 요소들로 동시에 데이터를 출력하며, 프로그램 명령어들의 상기 세트는 단일 요소 텍스쳐로서 복수의 상기 다수의 요소들을 사용하는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
제1 타겟 메모리 버퍼 내의 데이터는 제2 타겟 메모리 버퍼 내의 데이터와는 상이한 픽셀 데이터를 나타내는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
상기 타겟 메모리 버퍼들은 비디오 메모리의 일부를 포함하는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
프로그램 명령어들의 상기 세트는 텍스쳐의 다수의 요소들로 동시에 데이터를 출력하는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
상기 타겟 메모리 버퍼들은, 프로그램 명령어들의 상기 세트에 의한 애플리케이션 프로그래밍 인터페이스(API)로의 호출을 통해 생성되는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
프로그램 명령어들의 상기 세트는 각각의 표면을 특정 스테이지로 설정하는, 타겟 메모리 버퍼들을 제공하는 방법. - 제11항에 있어서,
각각의 단일 표면에 대한 칼라 요소의 네 개의 컴포넌트 각각은 인터리브 방식으로 기입되는, 타겟 메모리 버퍼들을 제공하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/196,864 | 2002-07-16 | ||
US10/196,864 US7564460B2 (en) | 2001-07-16 | 2002-07-16 | Systems and methods for providing intermediate targets in a graphics system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030023429A Division KR100969448B1 (ko) | 2002-07-16 | 2003-04-14 | 그래픽스 시스템의 중간 타겟들을 제공하기 위한 시스템및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100029230A true KR20100029230A (ko) | 2010-03-16 |
KR100995157B1 KR100995157B1 (ko) | 2010-11-17 |
Family
ID=22727078
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030023429A KR100969448B1 (ko) | 2002-07-16 | 2003-04-14 | 그래픽스 시스템의 중간 타겟들을 제공하기 위한 시스템및 방법 |
KR1020100017849A KR100995157B1 (ko) | 2002-07-16 | 2010-02-26 | 그래픽 서브시스템의 컴포넌트, 컴퓨터 판독가능 기록매체, 및 타겟 메모리 버퍼들을 제공하는 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030023429A KR100969448B1 (ko) | 2002-07-16 | 2003-04-14 | 그래픽스 시스템의 중간 타겟들을 제공하기 위한 시스템및 방법 |
Country Status (15)
Country | Link |
---|---|
US (3) | US7564460B2 (ko) |
EP (2) | EP1383080B1 (ko) |
JP (2) | JP4583720B2 (ko) |
KR (2) | KR100969448B1 (ko) |
CN (1) | CN100507832C (ko) |
AU (1) | AU2003203499B2 (ko) |
BR (1) | BRPI0301122B1 (ko) |
CA (2) | CA2772030C (ko) |
MX (1) | MXPA03004601A (ko) |
MY (1) | MY142776A (ko) |
NO (2) | NO328438B1 (ko) |
PL (1) | PL360754A1 (ko) |
RU (1) | RU2337402C2 (ko) |
TW (2) | TWI340927B (ko) |
ZA (1) | ZA200302809B (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021173911A1 (en) * | 2020-02-28 | 2021-09-02 | Advanced Micro Devices, Inc. | Fully utilized hardware in a multi-tenancy graphics processing unit |
Families Citing this family (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6828975B2 (en) | 2001-03-01 | 2004-12-07 | Microsoft Corporation | Method and system for managing graphics objects in a graphics display system |
US7564460B2 (en) | 2001-07-16 | 2009-07-21 | Microsoft Corporation | Systems and methods for providing intermediate targets in a graphics system |
US6825843B2 (en) * | 2002-07-18 | 2004-11-30 | Nvidia Corporation | Method and apparatus for loop and branch instructions in a programmable graphics pipeline |
US6809732B2 (en) * | 2002-07-18 | 2004-10-26 | Nvidia Corporation | Method and apparatus for generation of programmable shader configuration information from state-based control information and program instructions |
US6975321B1 (en) * | 2003-05-05 | 2005-12-13 | Nvidia Corporation | System and method for generating multiple outputs in a single shader processing pass in a hardware graphics pipeline |
US7681112B1 (en) | 2003-05-30 | 2010-03-16 | Adobe Systems Incorporated | Embedded reuse meta information |
US8274517B2 (en) * | 2003-11-14 | 2012-09-25 | Microsoft Corporation | Systems and methods for downloading algorithmic elements to a coprocessor and corresponding techniques |
US7248265B2 (en) | 2004-04-16 | 2007-07-24 | Apple Inc. | System and method for processing graphics operations with graphics processing unit |
US7231632B2 (en) | 2004-04-16 | 2007-06-12 | Apple Computer, Inc. | System for reducing the number of programs necessary to render an image |
US8134561B2 (en) | 2004-04-16 | 2012-03-13 | Apple Inc. | System for optimizing graphics operations |
US8704837B2 (en) * | 2004-04-16 | 2014-04-22 | Apple Inc. | High-level program interface for graphics operations |
US7636489B2 (en) | 2004-04-16 | 2009-12-22 | Apple Inc. | Blur computation algorithm |
US7847800B2 (en) | 2004-04-16 | 2010-12-07 | Apple Inc. | System for emulating graphics operations |
US7978205B1 (en) | 2004-05-03 | 2011-07-12 | Microsoft Corporation | Systems and methods for providing an enhanced graphics pipeline |
US7570267B2 (en) * | 2004-05-03 | 2009-08-04 | Microsoft Corporation | Systems and methods for providing an enhanced graphics pipeline |
US8427490B1 (en) | 2004-05-14 | 2013-04-23 | Nvidia Corporation | Validating a graphics pipeline using pre-determined schedules |
US8130237B2 (en) | 2004-06-24 | 2012-03-06 | Apple Inc. | Resolution independent user interface design |
US7397964B2 (en) | 2004-06-24 | 2008-07-08 | Apple Inc. | Gaussian blur approximation suitable for GPU |
US8068103B2 (en) | 2004-06-24 | 2011-11-29 | Apple Inc. | User-interface design |
US7490295B2 (en) | 2004-06-25 | 2009-02-10 | Apple Inc. | Layer for accessing user interface elements |
US7652678B2 (en) | 2004-06-25 | 2010-01-26 | Apple Inc. | Partial display updates in a windowing system using a programmable graphics processing unit |
US7761800B2 (en) | 2004-06-25 | 2010-07-20 | Apple Inc. | Unified interest layer for user interface |
US8239749B2 (en) | 2004-06-25 | 2012-08-07 | Apple Inc. | Procedurally expressing graphic objects for web pages |
US8302020B2 (en) | 2004-06-25 | 2012-10-30 | Apple Inc. | Widget authoring and editing environment |
US8566732B2 (en) | 2004-06-25 | 2013-10-22 | Apple Inc. | Synchronization of widgets and dashboards |
US8453065B2 (en) | 2004-06-25 | 2013-05-28 | Apple Inc. | Preview and installation of user interface elements in a display environment |
US7730026B2 (en) | 2004-07-01 | 2010-06-01 | Apple Inc. | Method and system using reusable state information for synchronization and maintenance of data |
US8044951B1 (en) | 2004-07-02 | 2011-10-25 | Nvidia Corporation | Integer-based functionality in a graphics shading language |
US7958498B1 (en) | 2004-07-02 | 2011-06-07 | Nvidia Corporation | Methods and systems for processing a geometry shader program developed in a high-level shading language |
US7746347B1 (en) * | 2004-07-02 | 2010-06-29 | Nvidia Corporation | Methods and systems for processing a geometry shader program developed in a high-level shading language |
US8624906B2 (en) * | 2004-09-29 | 2014-01-07 | Nvidia Corporation | Method and system for non stalling pipeline instruction fetching from memory |
DE102004051567A1 (de) * | 2004-10-22 | 2006-05-04 | Siemens Ag | Verfahren zur schnellen Bildverarbeitung zweidimensionaler Bilder |
US8736623B1 (en) | 2004-11-15 | 2014-05-27 | Nvidia Corporation | Programmable DMA engine for implementing memory transfers and video processing for a video processor |
US7227551B2 (en) | 2004-12-23 | 2007-06-05 | Apple Inc. | Manipulating text and graphic appearance |
US8140975B2 (en) | 2005-01-07 | 2012-03-20 | Apple Inc. | Slide show navigation |
US8004515B1 (en) * | 2005-03-15 | 2011-08-23 | Nvidia Corporation | Stereoscopic vertex shader override |
US7852353B1 (en) | 2005-03-31 | 2010-12-14 | Apple Inc. | Encoding a transparency (alpha) channel in a video bitstream |
GB2425030A (en) * | 2005-04-09 | 2006-10-11 | Tenomichi Ltd | Managed network render targets for routing graphical information |
US8452090B1 (en) | 2005-04-25 | 2013-05-28 | Apple Inc. | Bayer reconstruction of images using a GPU |
US7289127B1 (en) | 2005-04-25 | 2007-10-30 | Apple, Inc. | Multi-conic gradient generation |
US8543931B2 (en) | 2005-06-07 | 2013-09-24 | Apple Inc. | Preview including theme based installation of user interface elements in a display environment |
US8495015B2 (en) | 2005-06-21 | 2013-07-23 | Apple Inc. | Peer-to-peer syncing in a decentralized environment |
US7523146B2 (en) | 2005-06-21 | 2009-04-21 | Apple Inc. | Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment |
DE102005031642B4 (de) * | 2005-07-06 | 2008-05-29 | Siemens Ag | Mobiler Defibrillator |
US8793576B2 (en) | 2005-10-14 | 2014-07-29 | Apple Inc. | System and method for computing a desktop picture |
US9092170B1 (en) | 2005-10-18 | 2015-07-28 | Nvidia Corporation | Method and system for implementing fragment operation processing across a graphics bus interconnect |
US7793169B2 (en) * | 2005-10-19 | 2010-09-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Intelligent table-driven interleaving |
US9104294B2 (en) | 2005-10-27 | 2015-08-11 | Apple Inc. | Linked widgets |
US7954064B2 (en) | 2005-10-27 | 2011-05-31 | Apple Inc. | Multiple dashboards |
US7752556B2 (en) | 2005-10-27 | 2010-07-06 | Apple Inc. | Workflow widgets |
US7743336B2 (en) | 2005-10-27 | 2010-06-22 | Apple Inc. | Widget security |
US8543824B2 (en) | 2005-10-27 | 2013-09-24 | Apple Inc. | Safe distribution and use of content |
US7483037B2 (en) | 2005-10-27 | 2009-01-27 | Apple, Inc. | Resampling chroma video using a programmable graphics processing unit to provide improved color rendering |
US7707514B2 (en) | 2005-11-18 | 2010-04-27 | Apple Inc. | Management of user interface elements in a display environment |
KR100696198B1 (ko) * | 2005-12-23 | 2007-03-20 | 엠텍비젼 주식회사 | 프로그래밍 가능한 쉐이더 기반의 그래픽 연산을 지원하는임베디드 시스템 |
CN100395778C (zh) * | 2006-03-15 | 2008-06-18 | 威盛电子股份有限公司 | 绘图系统以及绘图控制方法 |
US20070268298A1 (en) * | 2006-05-22 | 2007-11-22 | Alben Jonah M | Delayed frame buffer merging with compression |
TWI498850B (zh) * | 2006-05-22 | 2015-09-01 | Nvidia Corp | 訊框緩衝區歸併的方法、電腦可讀取記憶體、與電腦系統 |
US8154554B1 (en) | 2006-07-28 | 2012-04-10 | Nvidia Corporation | Unified assembly instruction set for graphics processing |
US8869027B2 (en) | 2006-08-04 | 2014-10-21 | Apple Inc. | Management and generation of dashboards |
US7860826B2 (en) | 2006-08-04 | 2010-12-28 | Apple Inc. | Method and system for using global equivalency sets to identify data during peer-to-peer synchronization |
US8232991B1 (en) | 2006-11-03 | 2012-07-31 | Nvidia Corporation | Z-test result reconciliation with multiple partitions |
US7760767B2 (en) | 2007-01-05 | 2010-07-20 | Apple Inc. | Wide area peer-to-peer synching in a decentralized environment |
US7657769B2 (en) | 2007-01-08 | 2010-02-02 | Marcy M Scott | N-way synchronization of data |
KR101349171B1 (ko) * | 2007-01-17 | 2014-01-09 | 삼성전자주식회사 | 3차원 그래픽 가속기 및 그것의 픽셀 분배 방법 |
US8954871B2 (en) | 2007-07-18 | 2015-02-10 | Apple Inc. | User-centric widgets and dashboards |
US8683126B2 (en) | 2007-07-30 | 2014-03-25 | Nvidia Corporation | Optimal use of buffer space by a storage controller which writes retrieved data directly to a memory |
US8667415B2 (en) | 2007-08-06 | 2014-03-04 | Apple Inc. | Web widgets |
US8698819B1 (en) | 2007-08-15 | 2014-04-15 | Nvidia Corporation | Software assisted shader merging |
US8411096B1 (en) | 2007-08-15 | 2013-04-02 | Nvidia Corporation | Shader program instruction fetch |
US9024957B1 (en) | 2007-08-15 | 2015-05-05 | Nvidia Corporation | Address independent shader program loading |
US8659601B1 (en) * | 2007-08-15 | 2014-02-25 | Nvidia Corporation | Program sequencer for generating indeterminant length shader programs for a graphics processor |
US8156467B2 (en) | 2007-08-27 | 2012-04-10 | Adobe Systems Incorporated | Reusing components in a running application |
US8176466B2 (en) | 2007-10-01 | 2012-05-08 | Adobe Systems Incorporated | System and method for generating an application fragment |
US9064333B2 (en) | 2007-12-17 | 2015-06-23 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US8780123B2 (en) | 2007-12-17 | 2014-07-15 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
US9619304B2 (en) | 2008-02-05 | 2017-04-11 | Adobe Systems Incorporated | Automatic connections between application components |
US8681861B2 (en) | 2008-05-01 | 2014-03-25 | Nvidia Corporation | Multistandard hardware video encoder |
US8923385B2 (en) | 2008-05-01 | 2014-12-30 | Nvidia Corporation | Rewind-enabled hardware encoder |
US8581912B2 (en) | 2008-06-27 | 2013-11-12 | Microsoft Corporation | Dynamic subroutine linkage optimizing shader performance |
US8656293B1 (en) | 2008-07-29 | 2014-02-18 | Adobe Systems Incorporated | Configuring mobile devices |
US8489851B2 (en) | 2008-12-11 | 2013-07-16 | Nvidia Corporation | Processing of read requests in a memory controller using pre-fetch mechanism |
US8289341B2 (en) * | 2009-06-29 | 2012-10-16 | Intel Corporation | Texture sampling |
US8922555B2 (en) * | 2009-10-07 | 2014-12-30 | Nvidia Corporation | Pixel shader output map |
US9530189B2 (en) | 2009-12-31 | 2016-12-27 | Nvidia Corporation | Alternate reduction ratios and threshold mechanisms for framebuffer compression |
US8340416B2 (en) * | 2010-06-25 | 2012-12-25 | Microsoft Corporation | Techniques for robust color transfer |
KR101926570B1 (ko) | 2011-09-14 | 2018-12-10 | 삼성전자주식회사 | 포스트 프레그먼트 쉐이더를 사용하는 그래픽 처리 방법 및 장치 |
US9591309B2 (en) | 2012-12-31 | 2017-03-07 | Nvidia Corporation | Progressive lossy memory compression |
US9607407B2 (en) | 2012-12-31 | 2017-03-28 | Nvidia Corporation | Variable-width differential memory compression |
US10043234B2 (en) | 2012-12-31 | 2018-08-07 | Nvidia Corporation | System and method for frame buffer decompression and/or compression |
TWI517137B (zh) | 2013-06-05 | 2016-01-11 | 晨星半導體股份有限公司 | 將影像寫入記憶體的方法及其裝置 |
CN104252414B (zh) * | 2013-06-25 | 2018-03-27 | 晨星半导体股份有限公司 | 将影像写入存储器的方法及其装置 |
WO2015009294A2 (en) * | 2013-07-17 | 2015-01-22 | Spinella Ip Holdings, Inc. | System and method for histogram computation using a graphics processing unit |
US9832388B2 (en) | 2014-08-04 | 2017-11-28 | Nvidia Corporation | Deinterleaving interleaved high dynamic range image by using YUV interpolation |
EP3012737A1 (en) * | 2014-10-24 | 2016-04-27 | Thomson Licensing | Devices and methods for generating elementary geometries |
DE112014002477T5 (de) * | 2014-11-21 | 2016-09-29 | Intel Corporation | Vorrichtung und Verfahren für eine effiziente Grafikverarbeitung in einer virtuellen Ausführungsumgebung |
CN105719229B (zh) * | 2014-12-19 | 2020-03-03 | 谷歌有限责任公司 | 一种基于指令流截取的应用程序透明化的分辨率控制 |
US10108321B2 (en) * | 2015-08-31 | 2018-10-23 | Microsoft Technology Licensing, Llc | Interface for defining user directed partial graph execution |
CN105678679B (zh) * | 2015-12-31 | 2019-02-12 | 公安部第三研究所 | 大规模图片集合快速预览的系统及方法 |
JP2019204348A (ja) | 2018-05-24 | 2019-11-28 | キヤノン株式会社 | 情報処理装置及びその制御方法、並びにプログラム |
KR20200145665A (ko) * | 2019-06-19 | 2020-12-30 | 삼성전자주식회사 | 최적화된 픽셀 셰이더 속성 관리 |
CN114115873A (zh) * | 2021-11-18 | 2022-03-01 | 网易(杭州)网络有限公司 | 着色器数据处理方法、装置、设备及存储介质 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5392391A (en) * | 1991-10-18 | 1995-02-21 | Lsi Logic Corporation | High performance graphics applications controller |
TW219989B (en) | 1992-05-29 | 1994-02-01 | Ind Tech Res Inst | A screen refreshing method which is independent of resolution |
US5388206A (en) * | 1992-11-13 | 1995-02-07 | The University Of North Carolina | Architecture and apparatus for image generation |
US5422657A (en) | 1993-09-13 | 1995-06-06 | Industrial Technology Research Institute | Graphics memory architecture for multimode display system |
TW299406B (en) | 1993-10-29 | 1997-03-01 | Ind Tech Res Inst | Display memory structure of multi-mode display system |
US6067098A (en) * | 1994-11-16 | 2000-05-23 | Interactive Silicon, Inc. | Video/graphics controller which performs pointer-based display list video refresh operation |
WO1996031844A1 (fr) * | 1995-04-05 | 1996-10-10 | Hitachi, Ltd. | Systeme graphique |
US5793374A (en) * | 1995-07-28 | 1998-08-11 | Microsoft Corporation | Specialized shaders for shading objects in computer generated images |
US5793371A (en) | 1995-08-04 | 1998-08-11 | Sun Microsystems, Inc. | Method and apparatus for geometric compression of three-dimensional graphics data |
US6496190B1 (en) * | 1997-07-02 | 2002-12-17 | Mental Images Gmbh & Co Kg. | System and method for generating and using systems of cooperating and encapsulated shaders and shader DAGs for use in a computer graphics system |
US5969728A (en) * | 1997-07-14 | 1999-10-19 | Cirrus Logic, Inc. | System and method of synchronizing multiple buffers for display |
US6353460B1 (en) * | 1997-09-30 | 2002-03-05 | Matsushita Electric Industrial Co., Ltd. | Television receiver, video signal processing device, image processing device and image processing method |
US6208273B1 (en) * | 1999-01-29 | 2001-03-27 | Interactive Silicon, Inc. | System and method for performing scalable embedded parallel data compression |
US6421053B1 (en) * | 1999-05-24 | 2002-07-16 | International Business Machines Corporation | Block rendering method for a graphics subsystem |
TW444183B (en) | 1999-06-28 | 2001-07-01 | Integrated Technology Express | Device and method for image rotation |
JP3350655B2 (ja) | 2000-01-25 | 2002-11-25 | 株式会社ナムコ | ゲームシステム及び情報記憶媒体 |
US6819325B2 (en) * | 2000-03-07 | 2004-11-16 | Microsoft Corporation | API communications for vertex and pixel shaders |
US7159041B2 (en) * | 2000-03-07 | 2007-01-02 | Microsoft Corporation | Method and system for defining and controlling algorithmic elements in a graphics display system |
US6862730B1 (en) * | 2000-04-26 | 2005-03-01 | Lucent Technologies Inc. | Register allocation in code translation between processors |
US7034828B1 (en) | 2000-08-23 | 2006-04-25 | Nintendo Co., Ltd. | Recirculating shade tree blender for a graphics system |
US7564460B2 (en) | 2001-07-16 | 2009-07-21 | Microsoft Corporation | Systems and methods for providing intermediate targets in a graphics system |
-
2002
- 2002-07-16 US US10/196,864 patent/US7564460B2/en not_active Expired - Fee Related
-
2003
- 2003-04-07 EP EP03007908.1A patent/EP1383080B1/en not_active Expired - Lifetime
- 2003-04-07 NO NO20031556A patent/NO328438B1/no not_active IP Right Cessation
- 2003-04-07 CA CA2772030A patent/CA2772030C/en not_active Expired - Fee Related
- 2003-04-07 CA CA2424650A patent/CA2424650C/en not_active Expired - Fee Related
- 2003-04-07 EP EP16202270.1A patent/EP3156965A1/en not_active Withdrawn
- 2003-04-07 AU AU2003203499A patent/AU2003203499B2/en not_active Ceased
- 2003-04-09 BR BRPI0301122A patent/BRPI0301122B1/pt not_active IP Right Cessation
- 2003-04-10 MY MYPI20031322A patent/MY142776A/en unknown
- 2003-04-10 CN CNB031217990A patent/CN100507832C/zh not_active Expired - Fee Related
- 2003-04-10 ZA ZA200302809A patent/ZA200302809B/xx unknown
- 2003-04-11 JP JP2003108482A patent/JP4583720B2/ja not_active Expired - Fee Related
- 2003-04-11 RU RU2003110511/09A patent/RU2337402C2/ru not_active IP Right Cessation
- 2003-04-14 KR KR1020030023429A patent/KR100969448B1/ko active IP Right Grant
- 2003-04-15 TW TW092108739A patent/TWI340927B/zh not_active IP Right Cessation
- 2003-04-15 TW TW099132084A patent/TWI361395B/zh not_active IP Right Cessation
- 2003-05-23 MX MXPA03004601A patent/MXPA03004601A/es active IP Right Grant
- 2003-06-17 PL PL03360754A patent/PL360754A1/xx unknown
-
2009
- 2009-06-22 US US12/489,316 patent/US8063909B2/en not_active Expired - Fee Related
- 2009-08-26 JP JP2009195887A patent/JP4922367B2/ja not_active Expired - Fee Related
-
2010
- 2010-02-04 NO NO20100178A patent/NO331263B1/no not_active IP Right Cessation
- 2010-02-26 KR KR1020100017849A patent/KR100995157B1/ko active IP Right Grant
-
2011
- 2011-10-31 US US13/286,054 patent/US8379035B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021173911A1 (en) * | 2020-02-28 | 2021-09-02 | Advanced Micro Devices, Inc. | Fully utilized hardware in a multi-tenancy graphics processing unit |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100995157B1 (ko) | 그래픽 서브시스템의 컴포넌트, 컴퓨터 판독가능 기록매체, 및 타겟 메모리 버퍼들을 제공하는 방법 | |
US7671862B1 (en) | Systems and methods for providing an enhanced graphics pipeline | |
US7570267B2 (en) | Systems and methods for providing an enhanced graphics pipeline | |
EP2033085B1 (en) | Fast reconfiguration of graphics pipeline state | |
RU2324978C2 (ru) | Системы и способы для обеспечения управляемой дискретизации текстуры | |
US20040169671A1 (en) | Effects framework pipeline integration with programmable shader |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20131016 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20141017 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20151016 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20161019 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20171018 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20181018 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20191016 Year of fee payment: 10 |