KR102682383B1 - 그래픽 컨텍스트 바운싱 - Google Patents

그래픽 컨텍스트 바운싱 Download PDF

Info

Publication number
KR102682383B1
KR102682383B1 KR1020217042931A KR20217042931A KR102682383B1 KR 102682383 B1 KR102682383 B1 KR 102682383B1 KR 1020217042931 A KR1020217042931 A KR 1020217042931A KR 20217042931 A KR20217042931 A KR 20217042931A KR 102682383 B1 KR102682383 B1 KR 102682383B1
Authority
KR
South Korea
Prior art keywords
state
context
processor
identifier
encapsulated
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.)
Active
Application number
KR1020217042931A
Other languages
English (en)
Korean (ko)
Other versions
KR20220003141A (ko
Inventor
렉스 엘돈 맥크레리
위 루오
해리 제이. 와이즈
알렉산더 푸아드 아쉬카르
미카엘 맨터
Original Assignee
어드밴스드 마이크로 디바이시즈, 인코포레이티드
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 어드밴스드 마이크로 디바이시즈, 인코포레이티드 filed Critical 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Publication of KR20220003141A publication Critical patent/KR20220003141A/ko
Application granted granted Critical
Publication of KR102682383B1 publication Critical patent/KR102682383B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • G06F12/1018Address translation using page tables, e.g. page table structures involving hashing techniques, e.g. inverted page tables
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Image Generation (AREA)
  • Advance Control (AREA)
  • Devices For Executing Special Programs (AREA)
KR1020217042931A 2019-05-30 2020-05-29 그래픽 컨텍스트 바운싱 Active KR102682383B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/426,613 2019-05-30
US16/426,613 US11169811B2 (en) 2019-05-30 2019-05-30 Graphics context bouncing
PCT/US2020/035203 WO2020243482A1 (en) 2019-05-30 2020-05-29 Graphics context bouncing

Publications (2)

Publication Number Publication Date
KR20220003141A KR20220003141A (ko) 2022-01-07
KR102682383B1 true KR102682383B1 (ko) 2024-07-08

Family

ID=73550703

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217042931A Active KR102682383B1 (ko) 2019-05-30 2020-05-29 그래픽 컨텍스트 바운싱

Country Status (6)

Country Link
US (1) US11169811B2 (https=)
EP (1) EP3977270A4 (https=)
JP (1) JP7402897B2 (https=)
KR (1) KR102682383B1 (https=)
CN (1) CN113939843A (https=)
WO (1) WO2020243482A1 (https=)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11694384B2 (en) * 2020-10-30 2023-07-04 Qualcomm Incorporated Fast incremental shared constants
US12137081B2 (en) * 2021-09-09 2024-11-05 Texas Instruments Incorporated Resource access in a microcontroller
US12406321B2 (en) * 2023-02-27 2025-09-02 Qualcomm Incorporated Elimination cache
US20240378790A1 (en) * 2023-05-09 2024-11-14 Advanced Micro Devices, Inc. Pipelined graphics state management
WO2025058851A1 (en) * 2023-09-13 2025-03-20 Qualcomm Incorporated Context merge with global event and dead draw merge
US20250299286A1 (en) * 2024-03-22 2025-09-25 Arm Limited Graphics processing systems

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050195186A1 (en) * 2004-03-02 2005-09-08 Ati Technologies Inc. Method and apparatus for object based visibility culling
JP5631535B2 (ja) * 2005-02-08 2014-11-26 オブロング・インダストリーズ・インコーポレーテッド ジェスチャベースの制御システムのためのシステムおよび方法
US7545381B2 (en) * 2005-11-10 2009-06-09 Via Technologies, Inc. Interruptible GPU and method for context saving and restoring
US7634637B1 (en) * 2005-12-16 2009-12-15 Nvidia Corporation Execution of parallel groups of threads with per-instruction serialization
US8370383B2 (en) 2006-02-08 2013-02-05 Oblong Industries, Inc. Multi-process interactive systems and methods
US7979683B1 (en) 2007-04-05 2011-07-12 Nvidia Corporation Multiple simultaneous context architecture
US8593465B2 (en) * 2007-06-13 2013-11-26 Advanced Micro Devices, Inc. Handling of extra contexts for shader constants
US8736624B1 (en) * 2007-08-15 2014-05-27 Nvidia Corporation Conditional execution flag in graphics applications
US8139070B1 (en) * 2007-10-03 2012-03-20 Matrox Graphics, Inc. Systems for and methods of context switching in a graphics processing system
US9003389B2 (en) * 2010-05-25 2015-04-07 Red Hat, Inc. Generating an encoded package profile based on executing host processes
US9086813B2 (en) * 2013-03-15 2015-07-21 Qualcomm Incorporated Method and apparatus to save and restore system memory management unit (MMU) contexts
US9563466B2 (en) 2013-11-05 2017-02-07 Intel Corporation Method and apparatus for supporting programmable software context state execution during hardware context restore flow
CN105469354A (zh) 2014-08-25 2016-04-06 超威半导体公司 图形处理方法、系统和设备
US10437637B1 (en) * 2015-05-26 2019-10-08 Thin CI, Inc. Configurable scheduler for graph processing on multi-processor computing systems
US11416282B2 (en) * 2015-05-26 2022-08-16 Blaize, Inc. Configurable scheduler in a graph streaming processing system
US10397362B1 (en) * 2015-06-24 2019-08-27 Amazon Technologies, Inc. Combined cache-overflow memory structure
GB2543866B (en) * 2016-03-07 2017-11-01 Imagination Tech Ltd Task assembly for SIMD processing
US20180191632A1 (en) * 2016-12-30 2018-07-05 Intel Corporation Flexible packet scheduling
US10572258B2 (en) 2017-04-01 2020-02-25 Intel Corporation Transitionary pre-emption for virtual reality related contexts
US12160369B2 (en) * 2019-02-15 2024-12-03 Intel Corporation Processor related communications
US10841225B2 (en) * 2019-03-06 2020-11-17 Arista Networks, Inc. Load balancing using dynamically resizable consistent hashing

Also Published As

Publication number Publication date
JP2022534438A (ja) 2022-07-29
CN113939843A (zh) 2022-01-14
WO2020243482A1 (en) 2020-12-03
EP3977270A1 (en) 2022-04-06
US11169811B2 (en) 2021-11-09
KR20220003141A (ko) 2022-01-07
US20200379767A1 (en) 2020-12-03
EP3977270A4 (en) 2023-06-28
JP7402897B2 (ja) 2023-12-21

Similar Documents

Publication Publication Date Title
KR102682383B1 (ko) 그래픽 컨텍스트 바운싱
US20250225608A1 (en) Modifying Processing of Commands in a Command Queue Based on Accessed Data Related to a Command
US8698828B2 (en) Graphics processing systems
JP7253507B2 (ja) 仮想化アクセラレーテッド処理デバイスの早期仮想化コンテキストスイッチ
US8736625B2 (en) Asynchronous notifications for concurrent graphics operations
US8525841B2 (en) Batching graphics operations with time stamp tracking
CN101261729B (zh) 在分布式图形处理单元内管理多重执行绪的系统与方法
US8085280B2 (en) Asymmetric two-pass graphics scaling
US8237723B2 (en) Deferred deletion and cleanup for graphics resources
US12105646B2 (en) Adaptive out of order arbitration for numerous virtual queues
US12608130B2 (en) Compacted memory transactions for local data shares
KR101574275B1 (ko) 그래픽 파이프라인을 위한 효율적인 상태 관리
US20240378790A1 (en) Pipelined graphics state management
US8593465B2 (en) Handling of extra contexts for shader constants
KR20200074707A (ko) 그래픽 프로세싱 유닛 상에서 작업을 프로세싱하기 위한 시스템 및 방법
CN108536644B (zh) 由装置端推核心入队列的装置
US20250110776A1 (en) Hardware queue priority mechanism
US20250308131A1 (en) Tile-based immediate mode renderer graphics pipeline
GB2475375A (en) Dynamic Graphics Rendering Process

Legal Events

Date Code Title Description
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PA0302 Request for accelerated examination

St.27 status event code: A-1-2-D10-D17-exm-PA0302

St.27 status event code: A-1-2-D10-D16-exm-PA0302

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000