Patents by Inventor Michael E. Karr

Michael E. Karr 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: 8997065
    Abstract: A device creates a graph based on source code, and analyzes the source code to identify private variables and functions of the source code and public variables and functions of the source code. The device determines, based on the graph, a size threshold and semantics-related characteristics of functions and variables for each module, of multiple modules, and assigns, based on the graph, the private variables and functions to a corresponding module of the multiple modules. The device reduces, based on the graph, a number of the public variables and functions assigned to each module, and generates the multiple modules based on one or more of the graph, the size threshold, the assigned private variables and functions, and the number of the public variables and functions assigned to each module.
    Type: Grant
    Filed: December 3, 2012
    Date of Patent: March 31, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Michael E. Karr, Gael Mulat
  • 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
  • Patent number: 8108845
    Abstract: A computing system receives a program created by a technical computing environment, analyzes the program, generates multiple program portions based on the analysis of the program, dynamically allocates the multiple program portions to multiple software units of execution for parallel programming, receives multiple results associated with the multiple program portions from the multiple software units of execution, and provides the multiple results or a single result to the program.
    Type: Grant
    Filed: May 15, 2007
    Date of Patent: January 31, 2012
    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: 20120011347
    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: Application
    Filed: August 22, 2011
    Publication date: January 12, 2012
    Applicant: 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
  • Patent number: 8010954
    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: May 15, 2007
    Date of Patent: August 30, 2011
    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
  • Patent number: 7739676
    Abstract: A method and computer program product is shown for use with a computer programming language having dynamic types and overloaded functions. A function data structure (a function handle) is constructed using a function name, which data structure contains or leads to information necessary to resolve function overloading, and also may lead to other auxiliary functions such as write, read or print. Application of the function data structure at the point of construction is functionally equivalent to application of a function name string. However, the function data structure may be applied without regard to the scope at the point of construction.
    Type: Grant
    Filed: November 24, 2004
    Date of Patent: June 15, 2010
    Assignee: The Math Works, Inc.
    Inventors: Michael E. Karr, Mary Ann Branch
  • Publication number: 20080222620
    Abstract: A computing system receives a program created by a technical computing environment, analyzes the program, generates multiple program portions based on the analysis of the program, dynamically allocates the multiple program portions to multiple software units of execution for parallel programming, receives multiple results associated with the multiple program portions from the multiple software units of execution, and provides the multiple results or a single result to the program.
    Type: Application
    Filed: May 15, 2007
    Publication date: September 11, 2008
    Applicant: 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: 20080201721
    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: Application
    Filed: May 15, 2007
    Publication date: August 21, 2008
    Applicant: 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
  • Patent number: 6857118
    Abstract: A method and computer program product is shown for use with a computer programming language having dynamic types and overloaded functions. A function data structure (a function handle) is constructed using a function name, which data structure contains or leads to information necessary to resolve function overloading, and also may lead to other auxiliary functions such as write, read or print. Application of the function data structure at the point of construction is functionally equivalent to application of a function name string. However, the function data structure may be applied without regard to the scope at the point of construction.
    Type: Grant
    Filed: July 25, 2001
    Date of Patent: February 15, 2005
    Assignee: The MathWorks, Inc.
    Inventors: Michael E. Karr, Mary Ann Branch