Patents by Inventor Carl Alan WALDSPURGER
Carl Alan WALDSPURGER has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 12147844Abstract: In some aspects, a non-transitory computer readable storage medium includes instructions stored thereon that, when executed by a processor, cause the processor to detect that system software is proceeding to swap memory content of a virtual machine (VM) from memory to storage, wherein the memory is allocated to the VM; buffer the memory content; and perform alternative memory reclamation of the memory.Type: GrantFiled: March 4, 2021Date of Patent: November 19, 2024Assignee: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Florian Anselm Johannes Schmidt, Jonathan James Davies
-
Patent number: 12107879Abstract: Methods, systems, apparatuses, and computer-readable storage mediums are described for assigning a security risk score to a resource. In one example, resource access data is collected for a resource. Based at least on the resource access data, a data risk index (DRI) score is generated for the resource. The DRI score comprises a value that is indicative of a level of risk that the resource will be compromised. At least one of the DRI score, an alert based at least on the DRI score, or a policy change for the resource based at least on the generated DRI score is reported to an administrator.Type: GrantFiled: January 28, 2022Date of Patent: October 1, 2024Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Carl Alan Waldspurger, Shaun Robert Applegate-Swanson, Venkata Adusumilli, Balaji Parimi, Naga Venkata Naveen Teja Jangalapalli, Nicholas James Barretta, Guruprasad Ramprakash, Parag Mahendrakumar Bajaria
-
Publication number: 20240143389Abstract: Methods, systems, and computer program products for high-performance multi-node computing. Upon receiving a request to move a computing process from a first computing node to a second computing node, an agent responds to the request by: copying contents of one or more pages of the computing process from the first computing node to the second computing node, identifying page recency metadata corresponding to the one or more pages of the computing process, and copying all or portions of the identified page recency metadata to the second computing node. When the CPU of the second computing node accesses pages of the moved computing process, the operating system of the second computing node observes page recency metadata that had been copied from the first node and stored at the second computing node. The computing process might comprise a virtual machine, a guest operating system, or an executable container.Type: ApplicationFiled: October 28, 2022Publication date: May 2, 2024Applicant: Nutanix, Inc.Inventors: Ivan TETEREVKOV, Carl Alan WALDSPURGER, Jonathan DAVIES
-
Patent number: 11899572Abstract: In some aspects, a non-transitory computer readable storage medium includes instructions stored thereon that, when executed by a processor, cause the processor to create a virtual swap space that is exposed to a core system software, intercept a first page selected by the core system software to be swapped out to the virtual swap space, map the virtual swap space to a physical swap space that is allocated to a type of page associated with first swap metadata, and write the first page to the physical swap space based on the first page having the first swap metadata. In some embodiments, the first page is associated with the first swap metadata.Type: GrantFiled: September 9, 2021Date of Patent: February 13, 2024Assignee: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Florian Anselm Johannes Schmidt, Jonathan James Davies, Ivan Teterevkov, Christopher Joel Riches
-
Patent number: 11816498Abstract: Various embodiments disclosed herein are related to a non-transitory computer readable storage medium. In some embodiments, the medium includes instructions stored thereon that, when executed by a processor, cause the processor to receive, from a user-space application, a request to detect swapping activity satisfying a threshold condition, detect the swapping activity satisfying the threshold condition, and, in response to occurrence of the threshold condition, send a response that indicates that the swapping activity satisfies the threshold condition.Type: GrantFiled: January 21, 2021Date of Patent: November 14, 2023Assignee: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Florian Anselm Johannes Schmidt, Jonathan James Davies
-
Publication number: 20230237169Abstract: In some aspects, an apparatus includes a processor and a memory. In some embodiments, the memory includes programmed instructions that, when executed by the processor, cause the apparatus to intercept an I/O transaction between a virtual machine and an I/O device, determine whether data in the I/O transaction indicates a security misconfiguration, and perform a remedial action in response to identifying the security misconfiguration.Type: ApplicationFiled: January 21, 2022Publication date: July 27, 2023Applicant: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Bijan Mottahedeh
-
Patent number: 11656982Abstract: Various embodiments disclosed herein are related to a non-transitory computer readable storage medium. In some embodiments, the medium includes instructions stored thereon that, when executed by a processor, cause the processor to send an indication of a first storage location to a destination host. In some embodiments, the first storage location includes content that is swapped out from a memory location in a source host. In some embodiments, the indication includes one or more of a logical address and a first physical address. In some embodiments, the medium includes instructions stored thereon that, when executed by a processor, cause the processor to map the logical address of the first storage location to a second physical address of a second storage location. In some embodiments, the destination host accesses the content of the first storage location.Type: GrantFiled: January 15, 2021Date of Patent: May 23, 2023Assignee: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Felipe Franciosi, Florian Anselm Johannes Schmidt
-
Publication number: 20230071475Abstract: In some aspects, a non-transitory computer readable storage medium includes instructions stored thereon that, when executed by a processor, cause the processor to create a virtual swap space that is exposed to a core system software, intercept a first page selected by the core system software to be swapped out to the virtual swap space, map the virtual swap space to a physical swap space that is allocated to a type of page associated with first swap metadata, and write the first page to the physical swap space based on the first page having the first swap metadata. In some embodiments, the first page is associated with the first swap metadata.Type: ApplicationFiled: September 9, 2021Publication date: March 9, 2023Applicant: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Florian Anselm Johannes Schmidt, Jonathan James Davies, Ivan Teterevkov, Christopher Joel Riches
-
Publication number: 20220283873Abstract: In some aspects, a non-transitory computer readable storage medium includes instructions stored thereon that, when executed by a processor, cause the processor to detect that system software is proceeding to swap memory content of a virtual machine (VM) from memory to storage, wherein the memory is allocated to the VM; buffer the memory content; and perform alternative memory reclamation of the memory.Type: ApplicationFiled: March 4, 2021Publication date: September 8, 2022Applicant: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Florian Anselm Johannes Schmidt, Jonathan James Davies
-
Publication number: 20220263851Abstract: Methods, systems, apparatuses, and computer-readable storage mediums are described for assigning a security risk score to a resource. In one example, resource access data is collected for a resource. Based at least on the resource access data, a data risk index (DRI) score is generated for the resource. The DRI score comprises a value that is indicative of a level of risk that the resource will be compromised. At least one of the DRI score, an alert based at least on the DRI score, or a policy change for the resource based at least on the generated DRI score is reported to an administrator.Type: ApplicationFiled: January 28, 2022Publication date: August 18, 2022Inventors: Carl Alan WALDSPURGER, Shaun Robert APPLEGATE-SWANSON, Venkata ADUSUMILLI, Balaji PARIMI, Naga Venkata Naveen Teja JANGALAPALLI, Nicholas James BARRETTA, Guruprasad RAMPRAKASH, Parag Mahendrakumar BAJARIA
-
Publication number: 20220229684Abstract: Various embodiments disclosed herein are related to a non-transitory computer readable storage medium. In some embodiments, the medium includes instructions stored thereon that, when executed by a processor, cause the processor to receive, from a user-space application, a request to detect swapping activity satisfying a threshold condition, detect the swapping activity satisfying the threshold condition, and, in response to occurrence of the threshold condition, send a response that indicates that the swapping activity satisfies the threshold condition.Type: ApplicationFiled: January 21, 2021Publication date: July 21, 2022Applicant: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Florian Anselm Johannes Schmidt, Jonathan James Davies
-
Publication number: 20220229774Abstract: Various embodiments disclosed herein are related to a non-transitory computer readable storage medium. In some embodiments, the medium includes instructions stored thereon that, when executed by a processor, cause the processor to send an indication of a first storage location to a destination host. In some embodiments, the first storage location includes content that is swapped out from a memory location in a source host. In some embodiments, the indication includes one or more of a logical address and a first physical address. In some embodiments, the medium includes instructions stored thereon that, when executed by a processor, cause the processor to map the logical address of the first storage location to a second physical address of a second storage location. In some embodiments, the destination host accesses the content of the first storage location.Type: ApplicationFiled: January 15, 2021Publication date: July 21, 2022Applicant: Nutanix, Inc.Inventors: Carl Alan Waldspurger, Felipe Franciosi, Florian Anselm Johannes Schmidt
-
Patent number: 11221971Abstract: Systems and methods are directed to managing access to a shared memory. A request received at a memory controller, for access to the shared memory from a client of one or more clients configured to access the shared memory, is placed in at least one queue in the memory controller. A series of one or more timeout values is assigned to the request, based, at least in part on a priority associated with the client which generated the request. The priority may be fixed or based on a Quality-of-Service (QoS) class of the client. A timer is incremented while the request remains in the first queue. As the timer traverses each one of the one or more timeout values in the series, a criticality level of the request is incremented. A request with a higher criticality level may be prioritized for servicing over a request with a lower criticality level.Type: GrantFiled: September 23, 2016Date of Patent: January 11, 2022Assignee: Qualcomm IncorporatedInventors: Derek Hower, Harold Wade Cain, III, Carl Alan Waldspurger
-
Patent number: 10831254Abstract: Allocating power between multiple central processing units (CPUs) in a multi-CPU processor based on total current availability and individual CPU quality-of-service (QoS) requirements is disclosed. Current from a power rail is allocated to CPUs by a global current manger (GCM) circuit related to performance criteria set by CPUs. The CPUs can request increased current allocation from the GCM circuit, such as in response to executing a higher performance task. If the increased current allocation request keeps total current on the power rail within its maximum rail current limit, the GCM circuit approves the request to allow the CPU increased current allocation. This can allow CPUs executing higher performance tasks to have a larger current allocation than CPUs executing lower performance tasks without the maximum rail current limit being exceeded, and without having to necessarily lower voltage of the power rail, which could unnecessarily lower performance of all CPUs.Type: GrantFiled: September 12, 2018Date of Patent: November 10, 2020Assignee: Qualcomm IncorporatedInventors: Shivam Priyadarshi, SeyedMajid Zahedi, Derek Robert Hower, Carl Alan Waldspurger, Jeffrey Todd Bridges, Sanjay Bhikhubhai Patel, Gabriel Martel Tarr, Chih Kang Lin, Ryan Donovan Wells, Harold Wade Cain, III
-
Patent number: 10678690Abstract: Providing fine-grained Quality of Service (QoS) control using interpolation for partitioned resources in processor-based systems is disclosed. In this regard, in one aspect, a processor-based system provides a partitioned resource (such as a system cache or memory access bandwidth to a shared system memory) that is subdivided into a plurality of partitions, and that is configured to service a plurality of resource clients. A resource allocation agent of the processor-based system provides a plurality of allocation indicators corresponding to each combination of resource client and partition, and indicating an allocation of each partition for each resource client. The resource allocation agent allocates the partitioned resource among the resource clients based on an interpolation of the plurality of allocation indicators.Type: GrantFiled: August 29, 2017Date of Patent: June 9, 2020Assignee: QUALCOMM IncorporatedInventors: Derek Robert Hower, Carl Alan Waldspurger, Vikramjit Sethi
-
Publication number: 20190086982Abstract: Allocating power between multiple central processing units (CPUs) in a multi-CPU processor based on total current availability and individual CPU quality-of-service (QoS) requirements is disclosed. Current from a power rail is allocated to CPUs by a global current manger (GCM) circuit related to performance criteria set by CPUs. The CPUs can request increased current allocation from the GCM circuit, such as in response to executing a higher performance task. If the increased current allocation request keeps total current on the power rail within its maximum rail current limit, the GCM circuit approves the request to allow the CPU increased current allocation. This can allow CPUs executing higher performance tasks to have a larger current allocation than CPUs executing lower performance tasks without the maximum rail current limit being exceeded, and without having to necessarily lower voltage of the power rail, which could unnecessarily lower performance of all CPUs.Type: ApplicationFiled: September 12, 2018Publication date: March 21, 2019Inventors: Shivam Priyadarshi, SeyedMajid Zahedi, Derek Robert Hower, Carl Alan Waldspurger, Jeffrey Todd Bridges, Sanjay Bhikhubhai Patel, Gabriel Martel Tarr, Chih Kang Lin, Ryan Donovan Wells, Harold Wade Cain, III
-
Publication number: 20190065374Abstract: Providing fine-grained Quality of Service (QoS) control using interpolation for partitioned resources in processor-based systems is disclosed. In this regard, in one aspect, a processor-based system provides a partitioned resource (such as a system cache or memory access bandwidth to a shared system memory) that is subdivided into a plurality of partitions, and that is configured to service a plurality of resource clients. A resource allocation agent of the processor-based system provides a plurality of allocation indicators corresponding to each combination of resource client and partition, and indicating an allocation of each partition for each resource client. The resource allocation agent allocates the partitioned resource among the resource clients based on an interpolation of the plurality of allocation indicators.Type: ApplicationFiled: August 29, 2017Publication date: February 28, 2019Inventors: Derek Robert Hower, Carl Alan Waldspurger, Vikramjit Sethi
-
Patent number: 10055158Abstract: Providing flexible management of heterogeneous memory systems using spatial Quality of Service (QoS) tagging in processor-based systems is disclosed. In one aspect, a heterogeneous memory system of a processor-based system includes a first memory and a second memory. The heterogeneous memory system is divided into a plurality of memory regions, each associated with a QoS identifier (QoSID), which may be set and updated by software. A memory controller of the heterogeneous memory system provides a QoS policy table, which operates to associate each QoSID with a QoS policy state, and which also may be software-configurable. Upon receiving a memory access request including a memory address of a memory region, the memory controller identifies a software-configurable QoSID associated with the memory address, and associates the QoSID with a QoS policy state using the QoS policy table. The memory controller then applies the QoS policy state to perform the memory access operation.Type: GrantFiled: September 22, 2016Date of Patent: August 21, 2018Assignee: QUALCOMM IncorporatedInventors: Colin Beaton Verrilli, Carl Alan Waldspurger, Natarajan Vaidhyanathan, Mattheus Cornelis Antonius Adrianus Heddes, Koustav Bhattacharya
-
Publication number: 20180081579Abstract: Providing flexible management of heterogeneous memory systems using spatial Quality of Service (QoS) tagging in processor-based systems is disclosed. In one aspect, a heterogeneous memory system of a processor-based system includes a first memory and a second memory. The heterogeneous memory system is divided into a plurality of memory regions, each associated with a QoS identifier (QoSID), which may be set and updated by software. A memory controller of the heterogeneous memory system provides a QoS policy table, which operates to associate each QoSID with a QoS policy state, and which also may be software-configurable. Upon receiving a memory access request including a memory address of a memory region, the memory controller identifies a software-configurable QoSID associated with the memory address, and associates the QoSID with a QoS policy state using the QoS policy table. The memory controller then applies the QoS policy state to perform the memory access operation.Type: ApplicationFiled: September 22, 2016Publication date: March 22, 2018Inventors: Colin Beaton Verrilli, Carl Alan Waldspurger, Natarajan Vaidhyanathan, Mattheus Cornelis Antonius Adrianus Heddes, Koustav Bhattacharya
-
Publication number: 20170293578Abstract: Systems and methods are directed to managing access to a shared memory. A request received at a memory controller, for access to the shared memory from a client of one or more clients configured to access the shared memory, is placed in at least one queue in the memory controller. A series of one or more timeout values is assigned to the request, based, at least in part on a priority associated with the client which generated the request. The priority may be fixed or based on a Quality-of-Service (QoS) class of the client. A timer is incremented while the request remains in the first queue. As the timer traverses each one of the one or more timeout values in the series, a criticality level of the request is incremented. A request with a higher criticality level may be prioritized for servicing over a request with a lower criticality level.Type: ApplicationFiled: September 23, 2016Publication date: October 12, 2017Inventors: Derek HOWER, Harold Wade CAIN, III, Carl Alan WALDSPURGER