Patents by Inventor Loren Dean

Loren Dean 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: 10013536
    Abstract: A software license management system may include an activation server that provides permission to activate a software product. The activation server may receive receiving a request to validate activation of the software and refreshing license information for the software in response to the request to validate. The server may additionally receive a request to re-designate the license information for the software product and may update license information for the software in response to the request to re-designate the software product.
    Type: Grant
    Filed: October 7, 2008
    Date of Patent: July 3, 2018
    Assignee: The MathWorks, Inc.
    Inventors: Loren Dean, Linda Cotter, Leslie Mehrez, Gerard McElhinney, John N. Little
  • Patent number: 9329897
    Abstract: A system is configured to create a profile that allows a job to be performed within a distributed computing environment comprising one or more computing devices; provide an interface that allows the profile to be specified; obtain a scheduler component via the interface, where the scheduler component identifies a scheduler to be used to perform the job and an application that at least one of the computing devices, that is specified by the scheduler, is to use when performing the job; obtain, via the interface, a project component that identifies data on which the job is to be based; and create the profile based on the scheduler component and the project component.
    Type: Grant
    Filed: October 17, 2011
    Date of Patent: May 3, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Elwin Yam Ming Chan, H. Narfi Stefansson, Portia O'Callaghan, Loren Dean
  • Patent number: 8819119
    Abstract: Exemplary embodiments allow a user to create configurations for use in distributed computing environments. Configurations can be arranged in hierarchies in which elements of the hierarchy can inherit characteristics from elements in other layers of the hierarchy. Embodiments also allow a user to flatten a hierarchical configuration to remove hierarchical dependencies and/or inheriting capabilities of elements in the hierarchy. Exemplary embodiments further allow users to deploy a distributed computing configuration on their desktop to evaluate performance of the configuration and then deploy the configuration in a distributed computing environment without having to change programming code run on the desktop/distributed computing environment.
    Type: Grant
    Filed: September 2, 2010
    Date of Patent: August 26, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Halldor Narfi Stefansson, Elwin Yam Ming Chan, Portia O'Callaghan, Loren Dean
  • Patent number: 8788316
    Abstract: A system is configured to receive a task. The task is received over a first network, includes authentication credentials, and is processed using an application. The system is further configured to send the authentication credentials to a licensing server. The authentication credentials are sent over a second network, and are sent prior to processing the task using the application. The system is also configured to receive an authorization. The authorization is received over the second network, and authorizes the application to process the task.
    Type: Grant
    Filed: December 6, 2011
    Date of Patent: July 22, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Amol M. Karnik, Christopher Hallgren, Loren Dean, Jocelyn Luke Martin
  • Patent number: 8745624
    Abstract: A distributed computing system includes a device that creates a job to be performed by one or more workers, where the job includes a group of tasks. The device further encodes the job into a group of portable format files, where each portable format file includes one or more tasks of the group of tasks. Each portable format file may be handled by each scheduler of a group of different schedulers. The device also transfers the group of portable format files via a network of the distributed computing system and sends information related to the job to one scheduler of the group of different schedulers. The information allows the one scheduler to cause the group of portable format files to be distributed to the one or more workers.
    Type: Grant
    Filed: August 10, 2007
    Date of Patent: June 3, 2014
    Assignee: The Mathworks, Inc.
    Inventors: Jocelyn Luke Martin, Loren Dean
  • Patent number: 8726278
    Abstract: A method and system is disclosed for providing a distributed technical computing environment for distributing technical computing tasks from a technical computing client to technical computing workers for execution of the tasks on one or more computers systems. Tasks can be defined on a technical computing client, and the tasks organized into jobs. The technical computing client can directly distribute tasks to one or more technical computing workers. Furthermore, the technical computing client can submit tasks, or jobs comprising tasks, to an automatic task distribution mechanism that distributes the tasks automatically to one or more technical computing workers providing technical computing services. The technical computing worker performs technical computing of tasks and the results of the execution of tasks may be provided to the technical computing client.
    Type: Grant
    Filed: July 21, 2004
    Date of Patent: May 13, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Matt Shawver, Jocelyn Luke Martin, Roy Lurie, Loren Dean, Cleve Moler, Eugene McGoldrick
  • Patent number: 8707281
    Abstract: One or more computer-readable media store executable instructions that, when executed by processing logic, perform parallel processing. The media store one or more instructions for initiating a single programming language, and identifying, via the single programming language, one or more data distribution schemes for executing a program. The media also store one or more instructions for transforming, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocating the parallel program to two or more labs for parallel execution. The media further store one or more instructions for receiving one or more results associated with the parallel execution of the parallel program from the two or more labs, and providing the one or more results to the program.
    Type: Grant
    Filed: July 23, 2012
    Date of Patent: April 22, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Piotr R. Luszczek, John N. Little, Jocelyn Luke Martin, Halldor N. Stefansson, Edric Ellis, Penelope L. Anderson, Brett Baker, Loren Dean, Roy E. Lurie
  • Patent number: 8707280
    Abstract: A computing device-implemented method includes receiving a program, analyzing and transforming the program, determining an inner context and an outer context of the program based on the analysis of the program, and allocating one or more portions of the inner context of the program to two or more labs for parallel execution. The method also includes receiving one or more results associated with the parallel execution of the one or more portions from the two or more labs, and providing the one or more results to the outer context of the program.
    Type: Grant
    Filed: June 29, 2012
    Date of Patent: April 22, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Halldor N Stefansson, Brett Baker, Edric Ellis, Joseph F Hicklin, John N Little, Jocelyn Luke Martin, Piotr R Luszczek, Nausheen B Moulana, Loren Dean, Roy E. Lurie
  • Patent number: 8612980
    Abstract: A method, system and computer program product is disclosed for providing a distributed computing environment in which an arbitrary job manager or scheduler is able to be employed. In the distributed computing environment, a job is created in a host or client to include one or more technical computing tasks and submitted to the arbitrary scheduler in a portable format. Since the portable format of the job is independent of the platform structure of the scheduler, the schedule can handle the job regardless of the platform structure of the scheduler. The scheduler then transfers the job in the portable format to one or more remote workers. The present invention utilizes a portable format to submit the job to a scheduler and to distribute the job to remote workers so that any scheduler can receive and distribute the job to the remote workers.
    Type: Grant
    Filed: February 17, 2005
    Date of Patent: December 17, 2013
    Assignee: The MathWorks, Inc.
    Inventors: Jocelyn Luke Martin, Loren Dean
  • Patent number: 8527973
    Abstract: A computing device-implemented method includes receiving a program created by a technical computing environment, analyzing the program, generating multiple program portions based on the analysis of the program, dynamically allocating the multiple program portions to multiple software units of execution for parallel programming, receiving multiple results associated with the multiple program portions from the multiple software units of execution, and providing the multiple results or a single result to the program.
    Type: Grant
    Filed: August 22, 2011
    Date of Patent: September 3, 2013
    Assignee: The MathWorks, Inc.
    Inventors: John N. Little, Joseph F. Hicklin, Jocelyn Luke Martin, Nausheen B. Moulana, Halldor N. Stefansson, Loren Dean, Roy E. Lurie, Stephen C. Johnson, Penelope L. Anderson, Michael E. Karr, Jason A. Kinchen
  • Publication number: 20120317165
    Abstract: A computing device-implemented method includes receiving a program, analyzing and transforming the program, determining an inner context and an outer context of the program based on the analysis of the program, and allocating one or more portions of the inner context of the program to two or more labs for parallel execution. The method also includes receiving one or more results associated with the parallel execution of the one or more portions from the two or more labs, and providing the one or more results to the outer context of the program.
    Type: Application
    Filed: June 29, 2012
    Publication date: December 13, 2012
    Applicant: THE MATHWORKS, INC.
    Inventors: Halldor N. Stefansson, Brett Baker, Edric Ellis, Joseph F. Hicklin, John N. Little, Jocelyn Luke Martin, Piotr R. Luszczek, Nausheen B. Moulana, Loren Dean, Roy E. Lurie
  • Publication number: 20120284726
    Abstract: One or more computer-readable media store executable instructions that, when executed by processing logic, perform parallel processing. The media store one or more instructions for initiating a single programming language, and identifying, via the single programming language, one or more data distribution schemes for executing a program. The media also store one or more instructions for transforming, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocating the parallel program to two or more labs for parallel execution. The media further store one or more instructions for receiving one or more results associated with the parallel execution of the parallel program from the two or more labs, and providing the one or more results to the program.
    Type: Application
    Filed: July 23, 2012
    Publication date: November 8, 2012
    Applicant: The MathWorks, Inc.
    Inventors: Piotr R. Luszczek, John N. Little, Jocelyn Luke Martin, Halldor N. Stefansson, Edric Ellis, Penelope L. Anderson, Brett Baker, Loren Dean, Roy E. Lurie
  • Patent number: 8255889
    Abstract: A device, for performing parallel processing, includes a processor to receive one or more portions of an inner context of a program created for a technical computing environment, and allocate one or more portions of the inner context of the program to two or more labs for parallel execution. The processor is also configured to receive one or more results associated with the parallel execution of the one or more portions from the two or more labs, and provide the one or more results to an outer context of the program.
    Type: Grant
    Filed: October 20, 2008
    Date of Patent: August 28, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Halldor N. Stefansson, Brett Baker, Edric Ellis, Joseph F. Hicklin, John N. Little, Jocelyn Luke Martin, Piotr R. Luszczek, Nausheen B. Moulana, Loren Dean, Roy E. Lurie
  • Patent number: 8255890
    Abstract: One or more computer-readable media store executable instructions that, when executed by processing logic, perform parallel processing. The media store one or more instructions for initiating a single programming language, and identifying, via the single programming language, one or more data distribution schemes for executing a program. The media also store one or more instructions for transforming, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocating the parallel program to two or more labs for parallel execution. The media further store one or more instructions for receiving one or more results associated with the parallel execution of the parallel program from the two or more labs, and providing the one or more results to the program.
    Type: Grant
    Filed: October 20, 2008
    Date of Patent: August 28, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Piotr R. Luszczek, John N. Little, Jocelyn Luke Martin, Halldor N. Stefansson, Edric Ellis, Penelope L. Anderson, Brett Baker, Loren Dean, Roy E. Lurie
  • Patent number: 8250550
    Abstract: A computing device-implemented method includes initiating a single programming language, and identifying, via the single programming language, one or more data distribution schemes for executing a program. The method also includes transforming, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocating the parallel program to two or more labs for parallel execution. The method further includes receiving one or more results associated with the parallel execution of the parallel program from the two or more labs, and providing the one or more results to the program.
    Type: Grant
    Filed: October 20, 2008
    Date of Patent: August 21, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Piotr R. Luszczek, John N. Little, Jocelyn Luke Martin, Halldor N. Stefansson, Edric Ellis, Penelope L. Anderson, Brett Baker, Loren Dean, Roy E. Lurie
  • Patent number: 8239846
    Abstract: A device for performing parallel processing includes a processor to initiate a single programming language, and identify, via the single programming language, one or more data distribution schemes for executing a program. The processor also transforms, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocates the parallel program to two or more labs for parallel execution. The processor further receives one or more results associated with the parallel execution of the parallel program from the two or more labs, and provides the one or more results to the program.
    Type: Grant
    Filed: October 20, 2008
    Date of Patent: August 7, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Piotr R. Luszczek, John N. Little, Jocelyn Luke Martin, Halldor N. Stefansson, Edric Ellis, Penelope L. Anderson, Brett Baker, Loren Dean, Roy E. Lurie
  • Patent number: 8239845
    Abstract: One or more computer-readable media store executable instructions that, when executed by processing logic, perform parallel processing. The media store one or more instructions for receiving one or more portions of an inner context of a program created for a technical computing environment, allocating one or more portions of the inner context of the program to two or more labs for parallel execution, receiving one or more results associated with the parallel execution of the one or more portions from the two or more labs, and providing the one or more results to an outer context of the program.
    Type: Grant
    Filed: October 20, 2008
    Date of Patent: August 7, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Halldor N. Stefansson, Brett Baker, Edric Ellis, Joseph F. Hicklin, John N. Little, Jocelyn Luke Martin, Piotr R. Luszczek, Nausheen B. Moulana, Loren Dean, Roy E. Lurie
  • Patent number: 8239844
    Abstract: A computing device-implemented method includes receiving a program, analyzing and transforming the program, determining an inner context and an outer context of the program based on the analysis of the program, and allocating one or more portions of the inner context of the program to two or more labs for parallel execution. The method also includes receiving one or more results associated with the parallel execution of the one or more portions from the two or more labs, and providing the one or more results to the outer context of the program.
    Type: Grant
    Filed: October 20, 2008
    Date of Patent: August 7, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Halldor N. Stefansson, Brett Baker, Edric Ellis, Joseph F. Hicklin, John N. Little, Jocelyn Luke Martin, Piotr R. Luszczek, Nausheen B. Moulana, Loren Dean, Roy E. Lurie
  • Patent number: 8230424
    Abstract: A method, system and computer program product is disclosed for providing a distributed computing environment in which an arbitrary job manager or scheduler is able to be plugged. In the distributed computing environment, a job is created in a storage location to include one or more technical computing tasks and submitted to the arbitrary scheduler by transferring a reference to the storage location of the job. Since a reference to the storage location of the job is transferred to the scheduler, the interface with the scheduler can be implemented regardless of the scheduler. The scheduler then transfers the reference to the storage location of the job to one or more remote workers.
    Type: Grant
    Filed: August 1, 2005
    Date of Patent: July 24, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Jocelyn Luke Martin, Loren Dean
  • Patent number: 8230427
    Abstract: A method, system and computer program product is disclosed for providing a distributed computing environment in which an arbitrary job manager or scheduler is able to be plugged. In the distributed computing environment, a job is created in a storage location to include one or more technical computing tasks and submitted to the arbitrary scheduler by transferring a reference to the storage location of the job. Since a reference to the storage location of the job is transferred to the scheduler, the interface with the scheduler can be implemented regardless of the scheduler. The scheduler then transfers the reference to the storage location of the job to one or more remote workers.
    Type: Grant
    Filed: August 10, 2007
    Date of Patent: July 24, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Jocelyn Luke Martin, Loren Dean