Patents Examined by Kevin X Lu
  • Patent number: 10652020
    Abstract: The disclosure relates to a method of switching data sources during a rolling upgrade of a leader-based distributed service. In at least one implementation, the method includes establishing, at a computing device in a cluster of devices in a network, a watch for notification of completion of a rolling upgrade on all devices in the cluster; restarting the computing device on completion of the rolling upgrade; switching, at the computing device, from a first data source to a second data source once the rolling upgrade is complete on all devices in the cluster; if the computing device is a leader device in the cluster, migrating tasks from the first data source to the second data source after completion of the rolling upgrade; and if the computing device is a non-leader device in the cluster, determining if task migration to the second data source is done and, when done, sending a store object to the second data source.
    Type: Grant
    Filed: December 14, 2017
    Date of Patent: May 12, 2020
    Assignee: NUTANIX, INC.
    Inventors: Arun Navasivasakthivelsamy, Gregory A. Smith
  • Patent number: 10635472
    Abstract: In one approach, an import mechanism allows new hardware intrinsics to be utilized by writing or updating a library of source code, rather than specifically modifying the virtual machine for each new intrinsic. Thus, once the architecture is in place to allow the import mechanism to function, the virtual machine itself (e.g. the code which implements the virtual machine) no longer needs to be modified in order to allow new intrinsics to be utilized by end user programmers. Since source code is typically more convenient to write than the language used to implement the virtual machine and the risk of miscoding the virtual machine is minimized when introducing new intrinsics, the import mechanism described herein increases the efficiency at which new hardware intrinsics can be introduced.
    Type: Grant
    Filed: October 21, 2016
    Date of Patent: April 28, 2020
    Assignee: Oracle International Corporation
    Inventors: John R. Rose, Vladimir Ivanov
  • Patent number: 10628222
    Abstract: Systems, methods, and computer program products to perform an operation comprising receiving, by a fog computing platform, a request from a wireless device to perform a compute task on behalf of the wireless device, determining a first computing resource, of a plurality of computing resources, required to perform the compute task, associating the request with a first level of priority, of a plurality of levels of priority, for accessing the first computing resource, allocating, based at least in part on the first level of priority, a portion of the first computing resource to perform the requested compute task.
    Type: Grant
    Filed: May 17, 2016
    Date of Patent: April 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Su Liu, Eric J. Rozner, Chin Ngai Sze, Yaoguang Wei
  • Patent number: 10613910
    Abstract: A virtual architecture generating apparatus and method, a runtime system, a multi-core system, and methods of operating the runtime system and the multi-core system may include analyzing a requirement of an application, a feature of the application, and a requirement of a system enabling an execution of the application, and include generating a virtual architecture corresponding to the application, based on a physical architecture of a reconfigurable processor, the analyzed requirements and the analyzed feature.
    Type: Grant
    Filed: July 11, 2017
    Date of Patent: April 7, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Min Young Son, Shi Hwa Lee, Seung Won Lee, Jeong Joon Yoo, Jae Don Lee, Young Sam Shin, Hee Jin Ahn
  • Patent number: 10592311
    Abstract: The disclosed technology adjusts hardware settings to map preferences consistently of a user experience across multiple hardware devices, despite there being different hardware capabilities and performance parameters among the different devices. A hardware settings translation engine receives a reference hardware setting of a reference computing device, a set of reference hardware performance parameter values, and a set of target hardware performance parameter values. The hardware settings translation engine then maps the set of target hardware performance parameter values to the set of reference hardware performance parameter values to yield a hardware adjustment map. The hardware settings translation engine determines the target hardware setting based on the reference hardware adjustment map and the reference hardware setting. The hardware settings translation engine sets the target hardware to the target hardware setting.
    Type: Grant
    Filed: November 30, 2017
    Date of Patent: March 17, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Bin Wang, Dejun Zhang, Robert Yu Zhu, Lei Zhang, Pengxiang Zhao, Ying N. Chin, Satyendra Bahadur, Daryl A. Welsh, Carlos Picoto
  • Patent number: 10579407
    Abstract: Systems and methods are described herein generally relating to network security, and in particular, embodiments described relate to systems and methods for deploying microservices in a networked microservices system. For example, a method is disclosed, which calls for receiving a request to instantiate a microservice, selecting a suitable virtual machine (VM), wherein the selecting comprises calculating the suitability of the virtual machine based on a property load and a property weight, deploying the microservice on the selected virtual machine, configuring the microservice to communicate with an interface microservice, and configuring the microservice to perform security processing on packets processed within a security service.
    Type: Grant
    Filed: October 28, 2016
    Date of Patent: March 3, 2020
    Assignee: SHIELDX NETWORKS, INC.
    Inventors: Ratinder Paul Singh Ahuja, Manuel Nedbal, Rajiv Sreedhar
  • Patent number: 10579485
    Abstract: In a computer system running at least a first virtual machine (VM) and a second VM on virtualization software, a computer implemented method for the second VM to provide quasi-lockstep fault tolerance for the first VM includes executing a workload on the first VM and the second VM that involves producing at least one externally visible output and comparing an externally visible output of the second VM with an externally visible output of the first VM to determine if there is an output match. In response to a determination that the externally visible output of the second VM does not match the externally visible output of the first VM, a resynchronization of the second VM is executed. The externally visible output of the first VM is kept from being output externally until completion of the resynchronization.
    Type: Grant
    Filed: October 3, 2016
    Date of Patent: March 3, 2020
    Assignee: VMWARE, INC.
    Inventors: Ganesh Venkitachalam, Rohit Jain, Boris Weissman, Daniel J. Scales, Vyacheslav Vladimirovich Malyugin, Jeffrey W. Sheldon, Min Xu
  • Patent number: 10579437
    Abstract: Migrating a logical partition with a native logical port including establishing in the target computing system a target VIOS that includes a virtual network interface controller (vNIC) server, the vNIC server of the target VIOS coupled for data communications to a first target virtual adapter; copying the logical partition including a vNIC client to the target computing system; starting the logical partition; establishing, by the vNIC client of the logical partition, data communications with the vNIC server of the target VIOS, including performing I/O data communications between the logical partition and the first target virtual adapter; establishing a second logical port in the logical partition on the target computing system, including coupling for I/O data communications the second logical port to a second target virtual adapter; and performing I/O data communications from the logical partition to the second target virtual adapter through the second logical port.
    Type: Grant
    Filed: December 1, 2016
    Date of Patent: March 3, 2020
    Assignee: International Business Machines Corporation
    Inventors: Ping Chen, Charles S. Graham, Yiwei Li, Raghavendra Malapati, Venu G. Potluri, Patricia Y. Wang
  • Patent number: 10558501
    Abstract: A job that receives as input a data stream is executed. For the job, it is iteratively determined a backlog growth over a first period of time; a backlog volume; and whether to adjust a quantity of processing resources. For each iteration for which the quantity of processing resources allocated to the job are determined to be adjusted, adjusting the quantity of processing resources allocated to the job. For each iteration for which the quantity of processing resources allocated to the job are determined not to be adjusted, maintaining the quantity of processing resources allocated to the job.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: February 11, 2020
    Assignee: Google LLC
    Inventors: Robert Bradshaw, Rafael de Jesús Fernández Moctezuma, Daniel Mills, Samuel Green McVeety, Samuel Carl Whittle, Andrei Maksimenka, Cosmin Ionel Arad, Mark Brian Shields, Harris Samuel Nover, Manuel Alfred Fahndrich, Jeffrey Paul Gardner, Mikhail Shmulyan, Reuven Lax, Ahmet Altay, Craig D. Chambers
  • Patent number: 10552228
    Abstract: Techniques disclosed herein provide an approach for assigning resource consumers to available resources. In one embodiment, components of a distributed scheduler are organized into a hierarchy, such as a tree. A placement request received at a root scheduler of the hierarchy is propagated down the hierarchy, either to all children or to randomly selected subsets of children of each scheduler in the hierarchy. Leaf schedulers in the hierarchy that receive the request each propagate back up a score indicating the amount of free resources in its corresponding resource bucket. Branch schedulers then compare scores that they receive, and each further propagate one of the received scores, such as the highest score, based on the comparison, until the root scheduler is reached. The root scheduler makes an additional comparison and returns one of the resource buckets in response to the received placement request.
    Type: Grant
    Filed: June 20, 2016
    Date of Patent: February 4, 2020
    Assignee: VMware, Inc.
    Inventors: Vadim Spivak, Amar Padmanabhan, Anfernee Yongkun Gui, Badhri Sampathkumar, Luca Castellano, Maithem Munshed, Michi Mutsuzaki, Vui Chiap Lam
  • Patent number: 10545778
    Abstract: In general, techniques are described for providing software redundancy for Virtual Network Functions (VNF). In one example, a method includes, by a host process executed by an insertable service card of a network device, pinning, to a plurality of hardware-based processors, active threads of an active network function. The host process pins, to a single hardware-based processor, backup threads of a backup network function for the active network function, wherein the plurality of hardware-based processors does not include the single hardware-based processor. The host process pins, to the single hardware-based processor, management threads of the active and backup network functions. The single hardware-based processor executes the management threads of the active and backup network functions to cause the management thread of the backup network function to receive, from the management thread of the active network function, state data generated by the active threads.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: January 28, 2020
    Assignee: Juniper Networks, Inc.
    Inventor: Suresh Kumar Vinapamula Venkata
  • Patent number: 10534538
    Abstract: Concurrent threads may be synchronized at the level of the memory words they access rather than at the level of the lock that protects the execution of critical sections. Each lock may be associated with an array of flags and each flag may indicate ownership of certain memory words. A pessimistic thread may set flags corresponding to memory words it is accessing in the critical section, while an optimistic thread may read the corresponding flag before any memory access to ensure that the flag is not set and that therefore the associated memory word is not being accessed by the other thread. Thus, optimistic threads that do not have conflicts with the pessimistic thread may not have to wait for the pessimistic thread to release the lock before proceeding.
    Type: Grant
    Filed: February 22, 2016
    Date of Patent: January 14, 2020
    Assignee: Oracle International Corporation
    Inventors: Alex Kogan, David Dice, Virendra J. Marathe
  • Patent number: 10521267
    Abstract: A method of a priority trainer of a many core processing system comprising a plurality of cores is disclosed.
    Type: Grant
    Filed: December 21, 2015
    Date of Patent: December 31, 2019
    Assignee: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
    Inventors: Patrik Åberg, Magnus Templing
  • Patent number: 10514937
    Abstract: Embodiments provide a system including a first host computing device that includes a first virtual machine (VM) and a first application. The system also includes a second host computing device including a virtualization software layer, a second VM, and an auto-discovery service at least partially instantiated within the virtualization software layer. The auto-discovery service is configured to receive a message and an auto-discovery packet from a second application executing on the second VM. The auto-discovery service inserts an option into the auto-discovery packet, and transmits the auto-discovery packet to the first application. The option in the auto-discovery packet includes the message received from the second application.
    Type: Grant
    Filed: January 5, 2012
    Date of Patent: December 24, 2019
    Assignee: VMware, Inc.
    Inventors: Yiwen Zhang, Liang Cui, Zhifeng Xia
  • Patent number: 10489215
    Abstract: Systems for computing cluster management. One embodiment commences upon receiving a set of observed workload parameters corresponding to one or more observable workloads that run in a computing cluster. While the workloads are running, workload stimulus and cluster response observations are taken and used to generate a workload resource usage predictive model based on mappings or correlations between the observable workloads parameters and observed resource usage measurements. A set of planned workloads are applied to the workload resource usage predictive model to predict a set of corresponding predicted resource usage demands. The predicted resource usage demands are then mapped to a set of recommended hardware to form resource deployment recommendations that satisfy at least some of the corresponding resource usage demands while also observing a set of hardware model compatibility constraints.
    Type: Grant
    Filed: November 2, 2016
    Date of Patent: November 26, 2019
    Assignee: NUTANIX, INC.
    Inventors: Jianjun Wen, Cong Liu, Himanshu Shukla, Weiheng Chen
  • Patent number: 10452371
    Abstract: Methods, computer program products, and systems are presented. The methods include, for instance: automatically discovering enablement state variables respectively corresponding to products present in a computer system; processing the enablement state variables and associated values and making a separate file for disabled products; and make available the file for disabled products as inputs to subsequent system administration jobs.
    Type: Grant
    Filed: June 17, 2016
    Date of Patent: October 22, 2019
    Assignee: International Business Machines Corporation
    Inventors: Donald J. Bland, John Bouzakis, Keith J. Miller, Marna L. Walle
  • Patent number: 10445149
    Abstract: A method causing a processor to execute operations includes managing a plurality of first settings, one of the plurality of first setting being to control a first device in case that an operation status of a second device which is interconnected to the first device via a network has changed, receiving a second setting, the second setting being to control a third device in case that an operation status of a fourth device which is interconnected to the third device via the network has changed, determining whether conflicting operations are to be performed on a device when the plurality of first settings and the second setting are executed, extracting a setting from the first settings and the second setting, which is a cause of the conflicting operations in case that, in the determining, the conflicting operations are determined and transmitting a notification to divide a time during which the setting extracted in the extracting is executed.
    Type: Grant
    Filed: June 2, 2016
    Date of Patent: October 15, 2019
    Assignee: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
    Inventors: Ryota Miyazaki, Tomonori Nakamura, Hiroko Sugimoto
  • Patent number: 10437637
    Abstract: Systems and methods are disclosures for scheduling code in a multiprocessor system. Code is portioned into code blocks by a compiler. The compiler schedules execution of code blocks in nodes. The nodes are connected in a directed acyclical graph with a top node, terminal node and a plurality of intermediate nodes. Execution of the top node is initiated by the compiler. After executing at least one instance of the top node, an instruction in the code block indicates to the scheduler to initiate at least one intermediary node. The scheduler schedules a thread for execution of the intermediary node. The data for the nodes resides in a plurality of data buffers; the index to the data buffer is stored in a command buffer.
    Type: Grant
    Filed: May 25, 2016
    Date of Patent: October 8, 2019
    Assignee: Thin CI, Inc.
    Inventors: Satyaki Koneru, Val G Cook, Ke Yin
  • Patent number: 10430239
    Abstract: A request is received from a client for determining task completion of a first set of tasks associated with attributes, the first set of tasks scheduled to be performed within a first time period. For each of the attributes, a completion rate of one or more of a second set of tasks is calculated that are associated with the attribute. The second set of tasks has been performed during a second time period in the past. An isotonic regression operation and/or temporal smoothing are performed on the completion rates associated with the attributes of the second set of tasks that have been performed during the second time period to calibrate the completion rates. Possible completion for the attributes of the first set of tasks to be performed in the first time period is calculated based on the calibrated completion rates of the second set of tasks.
    Type: Grant
    Filed: August 24, 2016
    Date of Patent: October 1, 2019
    Assignee: CLARI INC.
    Inventors: Lei Tang, Mark Shuai Sun, Xin Xu
  • Patent number: 10409647
    Abstract: A method, system and computer program product for managing a software application. Load information indicative of a workload over time of one or more computing resources being used by the software application is monitored. Furthermore, social information indicative of a social activity over time relating to the software application is monitored. An estimated correlation between the monitored load information and the monitored social information is determined. A future requirement of the computing resources for the software application is then forecasted according to the monitored social information and the estimated correlation for use in provisioning the computing resources to the software application accordingly.
    Type: Grant
    Filed: November 4, 2016
    Date of Patent: September 10, 2019
    Assignee: International Business Machines Corporation
    Inventors: Francesco M. Carteri, Giorgio Corsetti, Massimo Marra, Andrea Tortosa