Patents Examined by Paul V Mills
  • Patent number: 10908916
    Abstract: An apparatus and method are provided for executing a plurality of threads. The apparatus has processing circuitry arranged to execute the plurality of threads, with each thread executing a program to perform processing operations on thread data. Each thread has a thread identifier, and the thread data includes a value which is dependent on the thread identifier. Value generator circuitry is provided to perform a computation using the thread identifier of a chosen thread in order to generate the above mentioned value for that chosen thread, and to make that value available to the processing circuitry for use by the processing circuitry when executing the chosen thread. Such an arrangement can give rise to significant performance benefits when executing the plurality of threads on the apparatus.
    Type: Grant
    Filed: March 2, 2016
    Date of Patent: February 2, 2021
    Assignee: ARM Limited
    Inventors: Timothy Holroyd Glauert, David Hennah Mansell, Rune Holm
  • Patent number: 10908948
    Abstract: Various examples for providing multiple instances of a client application in operating systems that limit execution of the client application to a single process are disclosed. A client device can include an operating system natively configured to generate a single process for an execution of the client application on the client device. A client application can be configured to, in the single process, generate sub-processes for execution of separate instances of the client application. The client application can include at least one user interface that permits creation of, termination of, or toggling between various instances of the client application.
    Type: Grant
    Filed: April 4, 2018
    Date of Patent: February 2, 2021
    Assignee: VMWARE, INC
    Inventors: Yuping Wei, Ke Xiao, Hongsheng Li, An Min Gong, Wenshuo Chen
  • Patent number: 10901800
    Abstract: Systems and methods are provided for parallel processing of datasets with dynamic skew compensation. The disclosed systems and methods may increase the efficiency of dataset processing by imposing maximum size limits on parallel processing environment tasks. The disclosed systems and methods may generate a target partition of a variable, a database storing data elements, a cluster that generates one or more output files based on the target partition and the data elements, and a display device that displays analysis results for the target partition using the one or more output files. Generation may comprise creating a calculation partition, mapping data elements according to the calculation partition, and generating the one or more output files based on the mapped data elements. The calculation partition may depend on a target partition and a uniform partition that partitions values based on one or more of statistical measures and pseudorandom functions.
    Type: Grant
    Filed: September 21, 2016
    Date of Patent: January 26, 2021
    Assignee: Capital One Services, LLC
    Inventors: John Stocker, Sunny Kumar
  • Patent number: 10799796
    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: May 29, 2019
    Date of Patent: October 13, 2020
    Assignee: Kabam, Inc.
    Inventors: Matthew Curtis, James Koh, Kellen Christopher Smalley, Michael C. Caldarone
  • Patent number: 10768961
    Abstract: Generating secondary virtual machine seed image storage is provided. An input is received to deploy a primary virtual machine and a secondary virtual machine based on a golden virtual machine image. In response, the primary virtual machine from the golden virtual machine image on a primary data processing site and the secondary virtual machine from the golden virtual machine image on a secondary data processing site are deployed. Execution of the secondary virtual machine is suspended on the secondary data processing site. Using the golden virtual machine image, a seed image corresponding to the secondary virtual machine is generated that is up-to-date at that point in time in storage at the secondary data processing site to form the secondary virtual machine seed image storage. The secondary virtual machine seed image storage is enabled to receive state data updates from the primary virtual machine on the primary data processing site.
    Type: Grant
    Filed: July 14, 2016
    Date of Patent: September 8, 2020
    Assignee: International Business Machines Corporation
    Inventors: Paul L. Bradshaw, Richard E. Harper, Valentina Salapura
  • Patent number: 10733003
    Abstract: Pooled virtual machine load balancers are described. A system determines whether a number of virtual machine load balancers that are in a pool is less than a specified number. The system creates a calculated number of virtual machine load balancers for the pool if the number of virtual machine load balancers that are in the pool is less than the specified number, the calculated number being equal to the specified number minus the number of virtual machine load balancers that are in the pool. The system receives a request to create a virtual machine environment that requires at least one virtual machine load balancer. The system allocates a virtual machine load balancer from the pool to the virtual machine environment.
    Type: Grant
    Filed: November 3, 2016
    Date of Patent: August 4, 2020
    Assignee: salesforce.com, inc.
    Inventors: Kunal Sanghavi, Vijaysenthil Veeriah, Varun Gupta, Edward David Harris, Tyson Lutz
  • Patent number: 10719345
    Abstract: Methods, computer program products, and systems are presented. The method, computer program products, and systems can include, for instance: obtaining configuration data that specifies a designated runtime container image; selecting a first subset of content of a first container image stored in a system memory, the selecting based on an action referenced in the configuration data; extracting the first subset of content from the first container image, the extracting including providing a second container image that includes the first subset of content of the first container image and is absent of a second subset of content of the first container image; and running the designated runtime container image to provide a runtime container, the designated runtime container image having the first subset of content of the first container image.
    Type: Grant
    Filed: May 16, 2018
    Date of Patent: July 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Yan Du, Lan Luo, Jun Li Zhao, Jian Dong Yin, Li Long Chen
  • Patent number: 10656968
    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: December 14, 2017
    Date of Patent: May 19, 2020
    Assignee: International Business Machines Corporation
    Inventors: Chethan Jain, Maria R. Ward
  • Patent number: 10649747
    Abstract: The invention pertains to a method of implementing packet-processing devices on multi-table datapath processors, comprising of a high-level, Turing-complete programming language that permits programmers to express time-invariant or time-variant packet-processing behavior using general-purpose programming languages, suitable compilation and analysis methods to transform a given input program into a datapath design, and a runtime control program to be executed on a general-purpose processor which can communicate with a configurable datapath element and which configures the datapath element according to the compiled datapath design and which implements appropriate dynamic control (e.g. flow table population) for the configured datapath element.
    Type: Grant
    Filed: October 6, 2016
    Date of Patent: May 12, 2020
    Inventor: Andreas Voellmy
  • Patent number: 10649816
    Abstract: A method dynamically responds to a change in a workload managed by Availability Management Framework (AMF), where the workload is represented by a set of service instances (Sis) protected by a service group (SG) in a cluster. When receiving a notification of the workload change indicating an impacted SI in the set of Sis, the method applies at least one strategy from a collection of SG-level strategies and cluster-level strategies to adjust an amount of resources available to at least the impacted SI. Each SG-level strategy changes one or more configuration attributes within the SG according to a redundancy model used by the SG, and each cluster-level strategy changes one or more configuration attributes within the cluster according to one or more redundancy models used by SGs within the cluster. The method causes the AMF to apply a configuration change to respond to the workload change.
    Type: Grant
    Filed: April 10, 2014
    Date of Patent: May 12, 2020
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Maria Toeroe, Neha Pawar
  • Patent number: 10620989
    Abstract: A device may receive a job request associated with a data processing job, including job timing data specifying a time at which the data processing job is to be executed by a virtual computing environment. The device may receive user data associated with the job request and validate the data processing job based on the user data. In addition, the device may identify a priority associated with the data processing job, based on the user data and the job timing data. The device may provide, to a job queue, job data that corresponds to the data processing job, and monitor the virtual computing environment to determine when virtual resources are available. The device may also determine, based on the monitoring, that a virtual resource is available and, based on the determination and the priority, provide the virtual resource with data that causes execution of the data processing job.
    Type: Grant
    Filed: June 8, 2018
    Date of Patent: April 14, 2020
    Assignee: Capital One Services, LLC
    Inventors: Ming Yuan, Vijayalakshmi Veeraraghavan, Preet Kamal Bawa, Lance Creath, Alec Fekete
  • Patent number: 10592263
    Abstract: The subject disclosure is directed towards a technology for efficiently emulating program code that is protected by one or more various code virtualization techniques to detect the presence of malware. An emulation engine emulates a program containing a mix of native code, custom (e.g., virtualized obfuscated) code, and at least one emulator and/or interpreter that understands the custom code, by building a custom emulation component that is built by detecting and analyzing the internal emulator or interpreter. The custom emulation component may access a translation table built from the analysis, and also may simplify a plurality of instructions in the program into a lesser number of instructions in an intermediate language used for emulation.
    Type: Grant
    Filed: March 27, 2015
    Date of Patent: March 17, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Xun Wang, Adrian Emil Stepan, Timothy David Ebringer
  • Patent number: 10565022
    Abstract: Systems and methods are provided for parallel processing of datasets with dynamic skew compensation. The disclosed systems and methods may increase the efficiency of dataset processing by imposing maximum size limits on parallel processing environment tasks. The disclosed systems and methods may generate a target partition of a variable, a database storing data elements, a cluster that generates one or more output files based on the target partition and the data elements, and a display device that displays analysis results for the target partition using the one or more output files. Generation may comprise creating a calculation partition, mapping data elements according to the calculation partition, and generating the one or more output files based on the mapped data elements. The calculation partition may depend on a target partition and a uniform partition that partitions values based on one or more of statistical measures and pseudorandom functions.
    Type: Grant
    Filed: July 5, 2018
    Date of Patent: February 18, 2020
    Assignee: Capital One Services, LLC
    Inventors: John Stocker, Sunny Kumar
  • Patent number: 10558489
    Abstract: Systems, apparatuses, and methods for suspending and restoring operations on a processor are disclosed. In one embodiment, a processor includes at least a control unit, multiple execution units, and multiple work creation units. In response to detecting a request to suspend a software application executing on the processor, the control unit sends requests to the plurality of work creation units to stop creating new work. The control unit waits until receiving acknowledgements from the work creation units prior to initiating a suspend operation. Once all work creation units have acknowledged that they have stopped creating new work, the control unit initiates the suspend operation. Also, when a restore operation is initiated, the control unit prevents any work creation units from launching new work-items until all previously in-flight work-items have been restored to the same work creation units and execution units to which they were previously allocated.
    Type: Grant
    Filed: February 21, 2017
    Date of Patent: February 11, 2020
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Alexander Fuad Ashkar, Michael J. Mantor, Randy Wayne Ramsey, Rex Eldon McCrary, Harry J. Wise
  • Patent number: 10521265
    Abstract: Techniques are disclosed for coalescing timer ticks generated by timers used to service guest operating systems executing in virtual machines. By coalescing timer ticks a logical processor can enter a low power mode thereby reducing power consumed by the system.
    Type: Grant
    Filed: September 19, 2008
    Date of Patent: December 31, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Haiyong Wang, Brandon S. Baker, Shuvabrata Ganguly, Thomas D. I. Fahrig
  • Patent number: 10452428
    Abstract: Method and system are provided for software application execution including switching between optimized code for use profiles. The method includes: accessing an application having multiple executables for the same function for multiple use profiles. The method includes: executing code for a first use profile; receiving a prompt to change to a second use profile; suspending the execution of the code for the first use profile; retrieving switching code from a pre-computed data structure, wherein the switching code is for carrying out operations to transfer from executing code for a first use profile to executing code for a second use profile; performing the operations of the switching code; and resuming executing the application by executing code for the second use profile.
    Type: Grant
    Filed: March 14, 2016
    Date of Patent: October 22, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Fiona M. Crowther, Geza Geleji, Christopher J. Poole, Martin A. Ross, Craig H. Stirling
  • Patent number: 10452418
    Abstract: Embodiments manage physical locations of virtual machines (VMs) in a datacenter. A computing device, such as a cloud management device, aggregates location information for the VMs executing on hosts. The computing device compares the aggregated location information with event data to identify VMs potentially affected by adverse events (e.g., severe weather, scheduled maintenance, natural disasters, etc.). The computing device initiates migration of the affected VMs from their hosts to unaffected hosts. In some embodiments, the location information includes global positioning system (GPS) coordinates obtained by the hosts and shared with the computing device.
    Type: Grant
    Filed: December 17, 2013
    Date of Patent: October 22, 2019
    Assignee: VMware, Inc.
    Inventor: Neil Raymond Joffe
  • Patent number: 10453157
    Abstract: A system for electronic patient care includes a hub. The hub is configured to monitor a patient-care device. The sandbox may be configured to control access to at least one of a hardware resource and a software resource. The hub is further configured to identify the patient-care device and execute an application to monitor the patient-care device. The hub executes the application within the sandbox component such that the application accesses the at least one of the hardware resource and the software resource through the sandbox component. The hub may be further configured to control the patient-care device. The hub may be further configured to receive an identification from the patient-care device and download the application from a server associated with the identification. The hub may be further configured to receive an identification from the patient-care device and update the application from a server associated with the identification.
    Type: Grant
    Filed: December 21, 2011
    Date of Patent: October 22, 2019
    Assignee: DEKA Products Limited Partnership
    Inventors: Dean Kamen, John J. Biasi, Jacob W. Scarpaci, John M. Kerwin, James G. Turner, Todd A. Ballantyne
  • Patent number: 10423216
    Abstract: A processor includes first and second processing cores configured to support first and second respective subsets of features of its instruction set architecture (ISA) feature set. The first subset is less than all the features of the ISA feature set. The first and second subsets are different but their union is all the features of the ISA feature set. The first core detects a thread, while being executed by the first core rather than by the second core, attempted to employ a feature not in the first subset and, in response, to indicate a switch from the first core to the second core to execute the thread. The unsupported feature may be an unsupported instruction or operating mode. A switch may also be made if the lower performance/power core is being over-utilized or the higher performance/power core is being under-utilized.
    Type: Grant
    Filed: November 12, 2013
    Date of Patent: September 24, 2019
    Assignee: VIA TECHNOLOGIES, INC.
    Inventors: Rodney E. Hooker, Terry Parks, G. Glenn Henry
  • Patent number: 10394615
    Abstract: An information processing apparatus takes each currently executing job as a candidate job, and when determining that a migration of a candidate job to a migration destination node selected from free nodes, which are not executing any jobs, is expected to expand a continued range of free nodes, specifies the migration as a possible migration. Then, on the basis of the amounts of communication needed to perform individual migrations based on a plurality of possible migrations and the numbers of nodes used for executing candidate jobs to be migrated in the individual possible migrations, the information processing apparatus determines a possible migration to be performed.
    Type: Grant
    Filed: February 9, 2017
    Date of Patent: August 27, 2019
    Assignee: FUJITSU LIMITED
    Inventor: Hiroki Yokota