Patents Examined by Hiren Patel
  • Patent number: 8756585
    Abstract: A monitoring of a server system during an execution of a server system processing logic, includes: during collection and storage of operational metrics by a given thread in a thread-local memory, determining that a checkpoint within the server system processing logic is reached; determining whether a threshold number of checkpoints have been encountered by the given thread; in response to the threshold number of checkpoints having been encountered, determining whether a threshold time interval since a last rollup of the collected operational metrics has been exceeded; and in response to the threshold time interval being exceeded, performing a rollup of the collected operational metrics from the thread-local memory to an accumulation point in a shared memory, where the accumulation point stores aggregated operational metrics from a plurality of threads.
    Type: Grant
    Filed: December 29, 2009
    Date of Patent: June 17, 2014
    Assignee: International Business Machines Corporation
    Inventors: Paul M Bird, David Kalmuk, Scott D Walkty
  • Patent number: 8752028
    Abstract: A monitoring of a server system during an execution of a server system processing logic, includes: during collection and storage of operational metrics by a given thread in a thread-local memory, determining that a checkpoint within the server system processing logic is reached; determining whether a threshold number of checkpoints have been encountered by the given thread; in response to the threshold number of checkpoints having been encountered, determining whether a threshold time interval since a last rollup of the collected operational metrics has been exceeded; and in response to the threshold time interval being exceeded, performing a rollup of the collected operational metrics from the thread-local memory to an accumulation point in a shared memory, where the accumulation point stores aggregated operational metrics from a plurality of threads.
    Type: Grant
    Filed: February 22, 2013
    Date of Patent: June 10, 2014
    Assignee: International Business Machines Corporation
    Inventors: Paul M Bird, David Kalmuk, Scott D Walkty
  • Patent number: 8745603
    Abstract: A runtime system implemented in accordance with the present invention provides an application platform for parallel-processing computer systems. Such a runtime system enables users to leverage the computational power of parallel-processing computer systems to accelerate/optimize numeric and array-intensive computations in their application programs. This enables greatly increased performance of high-performance computing (HPC) applications.
    Type: Grant
    Filed: May 10, 2013
    Date of Patent: June 3, 2014
    Assignee: Google Inc.
    Inventors: Morgan S. McGuire, Christopher G. Demetriou, Brian K. Grant, Matthew N. Papakipos
  • Patent number: 8707318
    Abstract: The application discloses a generic partitioning manager for partitioning resources across one or more owner nodes. In illustrated embodiments described, the partitioning manager interfaces with the one or more owner nodes through an owner library. A lookup node or application interfaces with the partitioning manager through the lookup library to lookup address or locations of the partitioned resources. In illustrated embodiments, resources are partitioned via the partitioning manager in response to lease request messages from an owner library. In illustrated embodiments, the lease grant message includes a complete list of the leases for the owner node.
    Type: Grant
    Filed: December 18, 2007
    Date of Patent: April 22, 2014
    Assignee: Microsoft Corporation
    Inventors: Atul Adya, Alastair Wolman, John D. Dunagan
  • Patent number: 8694999
    Abstract: Described is a method for determining whether a first partition selected to run in a time window is a member of a transaction, the transaction including at least one further partition, determining a tail partition from among the at least one further partition and scheduling the tail partition to run in the time window. A transaction scheduler having a transaction determination module determining whether a first partition selected to run in a time window is a member of a transaction, the transaction including at least one further partition, a tail determination module determining a tail partition from among the at least one further partition and a scheduling module scheduling the tail partition to run in the time window.
    Type: Grant
    Filed: December 7, 2006
    Date of Patent: April 8, 2014
    Assignee: Wind River Systems, Inc.
    Inventor: Anand N. Sundaram
  • Patent number: 8689215
    Abstract: Methods, data structures, instructions, and techniques for structured exception handling for user-level threads in a multi-threading system are provided. Registered filter routines may be dispatched to a thread unit not managed by the operating system (OS). The dispatch may occur by allowing an OS-managed thread unit (proxy) to invoke the OS-provided structured exception handling service (including dispatcher) on behalf of the sequestered thread unit. Alternatively, an OS-managed thread unit may include dispatch code and may, without OS intervention, dispatch the filter routine to the sequestered thread unit. Other embodiments are also described and claimed.
    Type: Grant
    Filed: December 19, 2006
    Date of Patent: April 1, 2014
    Assignee: Intel Corporation
    Inventors: Richard A. Hankins, Gautham N. Chinya, Hong Wang, David K. Poulsen, Shirish Aundhe, Baiju V. Patel, Sanjiv M. Shah
  • Patent number: 8683483
    Abstract: Load-balancing threads among a plurality of processing units. The method may include a first processing unit executing a plurality of software threads using a respective plurality of hardware strands. The plurality of hardware strands may share at least one hardware resource within the first processing unit. The method may further include monitoring the at least one hardware resource, wherein, for each respective hardware strand. Monitoring may include, for each respective hardware resource of the at least one hardware resource: maintaining information regarding the respective hardware strand requesting to use the respective hardware resource but failing to do so because the respective hardware resource is in use, comparing the information to a threshold, and generating an interrupt if the information exceeds the threshold. One or more load-balancing operations may be performed in response to the interrupt.
    Type: Grant
    Filed: March 25, 2008
    Date of Patent: March 25, 2014
    Assignee: Oracle America, Inc.
    Inventor: Paul H. Hohensee
  • Patent number: 8667512
    Abstract: Various embodiments include methods and systems provide a distributed settings registry with access protection definable by application developers. Distributed settings registry may be implemented across different technologies with customizable privileges and the dynamic ability to plug different nodes into the registry tree. The settings registry may exist under a registry interface so the applications invoking the registry need not be concerned with where or how the settings data is stored. Each node in the tree of the registry may define its own privilege requirements and storage technology. Nodes may be “native” (i.e., fully supported within the setting registry system software) or “non-native” (i.e., defined by developers for specific applications).
    Type: Grant
    Filed: August 31, 2009
    Date of Patent: March 4, 2014
    Assignee: QUALCOMM Incorporated
    Inventor: Michael Mager
  • Patent number: 8645960
    Abstract: A computing device is provided having a central processing unit, random access memory, and read only memory interconnected by a bus. The central processing unit is configured to execute a plurality of programming instructions representing a plurality of software objects. The software objects comprise a read queue for storing unprocessed packets and a write queue for storing processed packets. The software objects include a reader thread for reading packets from the read queue and a lock free queue for receiving packets received via the reader thread. The software objects also include at least one processor thread for performing an operation on the packets in the lock free queue. The software objects include a writer thread for writing packets that have been processed by the at least one processor thread to the write queue.
    Type: Grant
    Filed: July 23, 2007
    Date of Patent: February 4, 2014
    Assignee: Redknee Inc.
    Inventors: John (Chun Fung) Yuen, Zhe Li
  • Patent number: 8645956
    Abstract: A method and a computer system are disclosed for designing and/or providing computer-aided tasks for medical task flows. In at least one embodiment, the method includes providing one or more tasks of at least one task flow, which can exchange data with one or a number of other tasks, in so far as they comply with at least one requirement for exchanging data; providing task flow management, which manages requirements in respect of a task and grants a task access for a task flow according to at least one of the requirements; providing at least one task container, which is made available as host for a task, in so far as the task complies with at least one requirement for access to the host; and providing at least one domain platform, which is used to convert the functionality and logic of at least one task, in so far as the task complies with at least one requirement in respect of the conversion.
    Type: Grant
    Filed: February 25, 2010
    Date of Patent: February 4, 2014
    Assignee: Siemens Aktiengesellschaft
    Inventors: Detlef Becker, Karlheinz Dorn, Vladyslav Ukis, Hans-Martin Von Stockhausen
  • Patent number: 8640137
    Abstract: Embodiments of an event-driven resource management technique may enable the management of cluster resources at a sub-computer level (e.g., at the thread level) and the decomposition of jobs at an atomic (task) level. A job queue may request a resource for a job from a resource manager, which may locate a resource in a resource list and grant the resource to the job queue. After the resource is granted, the job queue sends the job to the resource, on which the job may be partitioned into tasks and from which additional resources may be requested from the resource manager. The resource manager may locate additional resources in the list and grant the resources to the resource. The resource sends the tasks to the granted resources for execution. As resources complete their tasks, the resource manager is informed so that the status of the resources in the list can be updated.
    Type: Grant
    Filed: August 30, 2010
    Date of Patent: January 28, 2014
    Assignee: Adobe Systems Incorporated
    Inventors: Sandford P. Bostic, Stephen Paul Reiser, Andrey J. Bigney
  • Patent number: 8615764
    Abstract: Resources of a partitionable computer system are partitioned into: (i) a first partition for first jobs, the first jobs being at least one of small and short running; and (ii) a second partition for second jobs, the second jobs being at least one of large and long running. The computer system is run as partitioned in the partitioning step and the partitioning is periodically re-evaluated against at least one threshold for at least one of the partitions. If the periodic re-evaluation suggests that one of the first and second partitions is underutilized, the resources of the partitionable computer system are dynamically re-partitioned to reassign at least some of the resources of the partitionable computer system from the underutilized one of the first and second partitions to another one of the first and second partitions.
    Type: Grant
    Filed: March 31, 2010
    Date of Patent: December 24, 2013
    Assignee: International Business Machines Corporation
    Inventors: Valentina Salapura, Seetharami Seelam
  • Patent number: 8584122
    Abstract: There is provided a method to schedule execution of a plurality of batch jobs by a computer system. The method includes: reading one or more constraints that constrain the execution of the plurality of batch jobs by the computer system and a current load on the computer system; grouping the plurality of batch jobs into at least one run frequency that includes at least one batch job; setting the at least one run frequency to a first run frequency; computing a load generated by each batch job in the first run frequency on the computer system based on each batch job's start time; and determining an optimized start time for each batch job in the first run frequency that meets the one or more constraints and that distributes each batch job's load on the computer system using each batch job's computed load and the current load.
    Type: Grant
    Filed: December 27, 2006
    Date of Patent: November 12, 2013
    Assignee: eBay Inc.
    Inventor: Josep M. Ferrandiz
  • Patent number: 8578387
    Abstract: An embodiment of a computing system is configured to process data using a multithreaded SIMD architecture that includes heterogeneous processing engines to execute a program. The program is constructed of various program instructions. A first type of the program instructions can only be executed by a first type of processing engine and a third type of program instructions can only be executed by a second type of processing engine. A second type of program instructions can be executed by the first and the second type of processing engines. An assignment unit may be configured to dynamically determine which of the two processing engines executes any program instructions of the second type in order to balance the workload between the heterogeneous processing engines.
    Type: Grant
    Filed: July 31, 2007
    Date of Patent: November 5, 2013
    Assignee: Nvidia Corporation
    Inventors: Peter C. Mills, Stuart F. Oberman, John Erik Lindholm, Samuel Liu
  • Patent number: 8572618
    Abstract: An extensible process design provides an ability to dynamically inject changes into a running process instance, such as a BPEL instance. Using a combination of BPEL, rules and events, processes can be designed to allow flexibility in terms of adding new activities, removing or skipping activities and adding dependent activities. These changes do not require redeployment of the orchestration process and can affect the behavior of in-flight process instances. The extensible process design includes a main orchestration process, a set of task execution processes and a set of generic trigger processes. The design also includes a set of rules evaluated during execution of the tasks of the orchestration process. The design can further include three types of events: an initiate process event, a pre-task execution event and a post-task execution event. These events and rules can be used to alter the behavior of the main orchestration process at runtime.
    Type: Grant
    Filed: May 7, 2010
    Date of Patent: October 29, 2013
    Assignee: Oracle International Corporation
    Inventors: Khanderao Kand, Fang Liu, Bhagat Nainani, Shailesh Kumar
  • Patent number: 8549515
    Abstract: To provide collaborative hosting of applications, the present invention first generates a virtual operating system image consisting of operating system code, application code, runtime code and supporting data repositories. The virtual operating system image may then be sent to and deploying on a physical computer or computer terminal at another location.
    Type: Grant
    Filed: March 28, 2008
    Date of Patent: October 1, 2013
    Assignee: International Business Machines Corporation
    Inventors: Norman Bobroff, Andrzej Kochut
  • Patent number: 8533700
    Abstract: A method, system, and a program product for managing updates to executable programming code on a computer system in a computer network. A maintenance service utility is configured to launch a maintenance procedure at a specified time during operation of the computer system. Operation of a maintenance timer utility is activated during startup of the computer system to track and monitor the amount of time the computer system has been operating since startup. The maintenance service utility determines if there any updates to the executable programming code that require installation. The maintenance procedure is launched after a specified time if there are updates to the executable programming code. The computer system is automatically rebooted to install the updates to the executable programming code. A maintenance service editor utility enables the maintenance service utility to be configured to launch the maintenance procedure after a specified time if there are updates to the executable programming code.
    Type: Grant
    Filed: April 11, 2006
    Date of Patent: September 10, 2013
    Assignee: Open Invention Networks, LLC
    Inventor: Colin Lee Feeser
  • Patent number: 8522237
    Abstract: This description provides tools and techniques for virtualizing embedded systems. Systems are described for embedding into a vehicle, with the systems including subsystems and centralized physical platforms that include computing resources operating on behalf of the subsystems. Systems may also include shared bus systems that place the centralized physical platforms and the subsystems in communication with one another. The centralized physical platforms may also include virtualization layers for operating virtual machines, with the virtual machines being associated respectively with the subsystems.
    Type: Grant
    Filed: April 9, 2008
    Date of Patent: August 27, 2013
    Assignee: The Boeing Company
    Inventor: Jonathan Nicholas Hotra
  • Patent number: 8522236
    Abstract: A method and system for establishing a virtualized environment includes booting a first virtual machine monitor to establish a first virtual machine and booting a second virtual machine monitor in the first virtual machine. The first and second virtual machine monitors may be hypervisors. The method may also include directing management interrupts, such as system management interrupts and/or platform management interrupts, to the first virtual machine monitor.
    Type: Grant
    Filed: December 28, 2007
    Date of Patent: August 27, 2013
    Assignee: Intel Corporation
    Inventors: Vincent J. Zimmer, Michael A. Rothman
  • Patent number: 8499298
    Abstract: A multiprocessing transaction recovery manager, operable with a transactional application manager and a resource manager, comprises a threadsafety indicator for receiving and storing positive and non-positive threadsafety data of at least one transactional component managed by one of the transactional application manager and the resource manager; a commit protocol component for performing commit processing for the at least one transactional component; and a thread selector responsive to positive threadsafety data for selecting a single thread for the commit processing to be performed by the commit protocol component. The thread selector is further operable to select plural threads for the commit processing to be performed by the commit protocol component responsive to non-positive threadsafety data.
    Type: Grant
    Filed: November 5, 2010
    Date of Patent: July 30, 2013
    Assignee: International Business Machines Corporation
    Inventors: Ian James Mitchell, John Simon Tilling