Patents Examined by Abu Zar Ghaffari
  • Patent number: 11392427
    Abstract: Garbage collectors and other software may utilize performant lock-free multithreaded software. Unitary lock-free updates to a set of variables involves an updating value Z, release barriers and acquire barriers that enforce orderings on code execution, and atomicity resulting from variable alignment. Conveyance is accomplished with a values placing step and a values retrieving step. Values placing replaces a non-updated value in a variable Var1 with Z, executes a release barrier, replaces the non-updated values of other variables with update values, executes another release barrier, and replaces Z with the Var1 update value. Values retrieving reads from Var1 into a variable DestVar1A, executes an acquire barrier, reads from the other variables into respective destination variables, executes another acquire barrier, reads from Var1 into a variable DestVar1B, and repeats if DestVar1A is Z or if DestVar1A and DestVar1B are unequal. This solution conveys the update values without locks, as a unit.
    Type: Grant
    Filed: January 6, 2020
    Date of Patent: July 19, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Maoni Zhang Stephens, Patrick Henri Dussud
  • Patent number: 11392411
    Abstract: In one aspect, there is provided a system including at least one data processor and at least one memory. The at least one memory may store instructions that cause operations when executed by the at least one data processor. The operations may include retrieving a schedule for a plurality of processes, the plurality of processes scheduled for multiple executions over a time period. The operations may further include generating a user interface configured to receive user input for scheduling a process of the plurality of processes, the user interface comprising one or more fields for scheduling the multiple executions. The operations may further restricting, by the processor, a quantity of scheduled executions for a process of the plurality of processes.
    Type: Grant
    Filed: November 8, 2019
    Date of Patent: July 19, 2022
    Assignee: SAP SE
    Inventors: Mukesh Kumar, Srinivasa Raghavan V, Sunil Mohan Bhandarkar, Anirudh Prasad, Namrata
  • Patent number: 11385924
    Abstract: Collecting user information according to providing a virtual desktop infrastructure (VDI) service is disclosed. A user information collection system includes a service provisioning manager configured to manage provisioning of a VDI service provided from a VDI service provider, a charging manager configured to manage charging information according to a use of the VDI service, a policy manager configured to manage a policy for the VDI service, a user manager configured to manage information of the user, a VDI service lifecycle manager configured to manage a lifecycle of the VDI service, and a multi-tenant connection manager configured to manage connection infrastructure information between the VDI service provider and a cloud environment (or external software).
    Type: Grant
    Filed: April 13, 2021
    Date of Patent: July 12, 2022
    Assignee: PIAMOND CORP.
    Inventor: Doo Geon Hwang
  • Patent number: 11385918
    Abstract: A method is provided for a hypervisor to dynamically discover internal address information of a guest kernel on a virtual machine. The method includes locating a kernel exported system call or function in an image of the guest kernel in guest memory of the virtual machine, disassembling machine code of the kernel exported system call or function in the image into assembly code, detecting a pattern from memory references in the assembly code, and, after detecting the pattern, determining the internal address information of the guest kernel from the assembly code.
    Type: Grant
    Filed: April 29, 2019
    Date of Patent: July 12, 2022
    Assignee: VMWARE, INC.
    Inventor: Prasad Dabak
  • Patent number: 11379265
    Abstract: A resource management technology is disclosed that may be applied to a host, where the host includes a Central Processing Unit (CPU), an endpoint connected to the CPU, and an Input/Output (I/O) device connected to the endpoint. A method includes: allocating, by the CPU, a target endpoint to a target process, where a virtual device is disposed on the target endpoint; obtaining, by the target endpoint, a performance specification of the target process, and adjusting a performance parameter of the virtual device according to the performance specification, where the adjusted virtual device satisfies requirements of performance specifications of all processes that use the target endpoint; and when the target process needs to access a resource, obtaining, from the I/O device, a resource that satisfies the performance specification of the target process, and providing the obtained resource to the target process for use.
    Type: Grant
    Filed: June 7, 2019
    Date of Patent: July 5, 2022
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Baifeng Yu, Jiongjiong Gu, Muhui Lin, Zhou Yu, Lingzhi Mao
  • Patent number: 11379264
    Abstract: Some examples provide for uninterruptible power supply form (UPS) resources and non-UPS resources to be offered in a composite node for customers to use. For a workload run on the composite node, monitoring of non-UPS resource power availability, resource temperature, and/or cooling facilities can take place. In the event, a non-UPS resource experiences a power outage or reduction in available power, temperature that is at or above a threshold level, and/or cooling facility outage, monitoring of performance of a workload executing on the non-UPS resource can take place. If the performance is acceptable and the power available to the non-UPS resource exceeds a threshold level, the supplied power can be reduced. If the performance experiences excessive levels of errors or slows unacceptably, the workload can be migrated to another non-UPS or UPS compliant resource.
    Type: Grant
    Filed: April 15, 2019
    Date of Patent: July 5, 2022
    Assignee: Intel Corporation
    Inventors: Francesc Guim Bernat, Felipe Pastor Beneyto, Kshitij A. Doshi, Timothy Verrall, Suraj Prabhakaran
  • Patent number: 11379249
    Abstract: A service is stored in a non-volatile memory of a computing device and comprises instructions executable by a processor of the computing device. The processor generates an operational instance of the service, which comprises a reference to the service. The processor stores the operational instance of the service in the non-volatile memory with a read-write access right. The processor launches an executable instance of the service associated to the operational instance of the service. The launching comprises copying the instructions of the service from the non-volatile memory to a volatile memory of the computing device. The launching further comprises executing the instructions of the service copied into the volatile memory. The processor adds data generated by the execution of the instructions of the service to the operational instance of the service for permanent storage in the non-volatile memory.
    Type: Grant
    Filed: May 8, 2019
    Date of Patent: July 5, 2022
    Assignee: DISTECH CONTROLS INC.
    Inventor: Francois Gervais
  • Patent number: 11366788
    Abstract: Techniques delete snapshot data. In accordance with certain techniques, a first sub-process of a snapshot deletion process on a first data block of the snapshot data is performed with a first thread. The snapshot deletion process includes at least the first sub-process and a second sub-process, the first and second sub-processes being performed sequentially. In response to an end of the first sub-process performed with the first thread, the second sub-process on the first data block is performed with the first thread. In parallel with performing, with the first thread, the second sub-process on the first data block, the first sub-process on a second data block of the snapshot data is performed with a second thread different from the first thread, the second data block being different from the first data block. Such techniques improve IO lock contention, system resource utilization rate and parallelism, response time and system overhead.
    Type: Grant
    Filed: March 18, 2019
    Date of Patent: June 21, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Shuo Lv, Ming Zhang
  • Patent number: 11366705
    Abstract: The replay of events (e.g., data communications) between software entities should be deterministic and reproducible. In the disclosed framework, as events are replayed, software entities, stimulated by those events, are enqueued according to a queuing strategy and executed from the queue. Alternatively, as software entities are executed, the events, output by those software entities, are queued according to a queuing strategy and played from the queue.
    Type: Grant
    Filed: July 29, 2021
    Date of Patent: June 21, 2022
    Assignee: APEX.AI, INC.
    Inventors: Michael Pöhnl, Alban Tamisier, Misha Shalem
  • Patent number: 11366697
    Abstract: Techniques are provided for adaptive resource allocation for workloads. One method comprises obtaining a dynamic system model based on a relation between an amount of at least one resource for one or more iterative workloads and at least one predefined service metric; obtaining, from a resource allocation correction module, an instantaneous value of the at least one predefined service metric; and applying to a controller: (i) instantaneous parameters of the dynamic system model, and (ii) a difference between the instantaneous value of the at least one predefined service metric and a target value for the at least one predefined service metric, wherein the controller determines an adjustment to the amount of the at least one resource for the one or more iterative workloads. The obtained system model is optionally updated over time based on an amount of at least one resource added and the one or more predefined service metrics.
    Type: Grant
    Filed: May 1, 2019
    Date of Patent: June 21, 2022
    Assignee: EMC IP Holding Company LLC
    Inventor: Tiago Salviano Calmon
  • Patent number: 11360827
    Abstract: A technique includes receiving, by a cluster management controller, data representing results of a plurality of performance tests that are conducted on a plurality of processors that are associated with the plurality of computing nodes of a cluster. The technique includes, based on the data representing the results, selecting a lead processor of the plurality of processors; and communicating, by the cluster management controller, with the plurality of computing nodes to regulate core and un-core operating frequencies of the plurality of processors. Communicating with the plurality of computer nodes includes communicating data representing a core operating frequency of the lead processor and an un-core operating frequency of the lead processor.
    Type: Grant
    Filed: June 4, 2019
    Date of Patent: June 14, 2022
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Vincent Nguyen, Robert Van Cleve
  • Patent number: 11360809
    Abstract: Embodiments of apparatuses, methods, and systems for scheduling tasks to hardware threads are described. In an embodiment, a processor includes a multiple hardware threads and a task manager. The task manager is to issue a task to a hardware thread. The task manager includes a hardware task queue to store a descriptor for the task. The descriptor is to include a field to store a value to indicate whether the task is a single task, a collection of iterative tasks, and a linked list of tasks.
    Type: Grant
    Filed: June 29, 2018
    Date of Patent: June 14, 2022
    Assignee: Intel Corporation
    Inventors: William Paul Griffin, Joshua Fryman, Jason Howard, Sang Phill Park, Robert Pawlowski, Michael Abbott, Scott Cline, Samkit Jain, Ankit More, Vincent Cave, Fabrizio Petrini, Ivan Ganev
  • Patent number: 11360822
    Abstract: A resource allocation module may be configured to monitor an input queue of a cluster computing framework for a batch of one or more programs for processing. The resource allocation module parses commands in each of the one or more programs to determine an input/output (I/O) complexity parameter and at least one operation complexity parameter corresponding to each program of the one or more program files. The resource allocation module triggers execution of the one or more program files by a cluster computing framework via a network communication, wherein the cluster computing framework is configured based on the I/O complexity parameter and the at least one operation complexity parameter. Based on analysis of feedback from the cluster computing framework, the resource allocation module modifies a calculation for determining the I/O complexity parameter and/or a calculation for determining the operation complexity of the program files.
    Type: Grant
    Filed: September 12, 2019
    Date of Patent: June 14, 2022
    Assignee: Bank of America Corporation
    Inventors: Sandeep Kumar Chauhan, Sheetal Bhatia, Kritika Rai, Anuranjan Kishore
  • Patent number: 11353868
    Abstract: One or more examples include an apparatus having a hardware barrier logic to detect thread groups relating to machine learning operations and facilitate barrier synchronization of the thread groups across multiple dies representing multiple processors, such that data processing using the threads groups across the multiple processors is synchronized and stall-free.
    Type: Grant
    Filed: April 24, 2017
    Date of Patent: June 7, 2022
    Assignee: Intel Corporation
    Inventors: Abhishek R. Appu, Altug Koker, Joydeep Ray, Balaji Vembu, John C. Weast, Mike B. Macpherson, Dukhwan Kim, Linda L. Hurd, Sanjeev Jahagirdar, Vasanth Ranganathan
  • Patent number: 11347528
    Abstract: A system and method that provides inter-application relevance management for resources being brokered by an application virtualization platform. A described platform includes a memory configured to store a set of relevance rules for applications hosted by the application virtualization platform, wherein each relevance rule specifies a relevance setting between a first application and a second application. Also included is a processor coupled to the memory and configured to broker resources for the application virtualization platform, according to a method. The method includes: receiving a request from a client to launch a target application hosted by the application virtualization platform; retrieving a subset of applicable relevance rules that specify the target application from the set of relevance rules; and selecting a resource for the target application based on the subset of applicable relevance rules, wherein the resource includes at least one of a session or a session server.
    Type: Grant
    Filed: April 7, 2020
    Date of Patent: May 31, 2022
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Fuping Zhou, Nicky Shi
  • Patent number: 11347564
    Abstract: Systems and method for determining and synchronizing an execution status of a batch job are provided. In one embodiment, a method is provided that includes checking a local cache of a node for a local status of the batch job. If the local status is a terminal status, the method may proceed with determining that the terminal status is the execution status of the batch job. If the local status is a non-terminal status, the method may proceed with determining whether the node is actively processing at least a portion of the batch job. If the node is actively processing at least a portion of the batch job, the method may determine a currently processing status as the execution status. If not, the method may proceed with querying a repository for the execution status.
    Type: Grant
    Filed: April 24, 2019
    Date of Patent: May 31, 2022
    Assignee: Red Hat, Inc.
    Inventors: Cheng Fang, Ingo Arnold Weiss
  • Patent number: 11341035
    Abstract: Systems and methods for aligning needs of virtual devices with hardware resources. The performance of virtual devices are tested using different groupings to determine mappings or relationships between the virtual devices and the physical devices from which they are drawn. Based on the results of the tests, spindle groups can be optimized.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: May 24, 2022
    Assignee: EMC IP Holding Company LLC
    Inventor: Charles J. Hickey
  • Patent number: 11334391
    Abstract: A method of adjusting a set of resources allocated for a job includes analyzing, by a job tuning module, an intermediate result of a job. Processing the job includes processing a first iteration of a task and a second iteration of the same task. Additionally, the intermediate result is a result of the first iteration of the task, and the job is allocated a first set of resources during processing of the first iteration of the task. The method also includes sending a notification to a scheduler that causes the scheduler to adjust the first set of resources allocated to the job to a second set of resources for processing the second iteration of the task. The job may be allocated the second set of resources during processing of the second iteration of the task.
    Type: Grant
    Filed: April 17, 2017
    Date of Patent: May 17, 2022
    Assignee: RED HAT, INC.
    Inventors: Huamin Chen, Jay Vyas
  • Patent number: 11334387
    Abstract: Systems, methods and apparatuses to throttle network communications for memory as a service are described. For example, a computing device can borrow an amount of random access memory of the lender device over a communication connection between the lender device and the computing device. The computing device can allocate virtual memory to applications running in the computing device, and configure at least a portion of the virtual memory to be hosted on the amount of memory loaned by the lender device to the computing device. The computing device can throttle data communications used by memory regions in accessing the amount of memory over the communication connection according to the criticality levels of the contents stored in the memory regions.
    Type: Grant
    Filed: May 28, 2019
    Date of Patent: May 17, 2022
    Assignee: Micron Technology, Inc.
    Inventors: Sean Stephen Eilert, Ameen D. Akel, Samuel E. Bradshaw, Kenneth Marion Curewitz, Dmitri Yudanov
  • Patent number: 11327792
    Abstract: Various approaches for data storage and retrieval for a computer memory include processing a computational workflow having multiple data-processing steps, generating and storing a first hash value associated with a first step of the data-processing steps based on an input to the first step, generating and storing a second hash value associated with a second step of the data-processing steps based on the generated first hash value, and reconstructing a computational state of the workflow based on the second hash value, and thereby avoid re-execution of a portion of the workflow corresponding to the second hash value.
    Type: Grant
    Filed: December 19, 2019
    Date of Patent: May 10, 2022
    Assignee: SEVEN BRIDGES GENOMICS, INC.
    Inventor: Yilong Li