Patents Examined by Camquy Truong
  • Patent number: 10761890
    Abstract: A method, computer program product, and apparatus for optimizing memory fences based on workload are provided. The method includes determining whether to execute a target program on a single hardware thread or a plurality of hardware threads. The method also includes assigning one of a light-weight memory fence and a heavy-weight memory fence as a memory fence in the target program based on whether to execute the target program on the single hardware thread or the plurality of hardware threads. The method further includes assigning the light-weight memory fence in response to determining to execute the target program on the single hardware thread, and the heavy-weight memory fence is assigned in response to determining to execute the target program on the plurality of hardware threads.
    Type: Grant
    Filed: January 23, 2018
    Date of Patent: September 1, 2020
    Assignee: International Business Machines Corporation
    Inventors: Hiroshi Horii, Hiroshi Inoue
  • Patent number: 10754708
    Abstract: A computing includes a persistent storage and a deployment manager. The persistent storage stores a deployment manifest repository. The deployment manager obtains a configuration request for a deployment. In response to obtaining the configuration request for the deployment, the deployment manager identifies, based on the deployment, manifests using the deployment manifest repository; generates a dependency graph of tasks specified in the manifests; orders the tasks using the generated dependency graph; generates a deployment script using the ordered tasks; and initiates a configuration of the deployment using the deployment script.
    Type: Grant
    Filed: March 28, 2018
    Date of Patent: August 25, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Ravikanth Chaganti, Rizwan Ali, Dharmesh M. Patel
  • Patent number: 10757487
    Abstract: Examples may include techniques to allocate physical accelerator resources from pools of accelerator resources. In particular, virtual computing devices can be composed from physical resources and physical accelerator resources dynamically allocated to the virtual computing devices. The present disclosure provides that physical accelerator resources can be dynamically allocated, or composed, to a virtual computing device despite not being physically coupled to other components in the virtual device.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: August 25, 2020
    Assignee: Intel Corporation
    Inventors: Mohan J. Kumar, Murugasamy K. Nachimuthu, Aaron Gorius, Michael Crocker
  • Patent number: 10747577
    Abstract: Computer system and method for characterizing throughput performance of a datacenter utilize bandwidth information of physical network interfaces in the datacenter and results of benchmark testing on throughput on a single processor core to compute a plurality of throughput constraints that define a throughput capacity region for the datacenter to improve throughput performance of the datacenter.
    Type: Grant
    Filed: August 25, 2018
    Date of Patent: August 18, 2020
    Assignee: NICIRA, INC.
    Inventors: Dexiang Wang, Bin Qian, Jinqiang Yang, Naga S. S. Kishore Kankipati, Sanal Pillai, Sujatha Sundararaman, Ganesan Chandrashekhar, Rishi Mehta
  • Patent number: 10725810
    Abstract: Some embodiments of the invention provide a novel method of migrating virtualized computing instances (VCIs) that implement a multi-node application. The method may identify a plurality of VCIs that implement a multi-node application, each of the plurality of VCIs being executed on a respective source host, and may identify a role performed by each VCI of the identified plurality of VCIs. The method may also generate a plurality of batches, each batch of the plurality of batches including a set of the identified plurality of VCIs selected based on the identified role of each of the VCIs, and generate a migration sequence comprising an ordered sequence of the plurality of batches. The method may migrate the identified plurality of VCIs from its respective source host to a respective destination host according to the migration sequence.
    Type: Grant
    Filed: June 1, 2017
    Date of Patent: July 28, 2020
    Assignee: VMWARE, INC.
    Inventors: Vardan Movsisyan, Anna Grigoryan, Gagik Manukyan
  • Patent number: 10725820
    Abstract: An application control method and a mobile terminal are provided. The method is applicable to a mobile terminal including a processor and an artificial intelligence (AI) module. Whether a current user is a registered user is detected by the processor when detecting that an application running on the mobile terminal belongs to a preset application set. A monitoring instruction carrying an identification of the running application is sent to the AI module by the processor when detecting that the current user is the registered user. A monitoring strategy of the running application associated with the registered user is acquired by the AI module, where the monitoring strategy includes a monitoring parameter and a corresponding monitoring parameter threshold. The running application is closed by the AI module when detecting that a value of the monitoring parameter of the running application is greater than or equal to the monitoring parameter threshold.
    Type: Grant
    Filed: May 22, 2018
    Date of Patent: July 28, 2020
    Assignee: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
    Inventor: Jian Bai
  • Patent number: 10719364
    Abstract: A method for quantifying resource usage may include measuring a quantity of a plurality of physical computing resources being used over a period of time. The method may also include normalizing each measured quantity of each physical computing resource being used. The method may also include summing the normalized measured quantities of the physical computing resources being used to generate a single usage value representative of the physical computing resources being used over the period of time.
    Type: Grant
    Filed: March 22, 2019
    Date of Patent: July 21, 2020
    Assignee: Carolina Cloud Exchange Inc.
    Inventors: Timothy A. Martin, Myron L. Stewart
  • Patent number: 10719346
    Abstract: A computer implemented method of providing whole disk encryption for a virtualized computer system including providing a software component executing in a first virtual machine for instantiation in a first hypervisor, the software component invoking a second hypervisor within the first virtual machine for instantiating a disk image of the virtualized computer system as a second virtual machine, and the software component being configured to install a software agent in the second virtual machine, the software agent being adapted to: a) encrypt the instantiated disk image; b) encrypt data written, by the second virtual machine, to the instantiated disk image at a runtime of the second virtual machine; and c) decrypt data read, by the second virtual machine, from the instantiated disk image at a runtime of the second virtual machine, wherein the software component is configured to migrate the second virtual machine at a runtime of the second virtual machine to the first hypervisor so as to provide a wholly encry
    Type: Grant
    Filed: January 26, 2017
    Date of Patent: July 21, 2020
    Assignee: British Telecommunications Public Limited Company
    Inventors: Fadi El-Moussa, Theo Dimitrakos
  • Patent number: 10712766
    Abstract: This disclosure generally relates to time and timer techniques that may be used to virtualize one or more virtual machines. In an example, it may be possible to save and restore a timer of a virtual machine while preserving timer information associated with the timer (e.g., an expiration time, whether the most recent expiration has been signaled, and the enable bit, etc.). For example, a first mode may enable restoring a timer based on a previously-existing enable bit, thereby retaining the state of the timer (e.g., whether the timer is programmed to fire and/or whether the most recent expiration has been signaled). By contrast, a second mode of setting a timer may automatically set the enable bit, thereby automatically enabling the timer to fire, as may be expected by a virtual machine when setting a timer.
    Type: Grant
    Filed: January 19, 2018
    Date of Patent: July 14, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Aditya Bhandari, Bruce J. Sherwin, Jr., Xin David Zhang
  • Patent number: 10705883
    Abstract: Various embodiments herein each include at least one of systems, methods, and software for instantiating, executing, and operating dynamic hybrid computing environments, such as in cloud computing. Some such embodiments include allocating computing resources of a first server cluster to instantiate a first cluster and to establish a computing session. This embodiment may then initiate execution of a program within the first cluster that offloads at least one computing task to a second cluster, when the second cluster is instantiated, to leverage high-computing speed performance capabilities of the second cluster with regard to certain computing operations. Upon completion of program execution, the second cluster is then deallocated.
    Type: Grant
    Filed: June 19, 2018
    Date of Patent: July 7, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Tong Wen, Sudarshan Raghunathan, Ilya Matiach
  • Patent number: 10678581
    Abstract: Methods and apparatus to select virtualization environments are disclosed. An example apparatus includes a logic circuit, a workload analyzer to determine characteristics of a virtualized application, a score generator to compare the characteristics of the virtualized application to a plurality of virtualization environment types to determine scores for each of the plurality of virtualization environment types, the scores based on rules that identify different scores for combinations of characteristics and virtualization environment types, and a workload deployer to deploy the virtualized application using one of the plurality of virtualization environment types based on the scores.
    Type: Grant
    Filed: September 18, 2017
    Date of Patent: June 9, 2020
    Assignee: VMware Inc.
    Inventors: Kumar Gaurav, Hemanth Kumar Pannem
  • Patent number: 10681187
    Abstract: A system and method of intelligently scheduling actions from multiple network software stacks is disclosed. The scheduler uses information, such as requested start time, slip time, action duration and priority to schedule actions among a plurality of network stacks. In some embodiments, the scheduler attempts to maximize the radio usage by prioritizing the actions based not only on their given priority, but also based on their duration, and the ability for other actions to tolerate a delay in being performed.
    Type: Grant
    Filed: December 14, 2017
    Date of Patent: June 9, 2020
    Assignee: Silicon Laboratories, Inc.
    Inventor: Bryan Murawski
  • Patent number: 10671369
    Abstract: The present disclosure relates to updating a firmware image on a coherent hardware accelerator concurrently with executing operations on the coherent hardware accelerator. According to one embodiment, while executing accelerator-enabled operations on the coherent hardware accelerator, a system stores a firmware update package in a local memory on the coherent hardware accelerator. Once the firmware update package is stored in local memory on the coherent hardware accelerator, the system restarting the coherent hardware accelerator by pausing the execution of at least a first operation initiated on the coherent hardware accelerator and applying the firmware update package to the firmware image on the coherent hardware accelerator. Once the firmware update package is applied to the coherent hardware accelerator, the system resumes the operation on the coherent hardware accelerator.
    Type: Grant
    Filed: December 18, 2017
    Date of Patent: June 2, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andre L. Albot, Vishal C. Aslot, Thomas V. Burks, III, John D. Dietel
  • Patent number: 10671292
    Abstract: A method of orchestrated shuffling of data in a non-uniform memory access device including a plurality of processing nodes that connected by interconnects. The method includes running an application on a plurality of threads executing on the plurality of processing nodes. Data to be shuffled is identified from source threads running on source processing nodes among the processing nodes to target threads executing on target processing nodes among the processing nodes. The method further includes generating a plan for orchestrating the shuffling of the data among the all of the memory devices associated with the threads and for simultaneously transmitting data over different interconnects to a plurality of different target processing nodes from a plurality of different source processing nodes. The data is shuffled among all of the memory devices based on the plan and each processing node is capable of accessing data from first and second local memory devices.
    Type: Grant
    Filed: December 1, 2017
    Date of Patent: June 2, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Yinan Li, Guy M. Lohman, Rene Mueller, Ippokratis Pandis, Vijayshankar Raman
  • Patent number: 10664301
    Abstract: An example method of establishing one or more connections between a target host machine and a remote endpoint connected to a virtual machine (VM) running on a source host machine includes receiving, by a target hypervisor executable on a target host machine, a list of one or more remote endpoints to which a VM executable on a source host machine is connected. The source and target host machines are coupled to a network. The method further includes initiating, by a host communication manager executable on the target host machine, a connection to one or more of the remote endpoints specified in the list before the VM has completed migration from the source host machine to the target host machine.
    Type: Grant
    Filed: March 26, 2018
    Date of Patent: May 26, 2020
    Assignee: RED HAT ISRAEL, LTD.
    Inventor: Michael Tsirkin
  • Patent number: 10656967
    Abstract: Techniques for actor and thread message dispatching are described herein. In some examples, a computing system may include multiple actors and multiple processing threads. Upon receiving an incoming message associated with one of the actors, a dispatching component may select one of the multiple processing threads within the computing system to which to dispatch the message for processing. If the associated actor is already assigned to one of the processing threads, then that processing thread may be selected for processing of the message. By contrast, if the associated actor is not already assigned to one of the processing threads, then a processing thread may be selected based on various factors, such as a set of priorities associated with the processing threads.
    Type: Grant
    Filed: March 26, 2018
    Date of Patent: May 19, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: Cheyne William Anderson, Adam Julio Villalobos, Qiang Fan
  • Patent number: 10642641
    Abstract: Systems, apparatus, and methods for creating a virtual machine are provided. A control device may receive a virtual machine creation request. The control device may select a plurality of candidate host machines from a plurality of host machines based on the virtual machine creation request and attribute information corresponding to the candidate host machines. The control device may determine a target host machine from the candidate host machines based on a priority of each candidate host machine. The control device may create a virtual machine on the target host machine.
    Type: Grant
    Filed: April 25, 2018
    Date of Patent: May 5, 2020
    Assignee: Tencent Technology (Shenzhen) Company Limited
    Inventors: Dekai Li, Yudong Chen, Weiyue Zhou, Min Wang
  • Patent number: 10635485
    Abstract: An object node apparatus, system, and method are described. An apparatus can include a lockless-mode controller configured to communicatively couple to a plurality of storage resources and to a plurality of processor cores each preassigned to process a specific type of sub-task at a different preassigned storage resource that is configured to receive object input/output (I/O) only from the preassigned core, the lockless-mode controller being further configured to receive a plurality of object I/O messages from one or more clients, each to perform an object I/O task, divide each object I/O task into a plurality of sub-tasks, identify a specific sub-task type for each sub-task, and send each sub-task for each specific sub-task type to a processor core preassigned to process the specific sub-task type, wherein the sub-tasks include storage operations related to storing sub-object data in, or retrieving sub-object data from, the preassigned storage resource for each processor core.
    Type: Grant
    Filed: March 23, 2018
    Date of Patent: April 28, 2020
    Assignee: Intel Corporation
    Inventor: Anjaneya Reddy Chagam Reddy
  • Patent number: 10637780
    Abstract: Systems and methods for multi-channel signal processing by virtue of packet-based time-slicing with single processing core logic. The processing core logic is configured to receive data streams from the multiple communication channels at a data processing unit, and process data fragments of the data streams in a time-sliced manner. The processing core logic can switch from processing a first data fragment of a first data stream to processing a first data fragment of a second data stream at an end of a time slice, wherein the time slice is determined by a fragment boundary associated with the data fragment of the first data stream.
    Type: Grant
    Filed: January 5, 2018
    Date of Patent: April 28, 2020
    Assignee: MACOM Connectivity Solutions, LLC
    Inventor: Dimitri Mavroidis
  • Patent number: 10628230
    Abstract: In an approach to collecting and processing performance metrics, one or more computer processors assign an identifier corresponding to a first workload associated with a first virtual machine. The one or more computer processors record resource consumption data of at least one processor at a performance monitoring interrupt. The one or more computer processors create a relational association of the first workload and the first virtual machine to the resource consumption data of the at least one processor. The one or more computer processors determine if the first workload is complete. Responsive to determining that the first workload is not complete, the one or more computer processors calculate a difference in recorded resource consumption data between the performance monitoring interrupt and a previous performance monitoring interrupt.
    Type: Grant
    Filed: December 14, 2017
    Date of Patent: April 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Pradipta K. Banerjee, Aneesh K. Kizhake Veetil, Dipankar Sarma, Vaidyanathan Srinivasan