For Parallel Processing System Patents (Class 707/764)
  • Patent number: 7885969
    Abstract: The invention pertains to a system and method for dispatching and executing the compute-intensive parts of the workflow for database queries on an attached high-performance, parallel computing platform.
    Type: Grant
    Filed: September 17, 2007
    Date of Patent: February 8, 2011
    Assignee: International Business Machines Corporation
    Inventors: Ramesh Natarajan, Michael Kochte
  • Patent number: 7882123
    Abstract: A storage management system is provided. The storage management system may includes a data collector configured to receive storage management information for storage. The storage manager includes an agent configured to collect storage management information for a storage object and to communicate the storage management information to the data collector. The storage management system includes a user interface configured to display the storage management information for the storage objects.
    Type: Grant
    Filed: April 10, 2007
    Date of Patent: February 1, 2011
    Assignee: International Business Machines Corporation
    Inventors: Nicholas Tabellion, Robert Gagnon, Martin Pare, Guy Letourneau, Heidi Schoolcraft, James Thomson, John Dunning, Steven Calde, Michael Kay
  • Patent number: 7877573
    Abstract: One embodiment of the present invention sets forth a technique for computing a parallel prefix sum using one or more cooperative thread arrays (CTA) within a graphics processing unit. The prefix sum input list is partitioned and distributed to each CTA. Within each CTA, the input list is further partitioned for processing by individual threads in a way that avoids access conflicts to memory. Each list partition within the CTA is assigned to one of a plurality of concurrent threads, which executes a prefix sum operation the partition. The final values of the prefix sum operations form a list that is then subjected to a second prefix sum operation. Each element of the second prefix sum operation is added to each element of the subsequent partition, completing the prefix sum operation within the CTA. This technique may be extended to prefix sum operations that span two or more CTAs.
    Type: Grant
    Filed: August 8, 2007
    Date of Patent: January 25, 2011
    Assignee: NVIDIA Corporation
    Inventor: Scott M. Le Grand
  • Patent number: 7873650
    Abstract: A parallel-processing system that is capable of dynamically creating a distributed tree for distributing data. The system includes a plurality of first nodes. Each of the plurality of first nodes is capable of establishing a connection with at least one of the plurality of first nodes to form at least a portion of a dynamically created distribution tree. The system also includes a second node that is capable of receiving data for distribution within the parallel-processing system. The second node is also capable of establishing a connection with at least two of the plurality of first nodes. In this particular embodiment, the second node and the plurality of first nodes operate to form the dynamically created distribution tree. Moreover, the second node also operates to distribute the data to each of the plurality of first nodes through the dynamically created distribution tree.
    Type: Grant
    Filed: June 11, 2004
    Date of Patent: January 18, 2011
    Assignee: Seisint, Inc.
    Inventors: Richard K. Chapman, David A. Bayliss, Gavin C. Halliday, Nigel G. Hicks, Ole D. Poulsen, Jacob Cobbett-Smith
  • Publication number: 20100332461
    Abstract: A system and method of massively parallel data processing are disclosed. In an embodiment, a method includes generating an interpretation of a customizable database request which includes an extensible computer process and providing an input guidance to available processors of an available computing environment. The method further includes automatically distributing an execution of the interpretation across the available computing environment operating concurrently and in parallel, wherein a component of the execution may be limited to at least a part of an input data. The method also includes automatically assembling a response using a distributed output of the execution.
    Type: Application
    Filed: September 8, 2010
    Publication date: December 30, 2010
    Applicant: Aster Data Systems, Inc.
    Inventors: ERIC FRIEDMAN, Peter Pawlowski
  • Patent number: 7849069
    Abstract: Resources disposed within a plurality of distributed and autonomous computing systems, each of which may have its own legacy resource discovery service, are identified and allocated. Resource identification servers disposed within each one of the distributed computing systems communicate resource attribute data to a tree hierarchy of dedicated servers. The resource attribute data are maintained in native formats within the distributed computing systems and are mapped to a common format provided by the dedicated servers. The resource attribute data are aggregated at each node within the tree hierarchy, communicated up through the tree hierarchy to one or more root nodes and replicated down through all of the nodes. Additional system robustness is provided through period resource checks and resource attribute data updates. Resource allocation queries are submitted to any level node within the hierarchy and forwarded to the proper computing system for processing.
    Type: Grant
    Filed: June 21, 2006
    Date of Patent: December 7, 2010
    Assignee: International Business Machines Corporation
    Inventors: Zhen Liu, Hao Yang, Fan Ye
  • Patent number: 7844623
    Abstract: System and article of manufacture for processing queries that are executed against a database. In one embodiment, the database environment imposes a limit on the number of columns capable of being returned for a single query. Accordingly, a single query is replicated to produce N sub-queries, each selecting a portion of the total number of result fields specified in the single query.
    Type: Grant
    Filed: January 22, 2008
    Date of Patent: November 30, 2010
    Assignee: International Business Machines Corporation
    Inventors: Richard D. Dettinger, Peter J. Johnson, Dan P. Kolz, Shannon E. Wenzel
  • Patent number: 7844620
    Abstract: Embodiments of the invention may be used to increase query processing parallelism of an in-memory database stored on a parallel computing system. A group of compute nodes each store a portion of data as part of the in-memory database. Further, a pool of compute nodes may be reserved to create copies of data from the compute nodes of the in-memory database as part of query processing. When a query is received for execution, the query may be evaluated to determine whether portions of in-memory should be duplicated to allow multiple elements of the query (e.g., multiple query predicates) to be evaluated in parallel.
    Type: Grant
    Filed: November 16, 2007
    Date of Patent: November 30, 2010
    Assignee: International Business Machines Corporation
    Inventors: Eric Lawrence Barsness, David L. Darrington, Amanda Peters, John Matthew Santosuosso
  • Patent number: 7840585
    Abstract: Structured queries, such as those written using the Structured Query Language (SQL) can be an efficient mechanism for expressing the information sought to be obtained from a collection of data. Mechanisms can enable the use of structured queries to express data processing that can be performed in parallel in order to obtain the attendant efficiencies of such processing. The structured queries, whether standing alone or integrated into another programming context, can be translated into an intermediate form that can be compatible with, or equivalent to, the programming context into which they were integrated or some other high-level programming language. The intermediate, translated form can use core commands that abstract mechanisms that can be executed in parallel. The core commands include commands for applying a function in parallel and distributing and joining data in parallel, and also include aggregations of core commands directed to commonly performed functions.
    Type: Grant
    Filed: June 12, 2007
    Date of Patent: November 23, 2010
    Assignee: Microsoft Corporation
    Inventors: William D Ramsey, Ronnie I Chaiken
  • Patent number: 7836041
    Abstract: A method of processing information and producing search response is performed at a server system. A search query is received from a client system or device. An Internet database is searched to identify a set of documents accessible via the Internet that match the search query, and a first response having information identifying at least a portion of the identified set of documents is generated. In addition, a determination is made as to whether the search query meets predefined criteria associated with current time inquiries. If the search query is determined to meet the predefined criteria associated with current time inquiries, a second response specifying a current time for at least one location is generated, and the first response and second response are returned to the client system or device for simultaneous display at the client system or device.
    Type: Grant
    Filed: March 10, 2008
    Date of Patent: November 16, 2010
    Assignee: Google Inc.
    Inventors: Sanjay Jain, Vivek Kumar, Krzysztof Wieslaw Czuba
  • Patent number: 7827167
    Abstract: A database management system has a query interface for receiving a query and a query executor for executing the received query. The query executor dynamically generates a task, and executes a plurality of tasks in parallel. In execution of each task, each time data is required to be read from a database, the query executor generates a task for acquiring the data, and in execution of the generated task, issues a data read request for reading the data from the database, to thereby shorten a time taken to execute each task.
    Type: Grant
    Filed: July 21, 2006
    Date of Patent: November 2, 2010
    Inventors: Masaru Kitsuregawa, Kazuo Goda
  • Publication number: 20100257191
    Abstract: A method of analyzing a data parallel query includes receiving a user-specified data parallel query that includes a plurality of query operators. An operator type for each of the query operators is identified based on a type of parallel input data structure the operator operates on and a type of parallel output data structure the operator outputs. It is determined whether the query is a prohibited query based on the identified operator types.
    Type: Application
    Filed: April 3, 2009
    Publication date: October 7, 2010
    Applicant: Microsoft Corporation
    Inventors: Igor Ostrovsky, John Duffy, Mike Liddell, Edward G. Essey, Stephen H. Toub
  • Patent number: 7805416
    Abstract: An improved policy enforcement architecture includes several components that improve the performance of policy enforcement in a hierarchical storage environment. A File System Query instruction permits a richer set of queries to be expressed by a policy engine, thereby permitting more complex policies to be implemented with ease. The File System result is generated at the file server, and only files of interest are forwarded to the policy engine. The file system query advantageously may be applied against a pre-generated index having one more characterizing attributes to further reduce the processing required to retrieve policy data. An Index Build instruction, added to a programming interface, allows a policy engine generate the characterizing indices in advance of use. Index maintenance techniques maintain consistency between the index and the file system to ensure that the policy can be enforced using accurate file information.
    Type: Grant
    Filed: September 30, 2005
    Date of Patent: September 28, 2010
    Assignee: EMC Corporation
    Inventors: James T. Compton, Surrendranath R. Doohkan, Stephen A. Fridella, Uday K. Gupta, Nikolay Popov, Stephen A. Rago
  • Publication number: 20100241646
    Abstract: A system and method of massively parallel data processing are disclosed. In an embodiment, a method includes generating an interpretation of a customizable database request which includes an extensible computer process and providing an input guidance to available processors of an available computing environment. The method further includes automatically distributing an execution of the interpretation across the available computing environment operating concurrently and in parallel, wherein a component of the execution may be limited to at least a part of an input data. The method also includes automatically assembling a response using a distributed output of the execution.
    Type: Application
    Filed: May 21, 2010
    Publication date: September 23, 2010
    Applicant: ASTER DATA SYSTEMS, INC.
    Inventors: Eric Friedman, Peter Pawlowski
  • Patent number: 7797324
    Abstract: A document retrieval system performing retrieval of electronic documents includes, a document database storing a plurality of pieces of document data, a transposed index storage device storing a transposed index in which the document numbers of the document data containing a keyword string are registered, a document number subsequence search start address table storage device storing a document number subsequence search start address indicating a position where an assigned document group start document number is recorded, a document retrieval managing unit having document number subsequence acquisition request means for transmitting the total number of documents, and a plurality of the document number subsequence acquisition apparatuses having assigned document group determination means for determining a document group in a sequence in accordance with the preset apparatus number of a local apparatus as the assigned document group.
    Type: Grant
    Filed: March 24, 2008
    Date of Patent: September 14, 2010
    Assignee: Fujitsu Limited
    Inventor: Ikuo Miyoshi
  • Patent number: 7792824
    Abstract: An apparatus and method enable parallelism in a computer program using parallelism that is built-in to many modem database managers. The parallelism provided by a database manager in executing user-defined functions provides an easy way to implement parallelism for database and non-database functions in a computer program without the need of hard-coding all the parallelism support in the computer program itself. A database table is defined with instructions the user wants to execute in parallel. A user-defined function is then defined that executes the instructions in the table. A database operation is then defined for the table that invokes the user-defined function. When the database operation is executed, the database manager provides parallelism by executing multiple tasks in parallel in the user-defined function.
    Type: Grant
    Filed: January 8, 2004
    Date of Patent: September 7, 2010
    Assignee: International Business Machines Corporation
    Inventor: Mark John Anderson
  • Patent number: 7792812
    Abstract: A search engine device that supports a Patricia trie arrangement of search keys includes an array of comparator cells that supports parallel decoding of the Patricia trie. This array of comparator cells processes a plurality of distinguishing bit identifiers for nodes in the Patricia trie in parallel with a corresponding plurality of bits of an applied search key during a search operation. In response to this processing, the array generates a match signal that identifies a location of a matching search key candidate within the Patricia trie.
    Type: Grant
    Filed: March 31, 2006
    Date of Patent: September 7, 2010
    Assignee: NetLogic Microsystems, Inc.
    Inventor: David Walter Carr
  • Patent number: 7779008
    Abstract: Techniques are provided for performing a parallel aggregation operation on data that resides in a container, such as a relational table. During generation of the execution plan for the operation, it is determined whether partition-wise aggregation should be performed, based on the grouping keys involved in the aggregation and the partition keys used to partition the container. If partition-wise aggregation is to be performed, then the assignments given to the slave processes that are assigned to scan a container are made on a partition-wise basis. The scan slaves themselves may perform full or partial aggregation (depending on whether they are the only scan slaves assigned to the partition). If the scan slaves perform no aggregation, or only partial aggregation, then the scan slaves redistribute the data items to aggregation slaves that are local to the scan slaves.
    Type: Grant
    Filed: February 16, 2005
    Date of Patent: August 17, 2010
    Assignee: Oracle International Corporation
    Inventors: Benoit Dageville, Bhaskar Ghosh, Rushan Chen, Thierry Cruanes, Mohamed Zait
  • Patent number: 7779016
    Abstract: Methods, apparatus, and products are disclosed for parallel execution of operations for a partitioned binary radix tree that include: receiving, in a parallel computer, an operational entry for the PBRT, the PBRT comprising a plurality of logical pages that contain a plurality of entries, each logical page included in a tier and containing one or more subentries corresponding to the tier of the logical page containing the subentry, each entry is composed of a subentry from each logical page on an entry path; processing in parallel, on the parallel computer, each logical page in each tier, including: identifying a portion of the operational entry that corresponds to the tier of the logical page, and performing an operation on the logical page in dependence upon the identified portion of the operational entry for the tier; and selecting operation results from the logical pages on the entry path for the operational entry.
    Type: Grant
    Filed: September 14, 2006
    Date of Patent: August 17, 2010
    Assignee: International Business Machines Corporation
    Inventors: Charles J. Archer, Benjamin E. Lynam, Gary R. Ricard
  • Patent number: 7774325
    Abstract: A distributed data storage system stores a single image file system across a plurality of physical storage volumes. The physical storage may be direct attached storage, or may be coupled through a storage area network (“SAN”). One or more clients communicate with a plurality of storage nodes through a network. A client of the distributed data storage system transmits a request over the network for a file identified in the file system. A load-balancing switch selects one of the storage nodes to process the request. The storage node accesses at least one of the physical volumes and transmits a response for the storage operation to the client.
    Type: Grant
    Filed: February 13, 2003
    Date of Patent: August 10, 2010
    Assignee: Intel Corporation
    Inventors: Joshua L. Coates, Patrick E. Bozeman, Alfred Gary Landrum, Peter D. Mattis, Naveen Nalam, Drew S. Roselli
  • Publication number: 20100198855
    Abstract: A system and method for providing parallel result streams for database queries is provided. The system includes a network including a client, a server, and a database. The client executes an application and sends a query to the server. In response, the server compiles the query to produce a query plan, executes statements in the query plan and sends parallel result streams to the client.
    Type: Application
    Filed: January 30, 2009
    Publication date: August 5, 2010
    Inventors: VENKATESAN N. RANGANATHAN, Andrew D. Therber, Anoop Sharma, Hansjorg Zeller
  • Patent number: 7761462
    Abstract: Embodiments include partitioning queries into subsets of queries and at least one database into subdatabases, designating searching tasks by associating each of the subsets of queries with one or more of the subdatabases, and assigning at least one searching task to at least one computer of a group of computers operating in parallel. Embodiments further describe designating two or more subtasks as related tasks on a virtual shared memory bulletin board, executing the at least one searching task using the at least one computer of the group of computers operating in parallel, and generating a search result responsive to the executing.
    Type: Grant
    Filed: January 4, 2008
    Date of Patent: July 20, 2010
    Inventors: Robert D. Bjornson, Nicholas J. Carriero, Andrew H. Sherman, Stephen B. Weston, James E. Wing
  • Patent number: 7739267
    Abstract: A computer implemented method for processing a mixed data flow. Mixed data flow operators are classified. The mixed data flow operators are associated with multiple runtime environments in which the mixed data flow operators can be executed. The mixed data flow operators are segregated into regions. A mixed data flow operator in a particular region is executable by one of the multiple runtime environments associated with the particular region. The execution of the regions is sequenced.
    Type: Grant
    Filed: March 10, 2006
    Date of Patent: June 15, 2010
    Assignee: International Business Machines Corporation
    Inventors: Qi Jin, Dinkar Venkatraman Rao, Sriram Srinivasan, Lin Xu
  • Publication number: 20100131540
    Abstract: A system, method, and computer-readable medium for optimization of query processing in a parallel processing system are provided. Skewed values and non-skewed values are treated differently to improve upon conventional DISTINCT and aggregation query processing. Skewed attribute values on which a DISTINCT selection or group by aggregation is applied are allocated entries in a hash table. In this manner, a processing module may consult the hash table to determine if a skewed attribute value has been encountered during the query processing in a manner that precludes repetitive redistribution of rows with highly skewed attribute values on which a DISTINCT selection or group by aggregation is applied.
    Type: Application
    Filed: November 25, 2008
    Publication date: May 27, 2010
    Inventors: Yu Xu, Olli Pekka Kostamaa
  • Patent number: 7725450
    Abstract: A search engine includes a pipelined arrangement of a plurality of search and tree maintenance sub-engines therein, which are configured to support the performance of search operations on exclusively valid multi-way trees of search prefixes concurrently with the performance of update operations on the multi-way trees as they are being searched.
    Type: Grant
    Filed: March 14, 2007
    Date of Patent: May 25, 2010
    Assignee: NetLogic Microsystems, Inc.
    Inventors: Gary Depelteau, David W. Carr
  • Patent number: 7716249
    Abstract: The described implementations relate to efficient scheduling of transactions and tasks. A memory location, address, or variable previously accessed by a blocked entity is observed periodically to determine an appropriate time to wake and retry the blocked entity. If the previous accessed memory location, address or variable changes state, a scheduler wakes the blocked entity and the blocked entity retries processing. A doubly-indexed data structure of blocked entities and memory locations associated with the blocked entities may be used to efficiently determine when a retrying execution would be profitable.
    Type: Grant
    Filed: September 16, 2005
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Tim L. Harris, Simon Peyton-Jones, Jonathan R. Howell, John R. Douceur
  • Patent number: 7702676
    Abstract: A system and method for managing a domain comprised of a plurality of database systems, wherein each of the database systems performs database queries to retrieve data stored by the database systems. There are one or more virtual regulators for managing the domain and one or more closed-loop system management (CLSM) regulators for managing each of the database systems in the domain. Both the virtual regulators and CLSM regulators perform parallel virtual optimization of the database queries performed by the database systems.
    Type: Grant
    Filed: March 12, 2007
    Date of Patent: April 20, 2010
    Assignee: Teradata US, Inc.
    Inventors: Douglas P. Brown, Scott E. Gnau, John Mark Morris
  • Publication number: 20100094894
    Abstract: Techniques are disclosed for invoking an analysis routine running on a parallel computer system to analyze query results. An interface used to build and execute a database query may be used to invoke a complex analysis routine on a parallel computer system to analyze query results obtained by executing the database query. Alternatively, a user may build a query that includes specific conditions evaluated by an analysis routine on the parallel computer system (as opposed to selecting an analysis routine after receiving query results).
    Type: Application
    Filed: October 9, 2008
    Publication date: April 15, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Richard D. Dettinger, Mark G. Megerian, Amanda Peters
  • Publication number: 20100094893
    Abstract: Techniques are disclosed for invoking an analysis routine running on a parallel computer system to analyze query results. An interface used to build and execute a database query may be used to invoke a complex analysis routine on a parallel computer system to analyze query results obtained by executing the database query. Alternatively, a user may build a query that includes specific conditions evaluated by an analysis routine on the parallel computer system (as opposed to selecting an analysis routine after receiving query results).
    Type: Application
    Filed: October 9, 2008
    Publication date: April 15, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Richard D. Dettinger, Mark G. Megerian, Amanda Peters