发明名称 Exiting multiple threads of a simulation environment in a computer
摘要 Embodiments relate to exiting a multithreaded guest virtual machine (VM) that is running in a simulation environment. An aspect includes executing the simulation by a guest entity comprising a plurality of logical threads, wherein each of the plurality of logical threads comprises a respective instruction stream. Another aspect includes detecting an exit event corresponding to completion, by a first thread of the plurality of logical threads, of the instruction stream corresponding to the first thread. Another aspect includes, based on determining that the simulation is executing in a redrive mode: based on determining that the TVM of the guest entity indicates that multiple threads of the plurality of logical threads are valid, nullifying a start interpretive execution (SIE) instruction of a host; setting a bit corresponding to the first thread in the TVM to invalid; executing the nullified SIE instruction; and relaunching the guest entity in the redrive mode.
申请公布号 US9389897(B1) 申请公布日期 2016.07.12
申请号 US201414575100 申请日期 2014.12.18
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION 发明人 Busaba Fadi Y.;Farrell Mark S.;Heller Lisa C.;Mullen Michael P.
分类号 G06F9/455 主分类号 G06F9/455
代理机构 Cantor Colburn LLP 代理人 Cantor Colburn LLP ;McNamara Margaret
主权项 1. A computer system for exiting a multithreaded guest virtual machine (VM) that is running in a simulation environment, the computer system comprising: a configuration comprising a machine enabled to operate in a single thread (ST) mode and a multithreading (MT) mode, the machine including physical threads; and the machine configured to perform a method comprising: executing the simulation by a guest entity on the core in MT mode, the guest entity comprising all or a portion of a guest VM, and the guest entity comprising a plurality of logical threads executing on the physical threads, wherein each of the plurality of logical threads comprises a respective instruction stream; detecting, at the machine, an exit event corresponding to completion, by a first thread of the plurality of logical threads, of the instruction stream corresponding to the first thread; and based on the detecting, determining whether the simulation is executing in a redrive mode or a wait mode, and, based on determining that the simulation is executing in the redrive mode: determining whether a thread validity marker (TVM) of the guest entity indicates that multiple threads of the plurality of logical threads are valid;based on determining that the TVM of the guest entity indicates that multiple threads of the plurality of logical threads are valid, nullifying a start interpretive execution (SIE) instruction of a host;setting a bit corresponding to the first thread in the TVM to invalid;initiating execution of the host, wherein initiating execution of the host comprises executing the nullified SIE instruction; and,based on executing the nullified SIE instruction, relaunching the guest entity in the redrive mode.
地址 Armonk NY US