Patents by Examiner Benjamin Wu
  • Patent number: 9811370
    Abstract: Embodiments of the present invention provide an approach for provisioning a virtual resource instance (e.g., a server instance, etc.) in a networked computing environment (e.g., a cloud computing environment) based upon network characteristics (e.g., physical locations, email addresses/configurations, network connection types, internet protocol (IP) addresses, etc.) of a set (at least one) of intended end users of the virtual resource instance.
    Type: Grant
    Filed: November 4, 2015
    Date of Patent: November 7, 2017
    Assignee: International Business Machines Corporation
    Inventors: Ryan G. DeJana, Lisa Seacat DeLuca, Soobaek Jang, Daniel C. Krook
  • Patent number: 9804883
    Abstract: Described herein is an apparatus and method for remote scoped synchronization, which is a new semantic that allows a work-item to order memory accesses with a scope instance outside of its scope hierarchy. More precisely, remote synchronization expands visibility at a particular scope to all scope-instances encompassed by that scope. Remote scoped synchronization operation allows smaller scopes to be used more frequently and defers added cost to only when larger scoped synchronization is required. This enables programmers to optimize the scope that memory operations are performed at for important communication patterns like work stealing. Executing memory operations at the optimum scope reduces both execution time and energy. In particular, remote synchronization allows a work-item to communicate with a scope that it otherwise would not be able to access. Specifically, work-items can pull valid data from and push updates to scopes that do not (hierarchically) contain them.
    Type: Grant
    Filed: November 14, 2014
    Date of Patent: October 31, 2017
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Marc S. Orr, Bradford M. Beckmann, Ayse Yilmazer, Shuai Che, David A. Wood, Mark D. Hill
  • Patent number: 9798576
    Abstract: A centralized controller may include at least one processor, a memory and a communication interface. The centralized controller may configure a computing system in a single deployment of an executable process. The executable process may include multiple executable instances associated with one of multiple different templates for the executable process. Each template may include multiple user-configurable parameters. A user may request a template associated with a first executable instance and update the template using the user-configurable parameters. The centralized controller may generate a second executable instance of the executable process and a second template associated with the second executable instance based on the updated template. The centralized controller may reconfigure the computing system based on the second executable instance of the executable process while maintaining the configuration of the computing system based on the first executable instance.
    Type: Grant
    Filed: December 20, 2016
    Date of Patent: October 24, 2017
    Assignee: Bank of America Corporation
    Inventors: Sorin N. Cismas, Manu Kurian
  • Patent number: 9798561
    Abstract: A virtual machine (VM) is designated as a guarded VM so that restricted operations may not be performed on the VM without permission from the VM's owner. A request to perform at least one of the restricted operations on the VM is received. When the VM is a guarded VM, the request to perform at least one of the restricted operations on the VM is sent to the VM's owner. When the VM's owner at least partially approves the request, at least some of the restricted operations on the VM are enabled.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: October 24, 2017
    Assignee: VMware, Inc.
    Inventors: Sudhish Panamthanath Thankappan, Jithesh Kuruppath
  • Patent number: 9798564
    Abstract: An arrangement configured to allocate one or more resources of one or more computing devices to a virtual machine, the arrangement comprising: an interface configured to receive a request for the allocation of one or more resources to the virtual machine, the request including information regarding one or more computer programs to be operated by or as a part of the virtual machine; and a hypervisor module configured to use the information regarding one or more computer programs to identify economic information associated with at least one of the computer programs, and to allocate one or more resources to the virtual machine based at least in part on the economic information.
    Type: Grant
    Filed: June 27, 2012
    Date of Patent: October 24, 2017
    Assignee: Qatar Foundation
    Inventors: Simon Ponsford, William Yip
  • Patent number: 9792159
    Abstract: A disclosed program determining apparatus includes a log recording unit configured to record, in response to at least one of a use request for use of a predetermined function of the image forming apparatus from a program for use in the image forming apparatus and consumption of a predetermined resource of the image forming apparatus by the program, content of said at least one of use request and consumption as log information; and a determining unit configured to determine whether said at least one of use of the predetermined function requested by the program and consumption of the predetermined resource by the program satisfies a predetermined restriction.
    Type: Grant
    Filed: March 16, 2015
    Date of Patent: October 17, 2017
    Assignee: RICOH COMPANY, LTD.
    Inventor: Mitsuo Ando
  • Patent number: 9792145
    Abstract: Methods, systems, and computer readable and executable medium embodiments for managing virtual machine pool demand are described herein. One method for managing virtual machine pool demand includes determining a demand for a number of virtual machines in a pool using data received, identifying the demand for the number of virtual machines in the pool is outside a threshold number, and sending a request for an additional virtual machine to a user to manage demand of the pool.
    Type: Grant
    Filed: November 17, 2016
    Date of Patent: October 17, 2017
    Assignee: United Services Automobile Association (USAA)
    Inventors: Benjamin Henry, Prithvi Reddy, Hong Zhao
  • Patent number: 9785458
    Abstract: Certain embodiments of the present invention are directed to a system for and method of providing seamless software compatibility by using virtual machines to provide an improved, more seamless method of user interaction with one or more virtual machines (VMs) that are resident on a host computer system. Several embodiments of the present invention provide a means in the host environment for directly invoking one or more guest operating system (OS) applications or files and displaying them in the host environment, rather than in a separate VM window. Furthermore, each embodiment of the present invention allows the possibility of multiple applications on multiple OSs (i.e., legacy or modem OSs), respectively, to run simultaneously and with the appearance of running seamlessly in the host environment.
    Type: Grant
    Filed: March 2, 2015
    Date of Patent: October 10, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Mike Neil
  • Patent number: 9785460
    Abstract: A technique is described for managing processor (CPU) resources in a host having virtual machines (VMs) executed thereon. A target size of a VM is determined based on its demand and CPU entitlement. If the VM's current size exceeds the target size, the technique dynamically changes the size of a VM in the host by increasing or decreasing the number of virtual CPUs available to the VM. To “deactivate” virtual CPUs, a high-priority balloon thread is launched and pinned to one of the virtual CPUs targeted for deactivation, and the underlying hypervisor deschedules execution of the virtual CPU accordingly. To “activate” virtual CPUs and increase the number of virtual CPUs available to the VM, the launched balloon thread may be killed.
    Type: Grant
    Filed: May 3, 2013
    Date of Patent: October 10, 2017
    Assignee: VMware, Inc.
    Inventor: Haoqiang Zheng
  • Patent number: 9785468
    Abstract: A computer program product for automatically gauging a benefit of a tuning action. The computer program product including a computer readable storage medium having computer readable program code embodied therewith. The computer readable program code including computer readable program code configured to collect a plurality of observations of a running state of a plurality of threads in a computer system. Computer readable program code configured to identify a plurality of resources of the computer system and a capacity of each resource of the plurality of resources. Computer readable program code configured to map an observation of the running state of each thread of the plurality of threads to a resource that the observation of each thread uses, respectively, and computer readable program code configured to apply the tuning action to a first resource of the plurality of resources to determine an impact on the performance of the computer system.
    Type: Grant
    Filed: July 31, 2012
    Date of Patent: October 10, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Nicholas Matthew Mitchell, Peter F. Sweeney
  • Patent number: 9785463
    Abstract: Methods and apparatus for using per task time slice information to improve dynamic performance state selection are described. In one embodiment, a new performance state is selected for a process based on one or more previous execution time slice values of the process. Other embodiments are also described.
    Type: Grant
    Filed: December 14, 2010
    Date of Patent: October 10, 2017
    Assignee: Intel Corporation
    Inventors: Adriaan Van De Ven, A. Leonard Brown, Asit K. Mallick
  • Patent number: 9772873
    Abstract: A centralized controller may include at least one processor, a memory and a communication interface. The centralized controller may configure a computing system in a single deployment of an executable process. The executable process may include multiple executable instances associated with one of multiple different templates for the executable process. Each template may include multiple user-configurable parameters. A user may request a template associated with a first executable instance and update the template using the user-configurable parameters. The centralized controller may generate a second executable instance of the executable process and a second template associated with the second executable instance based on the updated template. The centralized controller may reconfigure the computing system based on the second executable instance of the executable process while maintaining the configuration of the computing system based on the first executable instance.
    Type: Grant
    Filed: April 7, 2017
    Date of Patent: September 26, 2017
    Assignee: Bank of America Corporation
    Inventors: Manu Kurian, Sorin N. Cismas
  • Patent number: 9766940
    Abstract: Methods, systems, and articles of manufacture for enabling dynamic task-level configuration in MapReduce are provided herein. A method includes generating a first set of configurations for a currently executing MapReduce job, wherein said set of configurations comprises job-level configurations and task-level configurations; dynamically modifying configurations associated with a mapper component and/or a reducer component associated with at least one ongoing map task and/or ongoing reduce task of the MapReduce job based on the generated first set of configurations; and deploying said first set of configurations to the mapper component and/or the reducer component associated with the MapReduce job.
    Type: Grant
    Filed: February 10, 2014
    Date of Patent: September 19, 2017
    Assignee: International Business Machines Corporation
    Inventors: Nicholas C. Fuller, Minkyong Kim, Min Li, Shicong Meng, Jian Tan, Liangzhao Zeng, Li Zhang
  • Patent number: 9760395
    Abstract: A method for configuring and maintaining external monitoring of one or more instances of a virtual machine within a virtualized computing environment. The method includes a computer processor monitoring a hypervisor. The method further includes a computer processor identifying a first list, wherein the first list is comprised of one or more monitoring templates respectively associated with one or more virtual machine types, and maintaining a second list comprised plurality of provisioned instances of virtual machines, wherein the second list also includes a first information respectively associated with the plurality of provisioned instances of virtual machines. The method further includes a computer processor compiling a third list and transmitting the third list to the monitoring system. The method further includes a computer processor receiving the third list and in response, a computer processor executing one or more monitoring functions based, at least in part, on the third list.
    Type: Grant
    Filed: October 5, 2016
    Date of Patent: September 12, 2017
    Assignee: International Business Machines Corporation
    Inventors: Liam M. Doherty, King-Yan Kwan, Mark A. Shewell, Peter G. Woodward
  • Patent number: 9753833
    Abstract: Exemplary methods, apparatuses, and systems receive a first input/output (I/O) trace including storage addresses that were subject to a plurality of I/O requests from a first workload during a first period of time. The first I/O trace is run through a cache simulation using a plurality of simulated cache sizes. A first state of the cache simulation is stored upon completing the first I/O trace simulation. The first I/O trace is deleted in response to storing the first state. A second I/O trace including storage addresses that were subject to a plurality of I/O requests from the first workload during a second period of time is received. A cumulative miss ratio curve for the first workload is generated by loading the stored first state as a starting point for simulating the second I/O trace and running the second I/O trace through the cache simulation.
    Type: Grant
    Filed: November 26, 2014
    Date of Patent: September 5, 2017
    Assignee: VMware, Inc.
    Inventors: Tariq Magdon-Ismail, Duy Nguyen, Brian James Martin
  • Patent number: 9753766
    Abstract: A system and method for allocating resources receive one or more resource requests describing tasks, each of the one or more resource requests having a request priority, a requested configuration type, and a requestor identifier. In a winner-take-all circuit, all of the existing resource priorities within each configuration of the requested configuration type are compared to determine a highest-priority task occupying each assignment. In a loser-take-all circuit, one or more current highest resource priorities of each configuration within the requested configuration type, which are output from the winner-take-all circuit associated with the requested resource assignment, each of the one or more current resources having a current priority, are compared. One of the one or more current resource configurations within the requested configuration type having the lowest current priority is identified as the lowest-priority current resource configuration.
    Type: Grant
    Filed: November 25, 2014
    Date of Patent: September 5, 2017
    Assignee: Raytheon Company
    Inventors: Harry B. Marr, Craig A. Snow, Leo Linsky, Kellie Canida
  • Patent number: 9747139
    Abstract: In one embodiment, performance-based multi-mode task dispatching for high temperature avoidance in accordance with the present description, includes selecting processor cores as available to receive a dispatched task. Tasks are dispatched to a set of available processor cores for processing in a performance-based dispatching mode. If monitored temperature rises above a threshold temperature value, task dispatching logic switches to a thermal-based dispatching mode. If a monitored temperature falls below another threshold temperature value, dispatching logic switches back to the performance-based dispatching mode. If a monitored temperature of an individual processor core rises above a threshold temperature value, the processor core is redesignated as unavailable to receive a dispatched task. If the temperature of an individual processor core falls below another threshold temperature value, the processor core is redesignated as available to receive a dispatched task.
    Type: Grant
    Filed: October 19, 2016
    Date of Patent: August 29, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Trung N. Nguyen
  • Patent number: 9747107
    Abstract: A system and method for compiling or runtime executing a fork-join data parallel program with function calls. In one embodiment, the system includes: (1) a partitioner operable to partition groups into a master group and at least one worker group and (2) a thread designator associated with the partitioner and operable to designate only one thread from the master group for execution and all threads in the at least one worker group for execution.
    Type: Grant
    Filed: December 21, 2012
    Date of Patent: August 29, 2017
    Assignee: Nvidia Corporation
    Inventors: Yuan Lin, Gautam Chakrabarti, Jaydeep Marathe, Okwan Kwon, Amit Sabne
  • Patent number: 9740537
    Abstract: A distributed work processing system for processing computational tasks is scalable and fault-tolerant without requiring centralized control. Worker processes running on worker hosts are organized into a logical group and worker coordinators running on worker coordinator hosts coordinate tasks assigned to worker processes. A task store might hold a collection of tasks to be performed by the logical group. A lock database can be used for locking the logical group for coordination by one worker coordinator process at a time. A membership store contains mappings of worker processes to logical groups, and an assignment store indicates which tasks are assigned to which workers. The worker coordinator process has a scanner process to deal with unassigned tasks and deduplicating duplicate assignments. If a worker coordinator does not see enough worker processes, it can instantiate more. If a worker process does not see a worker coordinator, it can instantiate one.
    Type: Grant
    Filed: September 29, 2016
    Date of Patent: August 22, 2017
    Assignee: AMAZON TECHNOLOGIES, INC.
    Inventors: AndyGibb Halim, Swapneel Patil
  • Patent number: 9740534
    Abstract: A system for controlling the resources includes a control pattern generation unit for generating a plurality of control patterns from a virtual system model, produced by modeling the behaviors of a network element and a server of a virtual system operating on a virtual datacenter, and from a resource allocation change policy stipulating a policy or policies of change of allocation of resources to the virtual systems. The control patterns prove candidates for control commands to network resources and server resources of the virtual systems. The system for controlling the resources also includes a control unit for carrying out prediction of a service level, using the control patterns, selecting such control pattern that satisfies the service level of the virtual systems and that also satisfies a preset standard or reference for selection, from among the control patterns, with the use of the result of prediction, and putting the control pattern selected to use.
    Type: Grant
    Filed: January 31, 2014
    Date of Patent: August 22, 2017
    Assignee: NEC CORPORATION
    Inventor: Seiichi Koizumi