patents.google.com

Lagar-Cavilla et al., 2007 - Google Patents

  • ️Mon Jan 01 2007
VMM-independent graphics acceleration

Lagar-Cavilla et al., 2007

View PDF
Document ID
12104415089072159163
Author
Tolia N
Satyanarayanan M
De Lara E
Publication year
2007
Publication venue
Proceedings of the 3rd international conference on Virtual execution environments

External Links

Snippet

We have designed and implemented VMGL, a virtual machine monitor (VMM) independent, graphics processing unit (GPU) independent, and cross-platform OpenGL virtualization solution. VMGL allows applications executing within virtual machines (VMs) to leverage …

Continue reading at www.tolia.org (PDF) (other versions)
  • 230000001133 acceleration 0 title abstract description 15

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/44Arrangements for executing specific programmes
    • G06F9/455Emulation; Software simulation, i.e. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/44Arrangements for executing specific programmes
    • G06F9/4443Execution mechanisms for user interfaces
    • G06F9/4445Remote windowing, e.g. X-Window System, desktop virtualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/44Arrangements for executing specific programmes
    • G06F9/455Emulation; Software simulation, i.e. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/44Arrangements for executing specific programmes
    • G06F9/4421Execution paradigms
    • G06F9/4428Object-oriented
    • G06F9/443Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Programme initiating; Programme switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for programme control, e.g. control unit
    • G06F9/06Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogramme communication; Intertask communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/15Use in a specific computing environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F1/00Details of data-processing equipment not covered by groups G06F3/00 - G06F13/00, e.g. cooling, packaging or power supply specially adapted for computer application
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRICAL DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics

Similar Documents

Publication Publication Date Title
Lagar-Cavilla et al. 2007 VMM-independent graphics acceleration
CN108776949B (en) 2024-05-03 Apparatus and method for memory management in a graphics processing environment
Dowty et al. 2009 GPU virtualization on VMware's hosted I/O architecture
US10074206B1 (en) 2018-09-11 Network-optimized graphics library for virtualized graphics processing
CA2528116C (en) 2015-03-17 Systems and methods for virtualizing graphics subsystems
US11227425B2 (en) 2022-01-18 Emulation of geometry shaders and stream output using compute shaders
US20170323418A1 (en) 2017-11-09 Virtualized gpu in a virtual machine environment
CN109690505B (en) 2023-08-08 Apparatus and method for hybrid layer address mapping for virtualized input/output implementations
US8872835B2 (en) 2014-10-28 Prevention of DoS attack by a rogue graphics application
US10891237B2 (en) 2021-01-12 Apparatus and method for mediate pass through and shared memory page merge
US20150178883A1 (en) 2015-06-25 Methods and systems for maintaining state in a virtual machine when disconnected from graphics hardware
US20120084774A1 (en) 2012-04-05 Techniques For Load Balancing GPU Enabled Virtual Machines
US11281500B2 (en) 2022-03-22 Apparatus and method for cloud-based graphics validation
WO2016101172A1 (en) 2016-06-30 Hybrid on-demand graphics translation table shadowing
TW201727576A (en) 2017-08-01 Apparatus and method for pattern-driven page table shadowing for graphics virtualization
US9542715B2 (en) 2017-01-10 Memory space mapping techniques for server based graphics processing
US20160132346A1 (en) 2016-05-12 Memory Space Mapping Techniques for Server Based Graphics Processing
Hansen 2007 Blink: Advanced display multiplexing for virtualized applications
US10818068B2 (en) 2020-10-27 Virtual hybrid texture mapping
CN110941408B (en) 2023-03-14 KVM virtual machine graphical interface output method and device
Smowton 2009 Secure 3D graphics for virtual machines
Park et al. 2017 Virtualizing graphics architecture of android mobile platforms in KVM/ARM environment
Al-Mekhlal et al. 2018 Collaborative Environment with Application Virtualization (CEAV) for Upstream environment
Smirnov et al. 2015 Cloud environments with GPU virtualization: problems and solutions
Hansen 2006 Blink: 3d display multiplexing for virtualized applications