Patents Examined by Diem Cao
  • Patent number: 10175705
    Abstract: This invention relates to a power mapping and modeling system for integrated circuits.
    Type: Grant
    Filed: February 18, 2014
    Date of Patent: January 8, 2019
    Assignee: Brown University
    Inventors: Sherief Reda, Abdullah Nowroz, Kapil Dev
  • Patent number: 10114853
    Abstract: A method, a computer program product, and a system for performing a batch processing are provided. The batch processing includes initializing a set of elements corresponding to a set of resources to produce an initialized group and chaining the initialized group to previously initialized elements to produce an element batch, when the previously initialized elements are available. The batch processing further includes setting a system lock on the set of resources after the element batch is produced; executing a service routine to move the element batch to a queue by referencing first and last elements of the element batch; and releasing the system lock on the set of resources once the service routine is complete.
    Type: Grant
    Filed: September 4, 2015
    Date of Patent: October 30, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Hom, Charles E. Mari, Robert J. Miller, Jr., Harris M. Morgenstern, Elpida Tzortzatos
  • Patent number: 10108456
    Abstract: A method, system, and apparatus are provided for accelerated atomic resource allocation on a multiprocessor platform. In particular, a resource allocation engine (RAE) performs the following: counting available units for each of the one or more resources; parsing a multi-resource ticket (MRT) for a processor, wherein the parsing identifies one or more requested resource types, each resource type being paired with a requested resource units; comparing the multi-resource ticket to one or more resource queues for the requested resource types, wherein the comparing determines an availability status of at least one the requested resource types; and based on the availability status, calculating whether or not all of the requested resource types can be allocated for the processor, wherein the calculating is completed before allocating a next requested resource for a next processor.
    Type: Grant
    Filed: February 2, 2016
    Date of Patent: October 23, 2018
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Harsh Jain, Abdulnour Toukmaji
  • Patent number: 10108774
    Abstract: A method for generating a toolpath includes providing a plurality of machining target models based on a model of an engineering object, assigning the machining target models to CAM clients operated by users, receiving a machining instruction sequence from each CAM client, and machining a part by executing each of the machining instruction sequences on one or more machine tools. The machining instruction sequences may be merged into a single machining instruction sequence before being executed by a machine tool. The machining target models may be created manually or automatically generated. In certain embodiments, the machining target models are generated by spatially partitioning the model of the engineering object. In one embodiment, features that are allocated to a separate machining process are removed from the machining target models. A corresponding apparatus is also disclosed herein.
    Type: Grant
    Filed: April 24, 2014
    Date of Patent: October 23, 2018
    Assignee: Brigham Young University
    Inventors: Thomas Trevor Nysetvold, Jordan Lowell Johnson, Eric Joseph Wardell, Charles Gregory Jensen
  • Patent number: 10108466
    Abstract: A method, a computer program product, and a system for performing a batch processing are provided. The batch processing includes initializing a set of elements corresponding to a set of resources to produce an initialized group and chaining the initialized group to previously initialized elements to produce an element batch, when the previously initialized elements are available. The batch processing further includes setting a system lock on the set of resources after the element batch is produced; executing a service routine to move the element batch to a queue by referencing first and last elements of the element batch; and releasing the system lock on the set of resources once the service routine is complete.
    Type: Grant
    Filed: June 29, 2015
    Date of Patent: October 23, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Hom, Charles E. Mari, Robert Miller, Jr., Harris M. Morgenstern, Elpida Tzortzatos
  • Patent number: 10102041
    Abstract: A method includes tracking, for each of a plurality of workloads, a wear rate incurred by a component of a given component type as a result of processing an instance of the workload on a compute node that includes the component. The method further comprises determining a remaining lifespan for a plurality of components in a plurality of compute nodes, and identifying a component from among the plurality of components having a remaining lifespan of less than a first threshold amount. Sill further, the method comprises identifying an instance of one of the workloads that needs processing and has a wear rate greater than a second threshold amount, and processing the identified workload instance on the identified component.
    Type: Grant
    Filed: March 30, 2016
    Date of Patent: October 16, 2018
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Paul Artman, Gary D. Cudak, Fred A. Bower, III, Ajay Dholakia
  • Patent number: 10083048
    Abstract: Provided are systems, methods, and architectures for a neutral input/output (NIO) platform that includes a core that supports one or more services. The core may be thought of as an application engine that runs task specific applications called services. The services are constructed using defined templates that are recognized by the core, although the templates can be customized. The core is designed to manage and support the services, and the services in turn manage blocks that provide processing functionality to their respective service. Due to the structure and flexibility provided by the NIO platform's core, services, and blocks, the platform can be configured to a synchronously process any input signals from one or more sources and produce output signals in real time.
    Type: Grant
    Filed: September 26, 2016
    Date of Patent: September 25, 2018
    Assignee: n.io Innovation, LLC
    Inventors: Douglas A. Standley, Matthew R. Dodge, Randall E. Bye
  • Patent number: 10082777
    Abstract: A system program includes a procedure library in which at least a procedure for controlling execution of a control program and a procedure for controlling output of output data and input of input data are included. If schedule-building data including execution order specifications for the procedures included in the procedure library is stored in a storage section, the system program causes a microprocessor to execute the procedures included in the procedure library in accordance with the procedure execution order specifications included in schedule-building data.
    Type: Grant
    Filed: March 12, 2012
    Date of Patent: September 25, 2018
    Assignee: OMRON Corporation
    Inventors: Yoshihide Nishiyama, Shigeyuki Eguchi, Osamu Hamasaki
  • Patent number: 10062081
    Abstract: A method provides real world contexts to computer applications for outputting data describing one or more real world contexts. Components are identified in a computer application which implement instances of real world contexts and application components are updated so that a real world context instance is active during the execution by the application of a function for the real world context instance. Each real world context instance may have an instance identifier and is referenced by type of real world context.
    Type: Grant
    Filed: March 17, 2005
    Date of Patent: August 28, 2018
    Assignee: International Business Machines Corporation
    Inventors: Graham C. Charters, Amanda E. Chessell, Michael Friess, Vernon M. Green, Keith B. Mantell
  • Patent number: 10048977
    Abstract: Methods and Apparatus for Multi-Stage VM Virtual Network Function and Virtual Service Function Chain Acceleration for NFV and needs-based hardware acceleration. Compute platform hosting virtualized environments including virtual machines (VMs) running service applications performing network function virtualization (NFV) employ Field Programmable Gate Array (FPGA) to provide a hardware-based fast path for performing VM-to-VM and NFV-to-NFV transfers. The FPGAs, along with associated configuration data are also configured to support dynamic assignment and performance of hardware-acceleration to offload processing tasks from processors in virtualized environments, such as cloud data centers and the like.
    Type: Grant
    Filed: December 22, 2015
    Date of Patent: August 14, 2018
    Assignee: Intel Corporation
    Inventors: Stephen T. Palermo, Thomas E. Willis, Kapil Sood, Ilango S. Ganga, Scott P. Dubal, Pradeepsunder Ganesh, Jesse C. Brandeburg
  • Patent number: 10042355
    Abstract: A decision support tool to assist decision-making in the operation of a facility. The decision support tool allows a user to perform planning and scheduling of the events within a facility so that established economic goals do not collide with feasibility of a schedule. This is achieved by flexible time modeling, which introduces a “look-ahead” planning and scheduling technique. This technique analyzes several time periods of the schedule in light of upcoming dominant events, in order for each segment of the schedule to remain as consistent with the planning objectives as possible.
    Type: Grant
    Filed: January 5, 2015
    Date of Patent: August 7, 2018
    Assignee: EXXONMOBIL RESEARCH AND ENGINEERING COMPANY
    Inventors: Anantha Sundaram, Philip H. Warrick, Jayanth Balasubramanian, Ahmet B. Keha, Gary R. Kocis, Joseph W. Evans
  • Patent number: 10037199
    Abstract: In an example, a method of creating a secured workspace in a mobile device includes installing an application management agent on the mobile device, wherein the application management agent is configured to communicate with a remote server to obtain a security policy. The method further includes installing a wrapped enterprise application to the mobile device. The wrapped enterprise application includes code injected therein that, when executed by the mobile device, causes the mobile device to intercept at least a portion of instructions being executed by the wrapped enterprise application and to interpose alternative instructions that comply with the security policy. The method further includes communicating among the wrapped enterprise application, the application management agent, and other wrapped enterprise applications through pasteboard and uniform resource locator (URL) handlers provided by an operating system of the mobile device.
    Type: Grant
    Filed: April 17, 2015
    Date of Patent: July 31, 2018
    Assignee: VMware, Inc.
    Inventors: Perry Hung, Harvey Tuch, Craig F. Newell, Haim Tebeka
  • Patent number: 10037144
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for precisely tracking memory usage in a multi-process computing environment. One of the methods includes implementing an instance of a memory usage tracker (MUT) in each process running in a node of a computer system. A MUT can maintain an account of memory usage for each of multiple logical owners running on a process on which the MUT is running. The MUT can determine an actual memory quota for each owner, and enforce the actual memory quota of the owner. Enforcing the actual memory quota of the owner can include receiving each memory allocation request, checking each allocation request and a current state of the account against the actual quota, approving or rejecting each allocation request, communicating the approval or rejection to an underlying memory manager, and updating the owner account for each approved allocation request.
    Type: Grant
    Filed: June 15, 2015
    Date of Patent: July 31, 2018
    Assignee: Pivotal Software, Inc.
    Inventors: Mohammad Foyzur Rahman, George Constantin Caragea, Carlos Garcia-Alvarado, Michail Petropoulos
  • Patent number: 10031781
    Abstract: A method for estimating job start times on a system may include: performing a first simulation of the system by a first process to generate a first estimate of the start time based a first snapshot of the computing system; and performing a second simulation of the system to generate a second estimate of the start time. The first and second estimates may each be either a distinct time estimate or a range of time estimate, depending on whether the simulations dispatches the job before the respective first and second processes end. The method may then include generating a fifth estimate of the time that the computing job will start by a third process based on estimates respectively generated by the first and second processes.
    Type: Grant
    Filed: November 24, 2015
    Date of Patent: July 24, 2018
    Assignee: International Business Machines Corporation
    Inventors: Chong Chen, Zhaohui Ding, Xiu Qiao Li, Rongsong Shen, Michael J. Spriggs, Wang Qi
  • Patent number: 10031668
    Abstract: Implementations of the disclosure provides for determining status of a host operation without accessing the host in a shared storage environment. A method of the disclosure includes acquiring, by a processing device, a lease on a storage volume associated with a storage domain. The lease grants the processing device exclusive access to the storage volume. Responsive to acquiring the lease, a data structure associated with the storage volume is modified to indicate that data of the storage volume is invalid. An update operation is initiated with respect to the storage volume. Upon completion of the update operation, the data structure is updated to indicate that the data valid and the lease on the storage volume is released.
    Type: Grant
    Filed: February 29, 2016
    Date of Patent: July 24, 2018
    Assignee: Red Hat Israel, Ltd.
    Inventors: Adam Litke, Nir Soffer, Liron Aravot
  • Patent number: 10031776
    Abstract: A method of scheduling jobs includes receiving a plurality of jobs that require execution, identifying a plurality of agents that are configured to execute at least one of the plurality of jobs, identifying a plurality of time windows in which the plurality of agents are, available to execute the plurality of jobs, identifying a constraint rule on the execution of the plurality of jobs, and identifying a plurality of possible execution paths. Execution paths that do not comply with the constraint;rule are removed from the plurality of possible execution paths to provide a preferred set of execution paths. The method further includes calculating a metric for each of the preferred set of execution paths, selecting an execution path in response to the metric, and causing the plurality of jobs to be executed by at least one of the agents according to the selected execution path.
    Type: Grant
    Filed: November 21, 2016
    Date of Patent: July 24, 2018
    Assignee: CA, INC.
    Inventor: Apurv Raj
  • Patent number: 10031774
    Abstract: An implementation of the disclosure provides a scheduler for scheduling multi-phase computing jobs where each phase utilizes different amount of resources for executing the jobs in that phase. To schedule the jobs, the scheduler receives a profile for a computing job describing the execution phases associated with one more complied executable modules. The profile includes a plurality of job phase definitions. Each job phase definition includes an estimated amount of computing resources utilized by executing a respective job phase. An identifier of the computing job is appended to a job queue. A combination of one or more computing jobs is selected from the job queue. Thereupon, this combination is scheduled for execution, if it is determined that a total of the estimated amount of computing resources for executing computing jobs in each of one or more of the respective jobs phases satisfies a threshold resource amount associated with the combination.
    Type: Grant
    Filed: October 15, 2015
    Date of Patent: July 24, 2018
    Assignee: Red Hat, Inc.
    Inventor: Huamin Chen
  • Patent number: 10025599
    Abstract: A system and method for providing connectivity as a service are disclosed. In one embodiment, the system establishes a connection between a driver and a connectivity service; receives, at the connectivity service, a request from the driver; establishes a connection with one or more data sources associated with the request; and sends the request to the one or more data sources, the one or more data sources performing an action based on the request.
    Type: Grant
    Filed: February 5, 2014
    Date of Patent: July 17, 2018
    Assignee: Progress Software Corporation
    Inventors: John Goodson, Michael Benedict, Robert Steward, Mark Biamonte, Marc Van Cappellen, Steven Veum
  • Patent number: 10026070
    Abstract: Systems and methods are provided for managing and/or executing cloud compute instances that may be pre-empted by their providers, known in at least one provider as “spot instances”. Various aspects manage early termination (i.e., before customer deallocation or compute task completion) of spot instances, enabling improved utilization, and increasing reliability of executing tasks on spot instances. In some embodiments, systems and/or methods are provided for prediction of when spot instance kills are likely to occur. These systems and/or methods can gracefully handle spot kills issued by Providers (e.g., trigger preservation operations), trigger transitions to spot instances at another Provider, trigger increased bidding to preserve current spot instances, and/or trigger a premium payment to allow for execution of preservation operations, among other options. Other embodiments enable customers to directly manage instance kill operations (e.g.
    Type: Grant
    Filed: April 28, 2016
    Date of Patent: July 17, 2018
    Assignee: Solano Labs, Inc.
    Inventors: Christopher A. Thorpe, William Josephson, Jay Moorthi, Steven R. Willis
  • Patent number: 10025619
    Abstract: Utilizing a computing device to determine and enforce limits on cloud computing containers transmitting data over a network. A determination is made of total container time remaining available for a first container to execute in a computing environment, the first container utilizing one or more processor threads executing on a computing device. Processor packet transmission time is determined for processing and transmission of a packet or a batch of packets via a network stack associated with the computing device by the one or more processor threads utilized by the first container. An updated total container time remaining for the first container is calculated, accounting for the processor packet transmission time. The updated total container time remaining is enforced by descheduling all processor threads utilized by the first container if the updated total container time remaining is insufficient.
    Type: Grant
    Filed: November 3, 2017
    Date of Patent: July 17, 2018
    Assignee: International Business Machines Corporation
    Inventors: Wesley M. Felter, Junaid Khalid, Karthick Rajamani, Eric Rozner, Cong Xu