Patents Examined by Brahim Bourzik
  • Patent number: 10152310
    Abstract: A compiler and a method of compiling code that reduces memory bandwidth when processing code on a computer are provided herein. In one embodiment, the method includes: (1) automatically identifying a sequence of operations for fusing, wherein the sequence of operations correspond to instructions from a source code, (2) determining subdivisions of a final output of the sequence of operations, (3) determining input data and intermediate operations needed to obtain a final subdivision output for each of the subdivisions and (4) automatically generating code to fuse the sequence of operations employing the subdivisions, wherein the automatically identifying and the automatically generating are performed by a processor.
    Type: Grant
    Filed: May 27, 2015
    Date of Patent: December 11, 2018
    Assignee: Nvidia Corporation
    Inventors: Mahesh Ravishankar, Paulius Micikevicius, Vinod Grover
  • Patent number: 10089142
    Abstract: The present invention provides methods and system, including computer program products, implementing and using techniques for providing tasks of different classes with access to CPU time provided by worker threads of a database system. In particular, the invention relates to such a database-system-implemented method comprising the following steps: inserting the tasks to a queue of the database system; and executing the tasks inserted to the queue by worker threads of the database system according to their order in the queue; characterized in that the queue is a priority queue; and in that the method further comprises the following steps: assigning each class to a respective priority; and in that the step of inserting the tasks to the queue includes: associating each task with the respective priority assigned to its class.
    Type: Grant
    Filed: August 20, 2014
    Date of Patent: October 2, 2018
    Assignee: Hasso-Plattner-Institut Fur Softwaresystemtechnik GmbH
    Inventors: Hasso Plattner, Martin Grund, Johannes Wust
  • Patent number: 10089130
    Abstract: Disclosed is a virtual desktop service method. The virtual desktop service method includes configuring and measuring users and resources according to predetermined criteria, copying operating system files and data files to be provided to the users before use request, receiving request to use a virtual machine from any one of the users and performing user authentication and work approval, and providing an operating system file and a data file of the any one of the users, among the copied operating system files and data files, to the any one of the users according to the use request to transmit a virtual desktop environment. Consequently, the virtual desktop service method performs a service to provide a virtual machine to a user in real time.
    Type: Grant
    Filed: August 19, 2014
    Date of Patent: October 2, 2018
    Assignee: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE
    Inventors: Dae Won Kim, Myeong Hoon Oh, Sun Wook Kim, Seong Woon Kim, Jong Bae Moon, Soo Cheol Oh, Jung Hyun Cho, Hag Young Kim
  • Patent number: 10078428
    Abstract: Placement of virtual machines on physical hosts is based on collocation rules with situational enforcement policies set by a system administrator to increase flexibility in rule enforcement and to more efficiently utilize system resources. A scheduler mechanism allows a system administrator to select different collocation rules and situational enforcement policies for a group of virtual machines. The scheduler mechanism utilizes the collocation rules and the situational enforcement policies to place the virtual machines.
    Type: Grant
    Filed: June 16, 2015
    Date of Patent: September 18, 2018
    Assignee: International Business Machines Corporation
    Inventors: Joseph W. Cropper, Jennifer D. Mulsow
  • Patent number: 10061529
    Abstract: A method and structure for dynamic memory re-allocation for an application runtime environment (ARE) includes receiving, through an interface of an application runtime environment (ARE), a first set of internal operational metrics of the ARE executing at a current setting S1 on a processor of a computer. A first performance P1 of the ARE is determined at the current setting S1 using the received first set of internal operation metrics. The current setting S1 of the ARE is varied to a new setting S2. A second set of internal operational metrics of the ARE executing at the new setting S2 is received through the interface of the ARE. A second performance P2 of the ARE is determined at the new setting S2, using the received second set of internal operation metrics. A memory allocation for the ARE is re-allocated, based on the determined performances P1 and P2.
    Type: Grant
    Filed: September 12, 2016
    Date of Patent: August 28, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Norman Bobroff, Liana Liyow Fong, Peter Hans Westerink
  • Patent number: 10042745
    Abstract: Method and apparatus for enhancing an executable is disclosed herein. In one embodiment, the method includes instrumenting an executable with additional program code to detect run-time errors, and while running the instrumented executable within a debug environment generating the run-time errors detected by the additional program code, upon reaching a breakpoint, identifying any of the run-time errors which occurred while executing a function in which the breakpoint is located, and transmitting an indication of the identified run-time errors to the debugging environment.
    Type: Grant
    Filed: August 25, 2015
    Date of Patent: August 7, 2018
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 10037265
    Abstract: Method and apparatus for enhancing an executable is disclosed herein. In one embodiment, the method includes instrumenting an executable with additional program code to detect run-time errors, and while running the instrumented executable within a debug environment generating the run-time errors detected by the additional program code, upon reaching a breakpoint, identifying any of the run-time errors which occurred while executing a function in which the breakpoint is located, and transmitting an indication of the identified run-time errors to the debugging environment.
    Type: Grant
    Filed: August 4, 2015
    Date of Patent: July 31, 2018
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 10025581
    Abstract: An information processing apparatus includes: a program receiver that receives a new program externally, the new program for updating of an existing program; a set values receiver that receives new set values externally, the new set values including version information, the version information identifying the version of program linked to the new set values; a version judgment portion that judges whether or not the version information included in the new set values matches a current program currently installed or the new program to be installed, the new program being received by the program receiver; and an update portion that updates all the set values if the version information matches the current or new program, or only some of the set values if the version information does not match the current or new program.
    Type: Grant
    Filed: February 17, 2015
    Date of Patent: July 17, 2018
    Assignee: KONICA MINOLTA, INC.
    Inventors: Hiroshi Sugiura, Hiroki Ueda, Junichi Isamikawa, Akihiko Oda, Mitsuharu Nagai
  • Patent number: 10019275
    Abstract: In a virtualized computer system operable in more than two hierarchical privilege levels, components of a hypervisor, which include a virtual machine kernel and virtual machine monitors (VMMs), are assigned to different privilege levels. The virtual machine kernel operates at a low privilege level to be able to exploit certain features provided by the low privilege level, and the VMMs operate at a high privilege level to support execution of virtual machines. Upon determining that a context switch from the virtual machine kernel to a VMM is to be performed, the computer system exits the low privilege level, and enters the high privilege level to execute a trampoline that supports context switches to VMMs, such as state changes, and then the VMM. The trampoline is deactivated after execution control is switched to the VMM.
    Type: Grant
    Filed: June 23, 2014
    Date of Patent: July 10, 2018
    Assignee: VMware, Inc.
    Inventors: Harvey Tuch, Andrei Warkentin
  • Patent number: 9996374
    Abstract: An update is deployed to a guest virtual machine of a hypervisor during runtime of the guest virtual machine. An executing thread of the guest virtual machine is identified and execution of the thread is redirected to a function to open a handle to a file, of the guest virtual machine, to which data of the update is to be written. The data is provided to a component of the guest virtual machine, and then execution of the thread is redirected to a function to write the data provided to the component to the file.
    Type: Grant
    Filed: June 16, 2015
    Date of Patent: June 12, 2018
    Assignee: ASSURED INFORMATION SECURITY, INC.
    Inventors: Michael Joseph Sieffert, Jonathan Einstoss, Stephen Raymond Pape, Adam T. Meily
  • Patent number: 9992268
    Abstract: In various aspects, a framework is provided for building rich, responsive, and mobile-enabled HTML 5 web applications. In one embodiment, the framework is based on a thin server architecture (TSA) that uses REST, SSE, and WebSocket to communicate with the server side. This framework, sometimes referred to herein as ‘Avatar’ is a modular, end-to-end web development framework for building enterprise mobile and desktop applications using JavaScript, HTML5 and a thin-server architecture.
    Type: Grant
    Filed: September 27, 2013
    Date of Patent: June 5, 2018
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Bryan Atsatt, Santiago Martin Pericas-Geertsen
  • Patent number: 9983901
    Abstract: The present disclosure relates to dynamically adjusting shard allocation during parallel processing operations. One example method includes determining a target completion time for a batch data processing job of an input data set performed by a plurality of tasks, each of the plurality of tasks processing a different input shard including a different portion of the input data set; identifying a first task having an estimated completion time greater than the target completion time of the batch data processing job; and splitting the first input shard into a first split input shard and a second split input shard different from the first split input shard, the first split input shard including a first portion of the first input shard, and the second split input shard including a second portion of the first input shard different from the first portion.
    Type: Grant
    Filed: July 9, 2014
    Date of Patent: May 29, 2018
    Assignee: Google LLC
    Inventors: Jeremy S. Hurwitz, Eugene R. Kirpichov, Jelena Pjesivac-Grbovic, Kenneth J. Goldman
  • Patent number: 9928564
    Abstract: Systems and methods may provide for receiving a plurality of signals from a software module associated with a shared resource such as, for example, an unordered access view (UAV). The plurality of signals may include a first signal that indicates whether a draw call accesses the shared resource, a second signal that indicates whether a boundary of the draw call has been reached, and a third signal that indicates whether the draw call has a coherency requirement. Additionally, a workload corresponding to the draw call may be selectively dispatched in a shader invocation based on the plurality of signals.
    Type: Grant
    Filed: June 26, 2014
    Date of Patent: March 27, 2018
    Assignee: Intel Corporation
    Inventors: Prasoonkumar Surti, Aditya Navale, Jeffery S. Boles
  • Patent number: 9916171
    Abstract: In an approach for detecting one or more applications in a VM, one or more processors establish a time duration. One or more processors detect two or more files, each file in the two or more files having a time stamp time that differs from a last modified time stamp time of at least one other file in the two or more files by no more than the time duration. One or more processors record an identifier for each file of the two or more files, a location, a name, and a last modified time stamp time of each file of the two or more files. One or more processors map the two or more files to an application installed on the VM.
    Type: Grant
    Filed: July 10, 2014
    Date of Patent: March 13, 2018
    Assignee: International Business Machines Corporation
    Inventors: Vasanth Bala, Ea-Ee Jan, Lakshminarayanan Renganarayana, Wolfgang O. H. Richter, Xiaolan Zhang
  • Patent number: 9886176
    Abstract: Placement of virtual machines on physical hosts is based on collocation rules with situational enforcement policies set by a system administrator to increase flexibility in rule enforcement and to more efficiently utilize system resources. A scheduler mechanism allows a system administrator to select different collocation rules and situational enforcement policies for a group of virtual machines. The scheduler mechanism utilizes the collocation rules and the situational enforcement policies to place the virtual machines.
    Type: Grant
    Filed: May 21, 2015
    Date of Patent: February 6, 2018
    Assignee: International Business Machines Corporation
    Inventors: Joseph W. Cropper, Jennifer D. Mulsow
  • Patent number: 9830306
    Abstract: Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine.
    Type: Grant
    Filed: October 23, 2012
    Date of Patent: November 28, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Travis Leithead, Justin E. Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J. E. Furtwangler, Reza A. Nourai, Steven Edward Lucco
  • Patent number: 9830305
    Abstract: Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine.
    Type: Grant
    Filed: May 31, 2011
    Date of Patent: November 28, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Travis Leithead, Justin Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J. E. Furtwangler, Reza A. Nourai, Steven Lucco
  • Patent number: 9792132
    Abstract: In a virtual machine that uses a just-in-time complier (JITC) as a software execution environment, an idle time of a core to which the JITC is allocated is utilized to generate machine code in advance, thereby reducing a load on an interpreter. Accordingly, code execution performance of the interpreter is improved, and the utilization of a multi-core system that executes applications is increased.
    Type: Grant
    Filed: October 12, 2011
    Date of Patent: October 17, 2017
    Assignees: Samsung Electronics Co., Ltd., SNU R&DB FOUNDATION
    Inventors: Hyeong-Seok Oh, Hyung-Kyu Choi, Dong-Heon Jung, Soo-Mook Moon, Kue-Hwan Sihn
  • Patent number: 9785430
    Abstract: The present invention provides a method and system for detecting a partial commit of software. A dependency information of the software is extracted from a version history and a bug database. A dimensional matrix containing a set of commit, and relationship information with a set of files with each commit is created from the dependency information. A centrality matrix is computed by performing a first set of matrix transformations on the dimensional matrix. A set of missing files of a partial commit, is identified by performing a second set of matrix transformations on the centrality matrix and a file vector, the file vector including a file dependency information of the partial commit.
    Type: Grant
    Filed: March 6, 2014
    Date of Patent: October 10, 2017
    Assignee: Infosys Limited
    Inventors: Sree Aurovindh Viswanathan, Girish Maskeri Rama
  • Patent number: 9772831
    Abstract: A cloud computing environment provides the ability to deploy a web application that has been developed using one of a plurality of application frameworks and is configured to execute within one of a plurality of runtime environments. The cloud computing environment receives the web application in a package compatible with the runtime environment (e.g., a WAR file to be launched in an application server, for example) and dynamically binds available services by appropriately inserting service provisioning data (e.g., service network address, login credentials, etc.) into the package. The cloud computing environment then packages an instance of the runtime environment, a start script and the package into a web application deployment package, which is then transmitted to an application (e.g., container virtual machine, etc.).
    Type: Grant
    Filed: April 26, 2011
    Date of Patent: September 26, 2017
    Assignee: Pivotal Software, Inc.
    Inventors: Mark Lucovsky, Derek Collison, Vadim Spivak, Gerald C. Chen