Patents Examined by Paul V Mills
-
Patent number: 10908916Abstract: 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: GrantFiled: March 2, 2016Date of Patent: February 2, 2021Assignee: ARM LimitedInventors: Timothy Holroyd Glauert, David Hennah Mansell, Rune Holm
-
Patent number: 10908948Abstract: 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: GrantFiled: April 4, 2018Date of Patent: February 2, 2021Assignee: VMWARE, INCInventors: Yuping Wei, Ke Xiao, Hongsheng Li, An Min Gong, Wenshuo Chen
-
Patent number: 10901800Abstract: 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: GrantFiled: September 21, 2016Date of Patent: January 26, 2021Assignee: Capital One Services, LLCInventors: John Stocker, Sunny Kumar
-
Patent number: 10799796Abstract: 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: GrantFiled: May 29, 2019Date of Patent: October 13, 2020Assignee: Kabam, Inc.Inventors: Matthew Curtis, James Koh, Kellen Christopher Smalley, Michael C. Caldarone
-
Patent number: 10768961Abstract: 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: GrantFiled: July 14, 2016Date of Patent: September 8, 2020Assignee: International Business Machines CorporationInventors: Paul L. Bradshaw, Richard E. Harper, Valentina Salapura
-
Patent number: 10733003Abstract: 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: GrantFiled: November 3, 2016Date of Patent: August 4, 2020Assignee: salesforce.com, inc.Inventors: Kunal Sanghavi, Vijaysenthil Veeriah, Varun Gupta, Edward David Harris, Tyson Lutz
-
Patent number: 10719345Abstract: 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: GrantFiled: May 16, 2018Date of Patent: July 21, 2020Assignee: International Business Machines CorporationInventors: Yan Du, Lan Luo, Jun Li Zhao, Jian Dong Yin, Li Long Chen
-
Patent number: 10656968Abstract: 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: GrantFiled: December 14, 2017Date of Patent: May 19, 2020Assignee: International Business Machines CorporationInventors: Chethan Jain, Maria R. Ward
-
Patent number: 10649747Abstract: 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: GrantFiled: October 6, 2016Date of Patent: May 12, 2020Inventor: Andreas Voellmy
-
Patent number: 10649816Abstract: 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: GrantFiled: April 10, 2014Date of Patent: May 12, 2020Assignee: Telefonaktiebolaget LM Ericsson (publ)Inventors: Maria Toeroe, Neha Pawar
-
Patent number: 10620989Abstract: 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: GrantFiled: June 8, 2018Date of Patent: April 14, 2020Assignee: Capital One Services, LLCInventors: Ming Yuan, Vijayalakshmi Veeraraghavan, Preet Kamal Bawa, Lance Creath, Alec Fekete
-
Patent number: 10592263Abstract: 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: GrantFiled: March 27, 2015Date of Patent: March 17, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Xun Wang, Adrian Emil Stepan, Timothy David Ebringer
-
Patent number: 10565022Abstract: 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: GrantFiled: July 5, 2018Date of Patent: February 18, 2020Assignee: Capital One Services, LLCInventors: John Stocker, Sunny Kumar
-
Patent number: 10558489Abstract: 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: GrantFiled: February 21, 2017Date of Patent: February 11, 2020Assignee: Advanced Micro Devices, Inc.Inventors: Alexander Fuad Ashkar, Michael J. Mantor, Randy Wayne Ramsey, Rex Eldon McCrary, Harry J. Wise
-
Patent number: 10521265Abstract: 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: GrantFiled: September 19, 2008Date of Patent: December 31, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Haiyong Wang, Brandon S. Baker, Shuvabrata Ganguly, Thomas D. I. Fahrig
-
Patent number: 10452428Abstract: 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: GrantFiled: March 14, 2016Date of Patent: October 22, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Fiona M. Crowther, Geza Geleji, Christopher J. Poole, Martin A. Ross, Craig H. Stirling
-
Patent number: 10452418Abstract: 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: GrantFiled: December 17, 2013Date of Patent: October 22, 2019Assignee: VMware, Inc.Inventor: Neil Raymond Joffe
-
Patent number: 10453157Abstract: 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: GrantFiled: December 21, 2011Date of Patent: October 22, 2019Assignee: DEKA Products Limited PartnershipInventors: Dean Kamen, John J. Biasi, Jacob W. Scarpaci, John M. Kerwin, James G. Turner, Todd A. Ballantyne
-
Patent number: 10423216Abstract: 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: GrantFiled: November 12, 2013Date of Patent: September 24, 2019Assignee: VIA TECHNOLOGIES, INC.Inventors: Rodney E. Hooker, Terry Parks, G. Glenn Henry
-
Patent number: 10394615Abstract: 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: GrantFiled: February 9, 2017Date of Patent: August 27, 2019Assignee: FUJITSU LIMITEDInventor: Hiroki Yokota