Patents by Inventor Richard McDougall

Richard McDougall has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10241709
    Abstract: An elastic filesystem for temporary data provides storage space for virtual machines (VMs) in a distributed computing system. The filesystem redirects accesses to virtual disks in VMs to a common pool file. The system provides performance and storage efficiency at least on par with local, direct attached virtual disks, while providing a single pool of shared storage that is provisioned and managed independently of the VMs. The system provides storage isolation between VMs storing temporary data in that shared pool. Also, storage space for temporary data may be allocated on demand and reclaimed when no longer needed, thereby supporting a wide variety of temporary space requirements for different Hadoop jobs.
    Type: Grant
    Filed: October 17, 2014
    Date of Patent: March 26, 2019
    Assignee: VMware, Inc.
    Inventors: Daniel J. Scales, Tariq Magdon-Ismail, Razvan Cheveresan, Michael Nelson, Richard McDougall
  • Patent number: 10193963
    Abstract: A distributed computing application is described that provides a highly elastic and multi-tenant platform for Hadoop applications and other workloads running in a virtualized environment. Data and compute nodes are separated into different virtual machines (VM). Compute VMs are used to launch containers from different tenants. Compute VMs are organized in pools of hot spare VMs that are immediately available for launching a container and executing a task, and pools of cold spare VMs. Each compute VM may include a mounted network filesystem provided by a node manager to share intermediate outputs across VMs executing on the same host.
    Type: Grant
    Filed: October 24, 2013
    Date of Patent: January 29, 2019
    Assignee: VMware, Inc.
    Inventors: Jayanth Gummaraju, Richard McDougall, Michael Nelson, Rean Griffith, Tariq Magdon-Ismail, Razvan Cheveresan, Junping Du
  • Patent number: 9529611
    Abstract: Methods, systems, and computer programs for managing memory in a host where virtual machines (VMs) execute are presented. In one example, a method includes an operation for determining which amount of heap memory has been reserved in a Java virtual machine (JVM) that is in excess of the heap memory needed by the JVM. If there is excess heap memory, a Java balloon agent reserves a Java object in the heap memory. Typically, the Java object will be the size of one or more memory pages in the host. Further, the Java balloon agent loads the Java object with a certain value, for example, by zeroing out the page of memory. When a virtual machine monitor (VMM) in the host detects that a machine physical memory page associated with the Java object has the first value, then the VMM frees the machine physical memory page to make the memory available to other VMs or to other processes executing in the host.
    Type: Grant
    Filed: December 23, 2014
    Date of Patent: December 27, 2016
    Assignee: VMware, Inc.
    Inventors: Richard McDougall, Wei Huang, Benjamin J. Corrie
  • Patent number: 9304803
    Abstract: Application resource scheduler module is provided to achieve cooperative application workload scheduling for a consolidated virtual environment. The application resource scheduler aids an application workload scheduler that is part of a distributed computing application, such as Hadoop, to achieve a specified relative priority of the application workload virtual machines to other virtual machines in the virtual environment. The application resource scheduler assists in achieving cooperative workload scheduling by revising the amount of resources that the application workload scheduler sees as available and by setting resource controls for the virtual machines of the distributed computing application to influence the resources the virtual machines receive from the underlying consolidated virtual environment.
    Type: Grant
    Filed: November 12, 2012
    Date of Patent: April 5, 2016
    Assignee: VMware, Inc.
    Inventors: Michael Nelson, Jayanth Gummaraju, Kinshuk Govil, Anne Holler, Richard McDougall
  • Publication number: 20150160884
    Abstract: An elastic filesystem for temporary data provides storage space for virtual machines (VMs) in a distributed computing system. The filesystem redirects accesses to virtual disks in VMs to a common pool file. The system provides performance and storage efficiency at least on par with local, direct attached virtual disks, while providing a single pool of shared storage that is provisioned and managed independently of the VMs. The system provides storage isolation between VMs storing temporary data in that shared pool. Also, storage space for temporary data may be allocated on demand and reclaimed when no longer needed, thereby supporting a wide variety of temporary space requirements for different Hadoop jobs.
    Type: Application
    Filed: October 17, 2014
    Publication date: June 11, 2015
    Inventors: Daniel J. SCALES, Tariq MAGDON-ISMAIL, Razvan CHEVERESAN, Michael NELSON, Richard MCDOUGALL
  • Publication number: 20150120928
    Abstract: A distributed computing application is described that provides a highly elastic and multi-tenant platform for Hadoop applications and other workloads running in a virtualized environment. Data and compute nodes are separated into different virtual machines (VM). Compute VMs are used to launch containers from different tenants. Compute VMs are organized in pools of hot spare VMs that are immediately available for launching a container and executing a task, and pools of cold spare VMs. Each compute VM may include a mounted network filesystem provided by a node manager to share intermediate outputs across VMs executing on the same host.
    Type: Application
    Filed: October 24, 2013
    Publication date: April 30, 2015
    Applicant: VMWARE, INC.
    Inventors: Jayanth GUMMARAJU, Richard MCDOUGALL, Michael NELSON, Rean GRIFFITH, Tariq MAGDON-ISMAIL, Razvan CHEVERESAN, Junping DU
  • Publication number: 20150113202
    Abstract: Methods, systems, and computer programs for managing memory in a host where virtual machines (VMs) execute are presented. In one example, a method includes an operation for determining which amount of heap memory has been reserved in a Java virtual machine (JVM) that is in excess of the heap memory needed by the JVM. If there is excess heap memory, a Java balloon agent reserves a Java object in the heap memory. Typically, the Java object will be the size of one or more memory pages in the host. Further, the Java balloon agent loads the Java object with a certain value, for example, by zeroing out the page of memory. When a virtual machine monitor (VMM) in the host detects that a machine physical memory page associated with the Java object has the first value, then the VMM frees the machine physical memory page to make the memory available to other VMs or to other processes executing in the host.
    Type: Application
    Filed: December 23, 2014
    Publication date: April 23, 2015
    Inventors: Richard MCDOUGALL, Wei HUANG, Benjamin J. CORRIE
  • Patent number: 8949295
    Abstract: Methods, systems, and computer programs for managing memory in a host where virtual machines (VMs) execute are presented. In one embodiment, a method includes an operation for determining which amount of heap memory has been reserved in a Java virtual machine (JVM) that is in excess of the heap memory needed by the JVM. If there is excess heap memory, a Java balloon agent reserves a Java object in the heap memory. Typically, the Java object will be the size of one or more memory pages in the host. Further, the Java balloon agent loads the Java object with a certain value, for example, by zeroing out the page of memory. When a virtual machine monitor (VMM) in the host detects that a machine physical memory page associated with the Java object has the first value, then the VMM frees the machine physical memory page to make the memory available to other VMs or to other processes executing in the host.
    Type: Grant
    Filed: June 29, 2010
    Date of Patent: February 3, 2015
    Assignee: VMware, Inc.
    Inventors: Richard McDougall, Wei Huang, Ben Corrie
  • Publication number: 20140137104
    Abstract: Application resource scheduler module is provided to achieve cooperative application workload scheduling for a consolidated virtual environment. The application resource scheduler aids an application workload scheduler that is part of a distributed computing application, such as Hadoop, to achieve a specified relative priority of the application workload virtual machines to other virtual machines in the virtual environment. The application resource scheduler assists in achieving cooperative workload scheduling by revising the amount of resources that the application workload scheduler sees as available and by setting resource controls for the virtual machines of the distributed computing application to influence the resources the virtual machines receive from the underlying consolidated virtual environment.
    Type: Application
    Filed: November 12, 2012
    Publication date: May 15, 2014
    Applicant: VMware, Inc.
    Inventors: Michael Nelson, Jayanth Gummaraju, Kinshuk Govil, Anne Holler, Richard McDougall
  • Publication number: 20110320682
    Abstract: Methods, systems, and computer programs for managing memory in a host where virtual machines (VMs) execute are presented. In one embodiment, a method includes an operation for determining which amount of heap memory has been reserved in a Java virtual machine (JVM) that is in excess of the heap memory needed by the JVM. If there is excess heap memory, a Java balloon agent reserves a Java object in the heap memory. Typically, the Java object will be the size of one or more memory pages in the host. Further, the Java balloon agent loads the Java object with a certain value, for example, by zeroing out the page of memory. When a virtual machine monitor (VMM) in the host detects that a machine physical memory page associated with the Java object has the first value, then the VMM frees the machine physical memory page to make the memory available to other VMs or to other processes executing in the host.
    Type: Application
    Filed: June 29, 2010
    Publication date: December 29, 2011
    Applicant: VMware, Inc.
    Inventors: Richard MCDOUGALL, Wei HUANG, Ben CORRIE
  • Publication number: 20080010515
    Abstract: A method for dirty region logging of a file that includes receiving a request to open the file, determining each of a plurality of component files associated with the file, opening each of the plurality of component files, writing to a region of the at least one of the plurality component files, and updating a dirty region log (DRL) associated with the one of the plurality of component files to reflect the write to the region.
    Type: Application
    Filed: May 15, 2006
    Publication date: January 10, 2008
    Applicant: Sun Microsystems, Inc.
    Inventors: David Robinson, Brian Wong, Spencer Shepler, Richard McDougall
  • Publication number: 20050240725
    Abstract: A file is striped across multiple filers, file servers or other devices, to create a sparsely striped multi-component file. Each filer stores one sparse component. In particular, each component physically stores only those stripes allocated to that component. The other stripes are represented as holes. Thus, instead of contiguously packing each component's stripes at the block level, each component is a file having the same logical structure. A component of a sparsely striped multi-component file can be easily converted to a mirror by filling in its holes. Similarly, a mirror can be easily converted to one component of a sparsely striped multi-component file by removing or ignoring it unallocated stripes. In either case, the layout or logical of the component does not need to be reconfigured.
    Type: Application
    Filed: April 26, 2004
    Publication date: October 27, 2005
    Inventors: David Robinson, Brian Wong, Spencer Shepler, Richard McDougall
  • Publication number: 20050240632
    Abstract: A system and method for facilitating a consistent point-in-time copy (PITC). A data provider offers access to data by one or more clients. A client issues a PITC request for a set of data to the data provider, or the provider initiates its own request. The data provider instructs one or more clients, particularly clients accessing the set of data, to flush any pending updates involving the files. The clients acknowledge the flush request, flush their data, and notify the data provider when their flushes are complete. Post-consistency updates are deferred (e.g., using a write-aside buffer). If a client fails to acknowledge the flush request or notify of flush completion, the data provider may abort the PITC or continue because the data may not be consistent or consistency may not be assured. If not aborted, the PITC may be marked to indicate that it is incomplete.
    Type: Application
    Filed: April 23, 2004
    Publication date: October 27, 2005
    Inventors: Brian Wong, David Robinson, Richard McDougall, Spencer Shepler