Patents Examined by Paul Mills
  • Patent number: 10346195
    Abstract: A processor is described having logic circuitry of a general purpose CPU core to save multiple copies of context of a thread of the general purpose CPU core to prepare multiple micro-threads of a multi-threaded accelerator for execution to accelerate operations for the thread through parallel execution of the micro-threads.
    Type: Grant
    Filed: December 29, 2012
    Date of Patent: July 9, 2019
    Assignee: Intel Corporation
    Inventors: Oren Ben-Kiki, Ilan Pardo, Eliezer Weissmann, Robert Valentine, Yuval Yosef
  • Patent number: 10095597
    Abstract: Disclosed aspects include managing a set of wear-leveling data with respect to a set of physical cores of a set of compute nodes. A set of physical cores of the set of compute nodes may be monitored using a set of processor utilization resource registers (PURRs) to identify the set of wear-leveling data. By monitoring the set of physical cores of the set of compute nodes, a set of thread events with respect to the set of physical cores of the set of compute nodes may be detected. Based on the set of thread events, the set of wear-leveling data may be determined. The set of wear-leveling data may then be established in a data store. The wear leveling data may be used to manage asset placement with respect to a shared pool of configurable computing resources.
    Type: Grant
    Filed: January 13, 2016
    Date of Patent: October 9, 2018
    Assignee: International Business Machines Corporation
    Inventors: Chethan Jain, Maria R. Ward
  • Patent number: 10089136
    Abstract: Techniques are disclosed for monitoring the performance of transient virtual volumes created for a virtual machine. Each transient virtual volume is created in response to a first trigger event, used by the virtualization environment solely to perform a single function supporting execution of the virtual machine, and deleted in response to a second trigger event. When creation of a current transient virtual volume is detected, and while the virtualization environment uses the current transient virtual volume to perform a single function supporting execution of the virtual machine, performance data is collected for the current transient virtual volume, and combined with performance data collected for at least one other, previously deleted transient virtual volume that was used solely to perform the same single function supporting execution of the same virtual machine. The combined performance data is represented as performance data for a single monitored virtual volume associated with the virtual machine.
    Type: Grant
    Filed: September 28, 2016
    Date of Patent: October 2, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Minjie Zhang, Arun Joseph, Yue Zhao, Peiyu Zhuang
  • Patent number: 10013279
    Abstract: A method, a computer program product, and a computer system for processing interrupt requests in a computer system. The computer system disables, for a processor, an interrupt request for threads other than an interrupt request handling thread. The computer system configures the processor to route the interrupt request to the interrupt request handling thread. The computer system determines, by the interrupt request handling thread, whether one of the threads needs to process the interrupt request. The computer presents, by the interrupt request handling thread, the interrupt request to the one of the threads, in response to determining that the one of the threads needs to process the interrupt request.
    Type: Grant
    Filed: July 28, 2015
    Date of Patent: July 3, 2018
    Assignee: International Business Machines Corporation
    Inventors: Christine Axnix, Ute Gaertner, Jakob C. Lang, Angel Nunez Mencias
  • Patent number: 10002022
    Abstract: A method, a computer program product, and a computer system for processing interrupt requests in a computer system. The computer system disables, for a processor, an interrupt request for threads other than an interrupt request handling thread. The computer system configures the processor to route the interrupt request to the interrupt request handling thread. The computer system determines, by the interrupt request handling thread, whether one of the threads needs to process the interrupt request. The computer presents, by the interrupt request handling thread, the interrupt request to the one of the threads, in response to determining that the one of the threads needs to process the interrupt request.
    Type: Grant
    Filed: September 24, 2015
    Date of Patent: June 19, 2018
    Assignee: International Business Machines Corporation
    Inventors: Christine Axnix, Ute Gaertner, Jakob C. Lang, Angel Nunez Mencias
  • Patent number: 9990239
    Abstract: A system and method for cooperative notification offloading supports thread notification offloading in a multi-threaded messaging system such as a distributed data grid. Pending notifiers are maintained in a collection of pending notifiers. A signaling thread processes a first notifier in the collection of pending notifiers to wake a first thread. The first awoken thread processes additional notifiers in the collection of pending notifiers to wake additional threads. The additional awoken threads can process additional notifiers in a cycle until all pending notifiers in the collection are processed. Such cooperative notification offloading of notifier processing from the signaling thread improves performance of the signaling thread with respect to other tasks thereby improving performance of the signaling thread and the distributed data grid.
    Type: Grant
    Filed: September 16, 2015
    Date of Patent: June 5, 2018
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventor: Mark Falco
  • Patent number: 9904578
    Abstract: Software development data indicative of a development activity is accessed. A component parameter of a component of a software development platform is set, in which the component parameter is based upon, at least in part, an anticipated component workload associated with the development actively. At least one system resource is allocated for the component of the software development platform based upon, at least in part, the component parameter.
    Type: Grant
    Filed: November 29, 2010
    Date of Patent: February 27, 2018
    Assignee: International Business Machines Corporation
    Inventors: Brian C. Schimpf, Arthur Francis Crotty, Shailaja Sthalekar Golikeri, Yuhong Yin
  • Patent number: 9898336
    Abstract: Software development data indicative of a development activity is accessed. A component parameter of a component of a software development platform is set, in which the component parameter is based upon, at least in part, an anticipated component workload associated with the development actively. At least one system resource is allocated for the component of the software development platform based upon, at least in part, the component parameter.
    Type: Grant
    Filed: March 26, 2012
    Date of Patent: February 20, 2018
    Assignee: International Business Machines Corporation
    Inventors: Brian C. Schimpf, Arthur Francis Crotty, Shailaja Sthalekar Golikeri, Yuhong Yin
  • Patent number: 9886324
    Abstract: Disclosed aspects include managing asset placement with respect to a shared pool of configurable computing resources. A set of wear-leveling data may be detected for a set of hosts of the shared pool of computing resources. Based on the wear-leveling data, a placement arrangement for the set of assets may be determined with respect to the set of hosts of the shared pool of configurable computing resources. The placement arrangement may be based on a lesser utilized hardware factor which indicates a lesser likelihood of a hardware error event. Based on the placement arrangement, the set of assets may be placed with respect to the set of hosts of the shared pool of configurable computing resources.
    Type: Grant
    Filed: January 13, 2016
    Date of Patent: February 6, 2018
    Assignee: International Business Machines Corporation
    Inventors: Chethan Jain, Maria R. Ward
  • Patent number: 9875141
    Abstract: Computer systems attempt to manage resource pools of a dynamic number of similar resources and work tasks in order to optimize system performance. Work requests are received into the resource pool having a dynamic number of resources instances. An instance-throughput curve is determined that relates a number of resource instances in the resource pool to throughput of the work requests. A slope of a point on the instance-throughput curve is estimated with stochastic gradient approximation. The number of resource instances for the resource pool is selected when the estimated slope of the instance-throughput curve is zero.
    Type: Grant
    Filed: October 1, 2008
    Date of Patent: January 23, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Joseph L. Hellerstein, Eric Lynn Eilebrecht, Vance Morrison, Paul Ringseth
  • Patent number: 9875145
    Abstract: A method, system and computer-usable medium are disclosed for dynamic load based resource sets that provide flexible assignment of resources to processes with nested resource sets. Resource sets include plural resource subsets so that processes that are assigned to a resource subset can have additional resources flexibly made available by providing additional resources from a parent resource set. A resource threshold is monitored to selectively adjust process resource subset assignments based upon utilization of resources within a resource subset, such as by comparing the number of threads assigned to a resource subset with the number processors available to run the threads.
    Type: Grant
    Filed: December 5, 2013
    Date of Patent: January 23, 2018
    Assignee: International Business Machines Corporation
    Inventors: Mathew Accapadia, Adekunle Bello
  • 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: 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: 9652284
    Abstract: A device includes a memory, and at least one programmable processor configured to determine, for each warp of a plurality of warps, whether a Boolean expression is true for a corresponding thread of each warp, pause execution of each warp having a corresponding thread for which the expression is true, determine a number of active threads for each of the plurality of warps for which the expression is true, sort the plurality of warps for which the expression is true based on the number of active threads in each of the plurality of warps, swap thread data of an active thread of a first warp of the plurality of warps with thread data of an inactive thread of a second warp of the plurality of warps, and resume execution of the at least one of the plurality of warps for which the expression is true.
    Type: Grant
    Filed: October 1, 2013
    Date of Patent: May 16, 2017
    Assignee: QUALCOMM Incorporated
    Inventors: Chunhui Mei, Alexei Vladimirovich Bourd, Lin Chen
  • Patent number: 9626231
    Abstract: Example methods and systems are directed to dispatching database tasks. An application may access data associated with a task. The data may indicate features (e.g., processing functionality) that will be used to complete the task. The application may determine whether all such features are implemented in the database layer. The application may dispatch the task to the database layer if all features are implemented therein. The application may perform the task in the application layer if one or more of the features are not available in the database layer. In some example embodiments, the task involves materials requirements planning. Such a task may include determining, for a given bill of materials (“BOM”), the quantity of materials available on-hand, the quantity available from suppliers, the transport or delivery time for the various quantities, and other data regarding the BOM.
    Type: Grant
    Filed: May 13, 2013
    Date of Patent: April 18, 2017
    Assignee: SAP SE
    Inventors: Jochen Steinbach, Holger Herrmann
  • Patent number: 9612803
    Abstract: A virtual assembly builder for use in virtualization environments, which can be used as a tool for virtualizing installed components in a reference environment, modifying those components if necessary, and then deploying them into another/target environment. Using the virtual assembly builder, a user (e.g., an administrator) can capture the configuration and product/component binaries of existing software components into software appliance artifacts. Appliances can be grouped, and their relationships defined, into software assembly artifacts. Logical connections between appliances within an assembly can be reconfigured by a process of assembly editing. When a desired assembly configuration has been achieved, the assembly can be prepared for, and deployed into, the target environment.
    Type: Grant
    Filed: April 16, 2012
    Date of Patent: April 4, 2017
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Richard P. Mousseau, Mark Nelson, Jon Richards, Troy Schulz, Keith Kelleman, Mark Spotswood, Jeff Berkowitz
  • Patent number: 9571507
    Abstract: A method in an embodiment includes detecting a change for a virtual machine in a virtual server of a virtual network infrastructure, determining whether a virtual security appliance is configured in the virtual server, and sending a request to create the virtual security appliance in the virtual server. The method further includes allowing the virtual machine to initiate when the virtual security appliance is created in the virtual machine. The virtual security appliance performs security inspections on network packets sent from the virtual machine. In more specific embodiments, the method further includes creating an intercept mechanism in the virtual server to intercept the network packets from the virtual machine. In further embodiments, one or more security policies identify one or more virtual security appliances to process the network packets from the virtual machine.
    Type: Grant
    Filed: October 21, 2012
    Date of Patent: February 14, 2017
    Assignee: McAfee, Inc.
    Inventors: Geoffrey Howard Cooper, Manuel Nedbal, Hemang Satish Nadkarni
  • Patent number: 9524192
    Abstract: A workflow is designated for execution across a plurality of autonomous computational entities automatically. Among other things, the cost of computation is balanced with the cost of communication among computational entities to reduce total execution time of a workflow. In other words, a balance is struck between grouping tasks for execution on a single computational entity and segmenting tasks for execution across multiple computational entities.
    Type: Grant
    Filed: May 7, 2010
    Date of Patent: December 20, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Danny van Velzen, Jeffrey van Gogh, Henricus Johannes Maria Meijer
  • Patent number: 9517416
    Abstract: A system and method for dynamically determining parameters of crafting activities for individual users in a virtual space are disclosed. The crafting activity parameters may be determined based on rate of usage of the virtual space by the users. In some examples, a user usage rate of the virtual space may be determined to measure an amount of time a user spend in the virtual space during a period of real-world time. Based on the determined user usage rate of the virtual space, crafting activity parameters may be determined, for example, to balance differences in time spent in the virtual space by the users. In some implementations, for such determinations of the crafting activity parameters, one or more user normalization standards may be obtained.
    Type: Grant
    Filed: April 15, 2013
    Date of Patent: December 13, 2016
    Assignee: Kabam, Inc.
    Inventors: Matthew Curtis, James Koh, Kellen Christopher Smalley, Michael C. Caldarone
  • Patent number: 9495203
    Abstract: An information processing apparatus includes an inclusion relation memory, a correspondence relation memory, a data type identifying unit, a software application identifying unit, and a display controller. The inclusion relation memory stores inclusion relation between multiple data types. The correspondence relation memory stores correspondence relation between the data types and software applications used in input of data. The data type identifying unit analyzes acquired information to identify a data type corresponding to an input area of the acquired information. The software application identifying unit identifies a software application corresponding to each data type included in the identified data type in accordance with the inclusion relation and the correspondence relation. The display controller displays a display part in which the identified software application is used in a display.
    Type: Grant
    Filed: February 15, 2013
    Date of Patent: November 15, 2016
    Assignee: FUJI XEROX CO., LTD.
    Inventor: Yoshiyuki Naito