Register partition and protection for virtualized processing device

    公开(公告)号:US10509666B2

    公开(公告)日:2019-12-17

    申请号:US15637810

    申请日:2017-06-29

    Abstract: A register protection mechanism for a virtualized accelerated processing device (“APD”) is disclosed. The mechanism protects registers of the accelerated processing device designated as physical-function-or-virtual-function registers (“PF-or-VF* registers”), which are single architectural instance registers that are shared among different functions that share the APD in a virtualization scheme whereby each function can maintain a different value in these registers. The protection mechanism for these registers comprises comparing the function associated with the memory address specified by a particular register access request to the “currently active” function for the APD and disallowing the register access request if a match does not occur.

    Early virtualization context switch for virtualized accelerated processing device

    公开(公告)号:US10474490B2

    公开(公告)日:2019-11-12

    申请号:US15637800

    申请日:2017-06-29

    Abstract: A technique for efficient time-division of resources in a virtualized accelerated processing device (“APD”) is provided. In a virtualization scheme implemented on the APD, different virtual machines are assigned different “time-slices” in which to use the APD. When a time-slice expires, the APD performs a virtualization context switch by stopping operations for a current virtual machine (“VM”) and starting operations for another VM. Typically, each VM is assigned a fixed length of time, after which a virtualization context switch is performed. This fixed length of time can lead to inefficiencies. Therefore, in some situations, in response to a VM having no more work to perform on the APD and the APD being idle, a virtualization context switch is performed “early.” This virtualization context switch is “early” in the sense that the virtualization context switch is performed before the fixed length of time for the time-slice expires.

    HANG DETECTION FOR VIRTUALIZED ACCELERATED PROCESSING DEVICE

    公开(公告)号:US20190018699A1

    公开(公告)日:2019-01-17

    申请号:US15663499

    申请日:2017-07-28

    Abstract: A technique for recovering from a hang in a virtualized accelerated processing device (“APD”) is provided. In the virtualization scheme, different virtual machines are assigned different “time-slices” in which to use the APD. When a time-slice expires, the APD stops operations for a current VM and starts operations for another VM. To stop operations on the APD, a virtualization scheduler sends a request to idle the APD. The APD responds by completing work and idling. If one or more portions of the APD do not complete this idling process before a timeout expires, then a hang occurs. In response to the hang, the virtualization scheduler informs the hypervisor that a hang has occurred. The hypervisor performs a function level reset on the APD and informs the VM that the hang has occurred. The VM responds by stopping command issue to the APD and re-initializing the APD for the function.

    SHARED VIRTUAL ADDRESS SPACE FOR HETEROGENEOUS PROCESSORS
    27.
    发明申请
    SHARED VIRTUAL ADDRESS SPACE FOR HETEROGENEOUS PROCESSORS 审中-公开
    用于异构处理器的共享虚拟地址空间

    公开(公告)号:US20160378674A1

    公开(公告)日:2016-12-29

    申请号:US14747944

    申请日:2015-06-23

    Abstract: A processor uses the same virtual address space for heterogeneous processing units of the processor. The processor employs different sets of page tables for different types of processing units, such as a CPU and a GPU, wherein a memory management unit uses each set of page tables to translate virtual addresses of the virtual address space to corresponding physical addresses of memory modules associated with the processor. As data is migrated between memory modules, the physical addresses in the page tables can be updated to reflect the physical location of the data for each processing unit.

    Abstract translation: 处理器对处理器的异构处理单元使用相同的虚拟地址空间。 处理器对不同类型的处理单元(例如CPU和GPU)采用不同的页表,其中存储器管理单元使用每组页表来将虚拟地址空间的虚拟地址转换为存储器模块的相应物理地址 与处理器相关联。 随着数据在内存模块之间迁移,可以更新页表中的物理地址,以反映每个处理单元的数据的物理位置。

    Virtualized Device Reset
    28.
    发明申请
    Virtualized Device Reset 有权
    虚拟化设备复位

    公开(公告)号:US20140380028A1

    公开(公告)日:2014-12-25

    申请号:US13923513

    申请日:2013-06-21

    Abstract: In a hardware-based virtualization system, a hypervisor switches out of a first function into a second function. The first function is one of a physical function and a virtual function and the second function is one of a physical function and a virtual function. During the switching a malfunction of the first function is detected. The first function is reset without resetting the second function. The switching, detecting, and resetting operations are performed by a hypervisor of the hardware-based virtualization system. Embodiments further include a communication mechanism for the hypervisor to notify a driver of the function that was reset to enable the driver to restore the function without delay.

    Abstract translation: 在基于硬件的虚拟化系统中,管理程序将第一个功能切换到第二个功能。 第一个功能是物理功能和虚拟功能之一,第二个功能是物理功能和虚拟功能之一。 在切换期间,检测到第一功能的故障。 第一个功能在不重置第二个功能的情况下被复位。 切换,检测和重置操作由基于硬件的虚拟化系统的管理程序执行。 实施例还包括用于管理程序的通信机制,以通知驾驶员已经重置的功能,以使得驾驶员能够无延迟地恢复功能。

    CACHE VIRTUALIZATION
    30.
    发明申请

    公开(公告)号:US20250110893A1

    公开(公告)日:2025-04-03

    申请号:US18478757

    申请日:2023-09-29

    Abstract: An apparatus and method for efficiently performing address translation requests. An integrated circuit includes a system memory that stores address mappings, and the circuitry of one or more clients processes one or more applications and generate address translation requests. A translation lookaside buffer (TLB) stores, in multiple entries, address mappings retrieved from the system memory. Circuitry of a client processes one or more applications and generates address translation requests. The entries of the TLB stores address mappings corresponding to different address mapping types and different virtual functions to avoid searches of multiple other lower-level TLBs that are significantly larger and have larger access. In addition, the TLB is implemented with a relatively small number of entries and uses fully associative data storage arrangement to further reduce access latencies.

Patent Agency Ranking