Patents by Inventor David Mizell

David Mizell 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: 10846278
    Abstract: A system for updating an index into a tuple table of tuples is provided. An indexing system updates an index into a tuple table using fine-grain locking of the index. The index includes a values table with an entry for each index value of an index field that references a value-tuple table that includes, for each tuple with the index value, a row that identifies a tuple of the tuple table with that indexed value. After a new tuple is added to the tuple table with a value, the index is updated by locking the entry in the values table, updating the value-tuple table for the value, and then unlocking the entry. When the index is accessed for locating tuples with a value, the accessor locks the entry in the values table for the value, uses the value-tuple table to locate the tuples, and unlocks the entry.
    Type: Grant
    Filed: April 22, 2015
    Date of Patent: November 24, 2020
    Assignee: Cray Inc.
    Inventor: David Mizell
  • Patent number: 10789260
    Abstract: A method and system for identifying results of a query that includes a type predicate is provided. A search system maintains a collection of facts that includes a triple for each fact and a type table that maps entities of the facts to their corresponding type. The search system uses the type table to speed up the process of identifying the search results when the query includes a non-type query triple and a type query triple. A type query triple is a triple that has a type predicate, rather than a non-type predicate. To execute a query that contains a non-type query triple and a type query triple, the search system identifies the triples of the collection that match the non-type query triple. The search system then uses the type table to determine which of the identified triples match the type query triple for inclusion in the search results.
    Type: Grant
    Filed: April 5, 2016
    Date of Patent: September 29, 2020
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: David Mizell, Christopher Douglas Rickett, Andrew Steven Kopser
  • Patent number: 10296834
    Abstract: A method and system for inferring facts in parallel in a multiprocessor computing environment is provided. An inference system infers facts by applying rules to a collection of existing facts. For each existing fact, the inference system schedules a thread to apply the rules to that existing fact. As a thread infers a new fact (i.e., one that is not already in the collection of facts), the thread adds that inferred fact to the collection of facts. When a thread adds a new fact to the collection, the thread also applies the rules to that new fact. After the threads complete execution, the inference system may apply the rules to the facts of the collection, including the newly inferred facts, by again launching a thread for each fact to apply the rules to that fact. The inference system performs this processing iteratively until a termination condition is satisfied.
    Type: Grant
    Filed: August 13, 2014
    Date of Patent: May 21, 2019
    Assignee: Cray, Inc.
    Inventors: David Mizell, Christopher Douglas Rickett
  • Publication number: 20160217189
    Abstract: A method and system for identifying results of a query that includes a type predicate is provided. A search system maintains a collection of facts that includes a triple for each fact and a type table that maps entities of the facts to their corresponding type. The search system uses the type table to speed up the process of identifying the search results when the query includes a non-type query triple and a type query triple. A type query triple is a triple that has a type predicate, rather than a non-type predicate. To execute a query that contains a non-type query triple and a type query triple, the search system identifies the triples of the collection that match the non-type query triple. The search system then uses the type table to determine which of the identified triples match the type query triple for inclusion in the search results.
    Type: Application
    Filed: April 5, 2016
    Publication date: July 28, 2016
    Inventors: David Mizell, Christopher Douglas Rickett, Andrew Steven Kopser
  • Patent number: 9372938
    Abstract: A method and system for identifying results of a query that includes a type predicate is provided. A search system maintains a collection of facts that includes a triple for each fact and a type table that maps entities of the facts to their corresponding type. The search system uses the type table to speed up the process of identifying the search results when the query includes a non-type query triple and a type query triple. A type query triple is a triple that has a type predicate, rather than a non-type predicate. To execute a query that contains a non-type query triple and a type query triple, the search system identifies the triples of the collection that match the non-type query triple. The search system then uses the type table to determine which of the identified triples match the type query triple for inclusion in the search results.
    Type: Grant
    Filed: June 21, 2012
    Date of Patent: June 21, 2016
    Assignee: Cray Inc.
    Inventors: David Mizell, Christopher D. Rickett, Andrew S. Kopser
  • Patent number: 9311731
    Abstract: A method and system in a computer system for dynamically providing a graphical representation of a data store of entries via a matrix interface is disclosed. A dynamic graph system provides a matrix interface that exposes to an application program a graphical representation of data stored in a data store such as a semantic database storing triples. To the application program, the matrix interface represents the graph as a sparse adjacency matrix that is stored in compressed form. Each entry of the data store is considered to represent a link between nodes of the graph. Each entry has a first field and a second field identifying the nodes connected by the link and a third field with a value for the link that connects the identified nodes. The first, second, and third fields represent the rows, column, and elements of the adjacency matrix.
    Type: Grant
    Filed: December 15, 2014
    Date of Patent: April 12, 2016
    Assignee: Cray Inc.
    Inventor: David Mizell
  • Patent number: 9201689
    Abstract: A method and system for software emulation of hardware support for multi-threaded processing using virtual hardware threads is provided. A software threading system executes on a node that has one or more processors, each with one or more hardware threads. The node has access to local memory and access to remote memory. The software threading system manages the execution of tasks of a user program. The software threading system switches between the virtual hardware threads representing the tasks as the tasks issue remote memory access requests while in user privilege mode. Thus, the software threading system emulates more hardware threads than the underlying hardware supports and switches the virtual hardware threads without the overhead of a context switch to the operating system or change in privilege mode.
    Type: Grant
    Filed: April 22, 2011
    Date of Patent: December 1, 2015
    Assignee: Cray Inc.
    Inventors: Steven L. Scott, Gregory B. Titus, Sung-Eun Choi, Troy A. Johnson, David Mizell, Michael F. Ringenburg, Karlon West
  • Publication number: 20150227570
    Abstract: A system for updating an index into a tuple table of tuples is provided. An indexing system updates an index into a tuple table using fine-grain locking of the index. The index includes a values table with an entry for each index value of an index field that references a value-tuple table that includes, for each tuple with the index value, a row that identifies a tuple of the tuple table with that indexed value. After a new tuple is added to the tuple table with a value, the index is updated by locking the entry in the values table, updating the value-tuple table for the value, and then unlocking the entry. When the index is accessed for locating tuples with a value, the accessor locks the entry in the values table for the value, uses the value-tuple table to locate the tuples, and unlocks the entry.
    Type: Application
    Filed: April 22, 2015
    Publication date: August 13, 2015
    Inventor: David Mizell
  • Patent number: 9047333
    Abstract: A system for updating an index into a tuple table of tuples is provided. An indexing system updates an index into a tuple table using fine-grain locking of the index. The index includes a values table with an entry for each index value of an index field that references a value-tuple table that includes, for each tuple with the index value, a row that identifies a tuple of the tuple table with that indexed value. After a new tuple is added to the tuple table with a value, the index is updated by locking the entry in the values table, updating the value-tuple table for the value, and then unlocking the entry. When the index is accessed for locating tuples with a value, the accessor locks the entry in the values table for the value, uses the value-tuple table to locate the tuples, and unlocks the entry.
    Type: Grant
    Filed: September 20, 2012
    Date of Patent: June 2, 2015
    Assignee: Cray Inc
    Inventor: David Mizell
  • Publication number: 20150138206
    Abstract: A method and system in a computer system for dynamically providing a graphical representation of a data store of entries via a matrix interface is disclosed. A dynamic graph system provides a matrix interface that exposes to an application program a graphical representation of data stored in a data store such as a semantic database storing triples. To the application program, the matrix interface represents the graph as a sparse adjacency matrix that is stored in compressed form. Each entry of the data store is considered to represent a link between nodes of the graph. Each entry has a first field and a second field identifying the nodes connected by the link and a third field with a value for the link that connects the identified nodes. The first, second, and third fields represent the rows, column, and elements of the adjacency matrix.
    Type: Application
    Filed: December 15, 2014
    Publication date: May 21, 2015
    Inventor: David Mizell
  • Patent number: 8943068
    Abstract: A method and system in a computer system for dynamically providing a graphical representation of a data store of entries via a matrix interface is disclosed. A dynamic graph system provides a matrix interface that exposes to an application program a graphical representation of data stored in a data store such as a semantic database storing triples. To the application program, the matrix interface represents the graph as a sparse adjacency matrix that is stored in compressed form. Each entry of the data store is considered to represent a link between nodes of the graph. Each entry has a first field and a second field identifying the nodes connected by the link and a third field with a value for the link that connects the identified nodes. The first, second, and third fields represent the rows, column, and elements of the adjacency matrix.
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: January 27, 2015
    Assignee: Cray Inc
    Inventor: David Mizell
  • Publication number: 20140351195
    Abstract: A method and system for inferring facts in parallel in a multiprocessor computing environment is provided. An inference system infers facts by applying rules to a collection of existing facts. For each existing fact, the inference system schedules a thread to apply the rules to that existing fact. As a thread infers a new fact (i.e., one that is not already in the collection of facts), the thread adds that inferred fact to the collection of facts. When a thread adds a new fact to the collection, the thread also applies the rules to that new fact. After the threads complete execution, the inference system may apply the rules to the facts of the collection, including the newly inferred facts, by again launching a thread for each fact to apply the rules to that fact. The inference system performs this processing iteratively until a termination condition is satisfied.
    Type: Application
    Filed: August 13, 2014
    Publication date: November 27, 2014
    Inventors: David Mizell, Christopher Douglas Rickett
  • Publication number: 20140280282
    Abstract: A method and system for interfacing SPARQL front ends of SPARQL systems to a non-SPARQL system is provided. A translated SPARQL (“tSPARQL”) system inputs a translated SPARQL query, generates commands for a non-SPARQL system based on the tSPARQL query, and provides those commands to the non-SPARQL system for executing the SPARQL query corresponding to the tSPARQL query. The tSPARQL system translates the tSPARQL query into commands that are provided to a non-SPARQL query engine for executing the SPARQL query represented by the tSPARQL query. When the tSPARQL system receives results of the commands, it provides the results to the SPARQL front end.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: CRAY INC.
    Inventor: David Mizell
  • Patent number: 8832014
    Abstract: A method and system for inferring facts in parallel in a multiprocessor computing environment is provided. An inference system infers facts by applying rules to a collection of existing facts. For each existing fact, the inference system schedules a thread to apply the rules to that existing fact. As a thread infers a new fact (i.e., one that is not already in the collection of facts), the thread adds that inferred fact to the collection of facts. When a thread adds a new fact to the collection, the thread also applies the rules to that new fact. After the threads complete execution, the inference system may apply the rules to the facts of the collection, including the newly inferred facts, by again launching a thread for each fact to apply the rules to that fact. The inference system performs this processing iteratively until a termination condition is satisfied.
    Type: Grant
    Filed: June 21, 2012
    Date of Patent: September 9, 2014
    Assignee: Cray Inc.
    Inventors: David Mizell, Christopher D. Rickett
  • Publication number: 20140244657
    Abstract: A method and system in a computer system for dynamically providing a graphical representation of a data store of entries via a matrix interface is disclosed. A dynamic graph system provides a matrix interface that exposes to an application program a graphical representation of data stored in a data store such as a semantic database storing triples. To the application program, the matrix interface represents the graph as a sparse adjacency matrix that is stored in compressed form. Each entry of the data store is considered to represent a link between nodes of the graph. Each entry has a first field and a second field identifying the nodes connected by the link and a third field with a value for the link that connects the identified nodes. The first, second, and third fields represent the rows, column, and elements of the adjacency matrix.
    Type: Application
    Filed: February 26, 2013
    Publication date: August 28, 2014
    Applicant: CRAY INC.
    Inventor: David Mizell
  • Publication number: 20140081934
    Abstract: A system for updating an index into a tuple table of tuples is provided. An indexing system updates an index into a tuple table using fine-grain locking of the index. The index includes a values table with an entry for each index value of an index field that references a value-tuple table that includes, for each tuple with the index value, a row that identifies a tuple of the tuple table with that indexed value. After a new tuple is added to the tuple table with a value, the index is updated by locking the entry in the values table, updating the value-tuple table for the value, and then unlocking the entry. When the index is accessed for locating tuples with a value, the accessor locks the entry in the values table for the value, uses the value-tuple table to locate the tuples, and unlocks the entry.
    Type: Application
    Filed: September 20, 2012
    Publication date: March 20, 2014
    Applicant: CRAY INC.
    Inventor: David Mizell
  • Publication number: 20130346445
    Abstract: A method and system for identifying results of a query that includes a type predicate is provided. A search system maintains a collection of facts that includes a triple for each fact and a type table that maps entities of the facts to their corresponding type. The search system uses the type table to speed up the process of identifying the search results when the query includes a non-type query triple and a type query triple. A type query triple is a triple that has a type predicate, rather than a non-type predicate. To execute a query that contains a non-type query triple and a type query triple, the search system identifies the triples of the collection that match the non-type query triple. The search system then uses the type table to determine which of the identified triples match the type query triple for inclusion in the search results.
    Type: Application
    Filed: June 21, 2012
    Publication date: December 26, 2013
    Inventors: David Mizell, Christopher D. Rickett, Andrew S. Kopser
  • Publication number: 20130346354
    Abstract: A method and system for inferring facts in parallel in a multiprocessor computing environment is provided. An inference system infers facts by applying rules to a collection of existing facts. For each existing fact, the inference system schedules a thread to apply the rules to that existing fact. As a thread infers a new fact (i.e., one that is not already in the collection of facts), the thread adds that inferred fact to the collection of facts. When a thread adds a new fact to the collection, the thread also applies the rules to that new fact. After the threads complete execution, the inference system may apply the rules to the facts of the collection, including the newly inferred facts, by again launching a thread for each fact to apply the rules to that fact. The inference system performs this processing iteratively until a termination condition is satisfied.
    Type: Application
    Filed: June 21, 2012
    Publication date: December 26, 2013
    Inventors: David Mizell, Christopher D. Rickett
  • Publication number: 20120272247
    Abstract: A method and system for software emulation of hardware support for multi-threaded processing using virtual hardware threads is provided. A software threading system executes on a node that has one or more processors, each with one or more hardware threads. The node has access to local memory and access to remote memory. The software threading system manages the execution of tasks of a user program. The software threading system switches between the virtual hardware threads representing the tasks as the tasks issue remote memory access requests while in user privilege mode. Thus, the software threading system emulates more hardware threads than the underlying hardware supports and switches the virtual hardware threads without the overhead of a context switch to the operating system or change in privilege mode.
    Type: Application
    Filed: April 22, 2011
    Publication date: October 25, 2012
    Inventors: Steven L. Scott, Gregory B. Titus, Sung-Eun Choi, Troy A. Johnson, David Mizell, Michael F. Ringenburg, Karlon West