Virtualization of a central processing unit measurement facility

US9449314B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9449314-B2
Application numberUS-24449608-A
CountryUS
Kind codeB2
Filing dateOct 2, 2008
Priority dateOct 2, 2008
Publication dateSep 20, 2016
Grant dateSep 20, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A central processing unit measurement facility is virtualized in order to support concurrent use of the facility by multiple guests executing within a virtual environment. Each guest of the environment has independent control over disablement/enablement of the facility for that guest.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer program product to facilitate collection of sampling data of a guest virtual machine having a guest operating system in a virtual processing environment, the guest virtual machine being a guest of a host application running on a processing circuit, the host application configured to time share resources with a plurality of guest virtual machines, the computer program product comprising: a non-transitory storage medium readable by the processing circuit and storing instructions that when executed by the processing circuit, cause the processing circuit to perform a method comprising: receiving, from the guest operating system of the guest virtual machine, a set sampling controls instruction of a sampling facility; based on the set sampling controls instruction, activating a sampling function for the guest operating system, initiating a predetermined sampling interval and performing, by the processing circuit, sampling for the guest operating system using the sampling function; determining that the guest virtual machine has been suspended from processing; recording remaining time before a next sample is taken by updating, based on the suspension, a residual sampling interval indicator for the guest virtual machine; determining that the guest virtual machine has resumed processing; based on resumption of processing of the guest virtual machine, performing an authorization check and determining, based on the authorization check, that the guest virtual machine that has been resumed is still authorized to utilize the sampling function; and based on being authorized, resuming sampling for the guest operating system using the sampling function for at least one time interval based on the updated residual sampling interval indicator. 2. The computer program product of claim 1 , wherein the performing an authorization check comprises checking an authorization indicator, and wherein the method further comprises providing notification to the guest virtual machine based on the authorization indicator indicating the guest virtual machine is not authorized. 3. The computer program product of claim 1 , wherein the method further comprises based on issuing by the guest operating system a set counter set controls instruction to activate a counter function, accumulating activity counts of one or more specific events that occur within hardware associated with the guest virtual machine. 4. The computer program product of claim 3 , wherein the method further comprises, based on the suspension, saving one or more controls associated with at least one of the sampling and the accumulating. 5. The computer program product of claim 3 , wherein the method further comprises: based on resumption of processing of the guest virtual machine, performing an authorization check to determine whether the guest virtual machine that has been resumed is still authorized for accumulating activity counts; and based on being authorized, resuming accumulating activity counts. 6. The computer program product of claim 1 , wherein the method further comprises providing information regarding the sampling facility, based on issuing by the guest operating system a query sampling information instruction, and utilizing the information to define at least one of the sampling interval or a size of a buffer to store data obtained during the sampling. 7. The computer program product of claim 6 , wherein the data stored in the buffer comprises a plurality of sets of sample data, and wherein the method further comprises: obtaining by the guest virtual machine an interruption based on an indication that data is to be removed from the buffer; and based on the interruption, reading at least a portion of the plurality of sets of sample data from the buffer and writing the at least a portion of the plurality of sets of data to a storage medium. 8. The computer program product of claim 1 , wherein the method further comprises based on the guest virtual machine dispatching a task, executing a set program parameter instruction, the executing comprising tagging the task with an identifier identifying the task, and providing the identifier with data obtained from the sampling. 9. The computer program product of claim 1 , wherein the sampling comprises providing a snapshot of a logical processor associated with the guest operating system, the snapshot comprises one or more instruction addresses of one or more instructions being executed. 10. The computer program product of claim 9 , wherein the sampling comprises one of: providing a set of architected sample data for the logical processor, or providing a set of non-architected sample data for the logical processor. 11. A computer system to facilitate collection of sampling data of a guest virtual machine having a guest operating system in a virtual processing environment, the guest virtual machine being a guest of a host application running on the computer system, the host application configured to time share resources with a plurality of guest virtual machines, the computer system comprising: a memory; and a processor in communications with the memory, wherein the memory stores instructions that when executed by the processor, cause the processor to perform a method comprising: receiving, from the guest operating system of the guest virtual machine, a set sampling controls instruction of a sampling facility; based on the set sampling controls instruction, activating a sampling function for the guest operating system, initiating a predetermined sampling interval and performing, by the processor, sampling for the guest operating system using the sampling function; determining that the guest virtual machine has been suspended from processing; recording remaining time before a next sample is taken by updating, based on the suspension, a residual sampling interval indicator for the guest virtual machine; determining that the guest virtual machine has resumed processing; based on resumption of processing of the guest virtual machine, performing an authorization check and determining, based on the authorization check, that the guest virtual machine that has been resumed is still authorized to utilize the sampling function; and based on being authorized, resuming sampling for the guest operating system using the sampling function for at least one time interval based on the updated residual sampling interval indicator. 12. The computer system of claim 11 , wherein the method further comprises based on issuing by the guest operating system a set counter set controls instruction to activate a counter function, accumulating activity counts of one or more specific events that occur within hardware associated with the guest virtual machine. 13. The computer system of claim 12 , wherein the method further comprises: based on resumption of processing of the guest virtual machine, performing an authorization check to determine whether the guest virtual machine that has been resumed is still authorized for accumulating activity counts; and based on being authorized, resuming accumulating activity counts. 14. The computer system of claim 11 , wherein the method further comprises providing information regarding the sampling facility, based on issuing by the guest operating system a query sampling information instruction, and utilizing the information to define at least one of the sampling interval or a size of a buffer to store data obtained during the sampling. 15. The computer system of claim 14 , wherein the data stored in the buffer comprises a plurality of sets of sample data, and wherein the meth

Assignees

Inventors

Classifications

  • Performance evaluation by tracing or monitoring · CPC title

  • with control of digital rights management [DRM] · CPC title

  • Virtual · CPC title

  • Monitoring involving counting · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9449314B2 cover?
A central processing unit measurement facility is virtualized in order to support concurrent use of the facility by multiple guests executing within a virtual environment. Each guest of the environment has independent control over disablement/enablement of the facility for that guest.
Who is the assignee on this patent?
Heller Lisa Cranton, West Jr Patrick M, Yeh Phil C, and 1 more
What technology area does this patent fall under?
Primary CPC classification G06F11/3466. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 20 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).