×

Optimizing data analysis through directional dependencies of a graph including plurality of nodes and attributing threading models and setting status to each of the nodes

  • US 8,166,479 B2
  • Filed: 06/26/2008
  • Issued: 04/24/2012
  • Est. Priority Date: 06/26/2007
  • Status: Active Grant
First Claim
Patent Images

1. A method for processing data comprising:

  • defining a plurality of tasks requiring execution;

    identifying one or more dependencies for each respective task of the plurality of tasks, the one or more dependencies comprising at least one of a resource dependency and a memory dependency;

    determining dependencies between for each respective task of the plurality of tasks wherein the dependencies include directional dependencies;

    creating a directed graph, wherein the directed graph includes;

    a plurality of nodes, the nodes respectively corresponding to the plurality of tasks requiring execution; and

    a plurality of directed edges that respectively correspond to the directional dependencies, each of said directed edges originating from a node of the plurality of nodes and terminating on another node of the plurality of nodes; and

    analyzing the directed graph to assign execution of tasks to a plurality of processors to maximize computational efficiency;

    performing the following steps until all data is processed;

    setting status of all nodes of the plurality of nodes to processed or unprocessed status;

    when a task corresponding to a node of the plurality of nodes has been completely computed, setting status of the node to processed status;

    when data corresponding to a node of the plurality of nodes has been changed, setting status of the node to unprocessed status; and

    executing tasks corresponding to all unprocessed nodes of the plurality of nodes in accordance with respectively assigned threading models.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×