Patents Examined by Emerson Puente
  • Patent number: 9792148
    Abstract: Controlling access to at least one memory location by a transaction is provided in a multi-processor transactional execution environment. Included is: tracking execution progress of a transaction, the execution progress being a metric of work performed for the transaction which includes at least one of instructions processed or cycles elapsed; based on encountering a conflict with another process for a memory location, comparing execution process of the transaction and execution progress of the other process; and deciding whether to continue the transaction based on the comparing. For instance, based on the execution progress of the transaction being greater than the execution progress of the other process, the transaction is continued, and based on the execution progress of the transaction being less that the execution progress of the other process, then the transaction is aborted.
    Type: Grant
    Filed: January 7, 2016
    Date of Patent: October 17, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael K. Gschwind, Valentina Salapura
  • Patent number: 9792201
    Abstract: A test support device which can test all configurations of a system including a specific system component, comprehensively and quickly, is provided. A test support device (100) includes a storage unit (102) and an extraction processing unit (101). A configuration of a system is defined with a plurality of functionalities to be maintained by the system and a set of programs implementing the functionalities respectively. The storage unit (102) stores component-relation information (201) which indicates an identifier of each of one or more systems, an identifier of each of a plurality of functionalities to be maintained by each of the systems, and an identifier of each of one or more programs being capable of implementing each of the functionalities.
    Type: Grant
    Filed: December 6, 2013
    Date of Patent: October 17, 2017
    Assignee: NEC CORPORATION
    Inventor: Takayuki Kuroda
  • Patent number: 9785473
    Abstract: Configurable per-task state counters for processing cores in multi-tasking processing systems are disclosed along with related methods. In part, the disclosed embodiments include a work scheduler and a plurality of processing cores. The work scheduler assigns tasks to the processing cores, and the processing cores concurrently process multiple assigned tasks using a plurality of processing states. Further, task state counters are provided for each assigned task, and these task state counters are incremented for each cycle that the task stays within selected processing states to generate per-task state count values for the assigned tasks. These per-task state count values are reported back to the work scheduler when processing for the task ends. The work scheduler can then use one or more of the per-task state count values to adjust how new tasks are assigned to the processing cores.
    Type: Grant
    Filed: July 14, 2014
    Date of Patent: October 10, 2017
    Assignee: NXP USA, Inc.
    Inventors: William C. Moyer, John F. Pillar
  • Patent number: 9772886
    Abstract: A method for tuning workflow settings in a distributed computing workflow comprising sequential interdependent jobs includes pairing a terminal stage of a first job and a leading stage of a second, sequential job to form an optimization pair, in which data segments output by the terminal stage of the first job comprises data input for the leading stage of the second job. The performance of the optimization pair is tuned by determining, with a computational processor, an estimated minimum execution time for the optimization pair and increasing the minimum execution time to generate an increased execution time. The method further includes calculating a minimum number of data segments that still permit execution of the optimization pair within the increased execution time.
    Type: Grant
    Filed: August 13, 2015
    Date of Patent: September 26, 2017
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Ludmila Cherkasova, Zhuoyao Zhang
  • Patent number: 9766923
    Abstract: The disclosed embodiments provide a system that facilitates the development and execution of a software program. During operation, the system provides a mechanism for restricting a variable to a runtime context in the software program. Next, the system identifies the runtime context during execution of the software program. Finally, the system uses the mechanism to prevent incorrect execution of the software program by ensuring that a closure capturing the variable executes within the identified runtime context.
    Type: Grant
    Filed: March 24, 2014
    Date of Patent: September 19, 2017
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Brian Goetz, Alexander R. Buckley
  • Patent number: 9740588
    Abstract: A computer-implemented method of reducing impact of performance data gathering on execution of instrumented code comprises gathering respective performance data for each of a plurality of routines in the instrumented code over a plurality of execution instances of the instrumented code. The method also comprises determining that the gathered performance data for the at least one selected routine follows an identified pattern for at least one selected routine from the plurality of routines and, in response to determining that the at least one selected routine follows an identified pattern, removing instrumentation associated with the at least one selected routine.
    Type: Grant
    Filed: May 26, 2015
    Date of Patent: August 22, 2017
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee N. Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9734042
    Abstract: During execution of a computer program, mouse movements, keyboard inputs, and screen snapshots are recorded and stored in one or more files as a test flow. Next, selected recorded keyboard inputs are replaced with user-specified variable parameters to generate a keyboard testing input, each of the parameters corresponding to a plurality of possible keyboard inputs. Execution is triggered of the test flow including the recorded mouse movements, the recorded screenshots, and the keyboard testing input. If the initially displayed screen is not equivalent to the first screen indicted in the test flow as being the start of the test, the test flow is stopped. Otherwise, the test flow is executed utilizing a random selection of the plurality of possible keyboard inputs of the keyboard testing input. At least one output is provided for the execution of the test flow.
    Type: Grant
    Filed: May 22, 2014
    Date of Patent: August 15, 2017
    Assignees: Amdocs Software Systems Limited, Amdocs Development Limited
    Inventor: Sharon Elgarat
  • Patent number: 9733980
    Abstract: Techniques are described for managing virtual machines using input/output (I/O) device logging. For example, a system bus or other interface to a device may be monitored for traffic data elements. The traffic data elements may include, for example, transaction layer packets (TLPs) for communication across a PCI Express interface, or TCP/IP packets for communication over a network. These traffic data elements may be logged in an I/O device logging buffer. The I/O device logging buffer can then be used to ensure that all memory relating to a virtual machine is copied when transferring the virtual machine to another computing device. In addition, the I/O device logging buffer can be used to stop a virtual machine without waiting for the virtual machine to complete I/O processing.
    Type: Grant
    Filed: December 5, 2014
    Date of Patent: August 15, 2017
    Assignee: Amazon Technologies, Inc.
    Inventors: Asif Khan, Anthony Nicholas Liguori, Mark Bradley Davis
  • Patent number: 9733965
    Abstract: Mechanisms are provided for dynamically adjusting assignment of software threads to hardware threads in virtual machine (VM) environments. The mechanisms receive, by a virtual machine manager (VMM), an indication of workload priority from a plurality of VMs. The indication indicates a priority of a workload executing on each VM in the plurality of VMs. The mechanisms provide, by the VMM, an indication of physical resource usage to each VM. The indication of physical resource usage is an indication of physical resource usage across all VMs in the plurality of VMs. The mechanisms automatically adjust, by each VM, assignment of corresponding software threads to hardware threads based on the indication of physical resource usage and a priority of a workload executing on the VM to achieve a balance of usage of hardware threads across all VMs in the plurality of VMs.
    Type: Grant
    Filed: June 16, 2014
    Date of Patent: August 15, 2017
    Assignee: International Business Machines Corporation
    Inventors: Vaijayanthimala K. Anand, Dean J. Burdick, Bruce G. Mealey, Dirk Michel
  • Patent number: 9733984
    Abstract: Provided are techniques for multiple stage workload management. A staging queue and a run queue are provided. A workload is received. In response to determining that application resources are not available and that the workload has not been previously semi-started, the workload is added to the staging queue. In response to determining that the application resources are not available and that the workload has been semi-started, and, in response to determining that run resources are available, the workload is started. In response to determining that the application resources are not available and that the workload has been semi-started, and, in response to determining that the run resources are not available, adding the workload to the run queue.
    Type: Grant
    Filed: March 2, 2016
    Date of Patent: August 15, 2017
    Assignee: International Business Machines Corporation
    Inventors: Brian K. Caufield, Ron E. Liu, Sriram K. Padmanabhan, Mi W. Shum, Chun H. Sun, DongJie Wei
  • Patent number: 9727361
    Abstract: Mechanisms are provided for dynamically adjusting assignment of software threads to hardware threads in virtual machine (VM) environments. The mechanisms receive, by a virtual machine manager (VMM), an indication of workload priority from a plurality of VMs. The indication indicates a priority of a workload executing on each VM in the plurality of VMs. The mechanisms provide, by the VMM, an indication of physical resource usage to each VM. The indication of physical resource usage is an indication of physical resource usage across all VMs in the plurality of VMs. The mechanisms automatically adjust, by each VM, assignment of corresponding software threads to hardware threads based on the indication of physical resource usage and a priority of a workload executing on the VM to achieve a balance of usage of hardware threads across all VMs in the plurality of VMs.
    Type: Grant
    Filed: December 12, 2013
    Date of Patent: August 8, 2017
    Assignee: International Business Machines Corporation
    Inventors: Vaijayanthimala K. Anand, Dean J. Burdick, Bruce G. Mealey, Dirk Michel
  • Patent number: 9727272
    Abstract: For increased destaging efficiency by smoothing destaging tasks to reduce long input/output (I/O) read operations in a computing environment, the ramp up of the destaging tasks is adjusted based on speed of disk drives when smoothing the destaging of storage tracks between a desired number of destaging tasks and a current number of destaging tasks by calculating destaging tasks according to one of a standard time interval and a variable recomputed destaging task interval.
    Type: Grant
    Filed: October 2, 2014
    Date of Patent: August 8, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Lokesh M. Gupta
  • Patent number: 9720690
    Abstract: A method of improving software architecture by untangling undesired code level dependencies is provided herein. The method includes the following stages: generating an abstract representation of a computer code in a form of a code model; recording manipulations to the computer code applied by a user to the code model; calculating a series of refactorings in the computer code that represents the recorded manipulation; and carrying out the refactorings within the computer code. Specifically, some of the refactorings include separating low level software elements on the method level in response to the user manipulations of the model.
    Type: Grant
    Filed: November 13, 2011
    Date of Patent: August 1, 2017
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Ran Ettinger, Yishai Feldman, Maayan Goldstein
  • Patent number: 9720716
    Abstract: Various embodiments are generally directed to the provision and use of various hardware and software components of a computing device to monitor the state of layered virtual machine (VM) monitoring software components. An apparatus includes a first processor element; and logic to receive an indication that a first timer has reached an end of a first period of time, monitor execution of a VMM (virtual machine monitor) watcher by a second processor element, determine whether the second processor element completes execution of the VMM watcher to verify integrity of a VMM before a second timer reaches an end of a second period of time, and transmit an indication of the determination to a computing device. Other embodiments are described and claimed.
    Type: Grant
    Filed: March 12, 2013
    Date of Patent: August 1, 2017
    Assignee: INTEL CORPORATION
    Inventors: Mahesh S. Natu, Shamanna M. Datta
  • Patent number: 9710305
    Abstract: Disclosed aspects manage virtual machine migration on a shared pool of configurable computing resources. A virtual machine is monitored in order to identify a set of migration data with respect to the virtual machine. A set of migration events is detected with respect to the virtual machine. Based on the set of migration events, the set of migration data is collected. In response to a triggering event, a determination is made whether to migrate the virtual machine from a current host based on the set of migration data. In accordance with the determination, a selection can be made whether to migrate the virtual machine from the current host.
    Type: Grant
    Filed: November 12, 2015
    Date of Patent: July 18, 2017
    Assignee: International Business Machines Corporation
    Inventors: Joseph W. Cropper, Taylor D. Peoples
  • Patent number: 9712404
    Abstract: In performance estimation when the configuration of a computer system is changed, the influence, on performance, of a temporary increase in load to a computer system due to reallocation of a process request allocated to a degenerated server to another server as a result of server degeneration is taken into consideration. In an embodiment, an information processing device which evaluates the performance of the computer system estimates the performance of the computer system when operation of a server included in the computer system is stopped based on the throughput required for the server at the time of operation stop and outputs the estimated performance of the computer system.
    Type: Grant
    Filed: March 7, 2014
    Date of Patent: July 18, 2017
    Assignee: HITACHI, LTD.
    Inventors: Nobuaki Ozaki, Daisuke Iizuka
  • Patent number: 9703572
    Abstract: The detection of whether a local application is managed by a management service is described. In one example, depending upon whether an installation token includes a unique token value, detection logic can determine whether an application is managed or unmanaged based on additional factors. The additional factors include whether a keychain installation token includes a unique token value, the value of the keychain installation token, and a value of a launched flag for the application. Various combinations of those factors and the identification of either a managed or unmanaged status for the application are described. Using the concepts described herein, an unmanaged application can proceed to execute with limited functionality, present a notification that it should be reinstalled by the management service, stop executing, or take other measures.
    Type: Grant
    Filed: June 5, 2015
    Date of Patent: July 11, 2017
    Assignee: AirWatch LLC
    Inventors: Lucas Chen, Raghuram Rajan, Jonathan Blake 'Brannon
  • Patent number: 9703605
    Abstract: A heterogeneous computing system described herein has an energy-efficient architecture that exploits producer-consumer locality, task parallelism and data parallelism. The heterogeneous computing system includes a task frontend that dispatches tasks and updated tasks from queues for execution based on properties associated with the queues, and execution units that include a first subset acting as producers to execute the tasks and generate the updated tasks, and a second subset acting as consumers to execute the updated tasks. The execution units includes one or more control processors to perform control operations, vector processors to perform vector operations, and accelerators to perform multimedia signal processing operations. The heterogeneous computing system also includes a memory backend containing the queues to store the tasks and the updated tasks for execution by the execution units.
    Type: Grant
    Filed: September 4, 2015
    Date of Patent: July 11, 2017
    Assignee: MediaTek, Inc.
    Inventors: Chien-Ping Lu, Hsilin Huang
  • Patent number: 9703592
    Abstract: Disclosed aspects manage virtual machine migration on a shared pool of configurable computing resources. A virtual machine is monitored in order to identify a set of migration data with respect to the virtual machine. A set of migration events is detected with respect to the virtual machine. Based on the set of migration events, the set of migration data is collected. In response to a triggering event, a determination is made whether to migrate the virtual machine from a current host based on the set of migration data. In accordance with the determination, a selection can be made whether to migrate the virtual machine from the current host.
    Type: Grant
    Filed: February 27, 2016
    Date of Patent: July 11, 2017
    Assignee: International Business Machines Corporation
    Inventors: Joseph W. Cropper, Taylor D. Peoples
  • Patent number: 9697029
    Abstract: A hypervisor identifies one or more interrupts of a networking device for a virtual machine. The hypervisor queues the interrupts and determines the execution state of at least one virtual processor of a virtual machine. Upon determining that the execution state of the virtual processor is active, the hypervisor continues queuing the interrupts of the networking device. Upon determining that the execution state of the virtual processor has changed to idle, the hypervisor provides the queued interrupts to the virtual machine.
    Type: Grant
    Filed: October 30, 2014
    Date of Patent: July 4, 2017
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Paolo Bonzini