JP2010033561A - マルチプロセッサ・システム上でデータ・セットを区分化およびソートするための方法および装置 - Google Patents
マルチプロセッサ・システム上でデータ・セットを区分化およびソートするための方法および装置 Download PDFInfo
- Publication number
- JP2010033561A JP2010033561A JP2009151796A JP2009151796A JP2010033561A JP 2010033561 A JP2010033561 A JP 2010033561A JP 2009151796 A JP2009151796 A JP 2009151796A JP 2009151796 A JP2009151796 A JP 2009151796A JP 2010033561 A JP2010033561 A JP 2010033561A
- Authority
- JP
- Japan
- Prior art keywords
- data
- accelerators
- bucket
- buckets
- accelerator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000638 solvent extraction Methods 0.000 title claims abstract description 71
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000004364 calculation method Methods 0.000 claims description 28
- 230000011218 segmentation Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000005192 partition Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3889—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
- G06F9/3891—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute organised in groups of units sharing resources, e.g. clusters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/22—Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
- G06F7/36—Combined merging and sorting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30021—Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【解決手段】複数のアクセラレータを並行して使用することにより、データセットを異なるデータ領域に対応する複数のバケットに反復的に区分化して、複数のアクセラレータのローカルストレージに格納可能で、各反復において、データセットを複数の大規模バケットに大まかに区分化し、そのデータセット内のデータ値の配分を示すことが可能なデータセットのパラメータに基づいて該データセットの複数のデータ領域を決定し、複数のアクセラレータを並行して使用することにより、複数の大規模バケットを、複数のデータ領域それぞれに対応する複数の小規模バケットに区分化することにより、複数のアクセラレータのそれぞれが、区分化している大規模バケット内の各要素について、複数のデータ領域内でその要素が属するデータ領域を計算によって決定する。
【選択図】図3
Description
102 パラメータ取得ユニット
103 データ領域決定ユニット
104 精密な区分化ユニット
105 バケット・マージ・ユニット
106 再区分化バケット決定ユニット
111 データ・セット取得ユニット
113 データ分配ユニット
114 ソート・ユニット
115 データ書き戻しユニット
Claims (20)
- マルチプロセッサ・システム上でデータ・セットを区分化するための方法であって、前記マルチプロセッサ・システムは少なくとも1つのコア・プロセッサと複数のアクセラレータとを有し、
前記複数のアクセラレータを並行して使用することにより、前記データ・セットを異なるデータ領域に対応する複数のバケットに反復的に区分化するステップを含み、前記複数のバケットそれぞれは前記複数のアクセラレータのローカル・ストレージに格納可能であり、
各反復において、
前記データ・セットを複数の大規模バケットに大まかに区分化するステップと、
前記データ・セット内のデータ値の配分を示すことが可能な前記データ・セットのパラメータを取得するステップと、
前記パラメータに基づいて前記データ・セットに関する複数のデータ領域を決定するステップと、
前記複数のアクセラレータを並行して使用することにより、前記複数の大規模バケットを、前記複数のデータ領域それぞれに対応する複数の小規模バケットに区分化するステップと、を含み、前記複数のアクセラレータのそれぞれが、区分化している前記大規模バケット内の各要素について、前記複数のデータ領域内で前記要素が属するデータ領域を計算によって決定する、方法。 - 各反復において、
前記複数の大規模バケットの中で、同じデータ領域に対応する複数の小規模バケットのマージを実行するステップと、
前記複数のアクセラレータの前記ローカル・ストレージの容量よりも大きい、前記マージ済みバケット内のバケットを、次の反復のための新しいデータ・セットとして決定するステップと、
をさらに含む、請求項1に記載の方法。 - 前記複数のアクセラレータそれぞれの前記ローカル・ストレージにおいて、前記複数のデータ領域についてそれぞれストレージ領域が設定され、
前記複数のアクセラレータを並行して使用することにより、前記複数の大規模バケットを、前記複数のデータ領域それぞれに対応する複数の小規模バケットに区分化するステップが、
前記複数のデータ領域に番号付けするステップと、
計算結果が、前記要素が属するデータ領域の番号に対応するように、前記アクセラレータが区分化している前記大規模バケット内の各要素について、前記複数のアクセラレータそれぞれによって計算を実行するステップと、
前記アクセラレータによって、番号が前記計算結果に対応する前記データ領域に対して設定された前記アクセラレータのローカル・ストレージ内の前記ストレージ領域内に、前記要素を格納するステップと、
をさらに含む、請求項1に記載の方法。 - 前記パラメータに基づいて前記データ・セットに関する複数のデータ領域を決定するステップが、
前記パラメータに基づいて、前記データ・セットに関する固定ステップを備える複数の連続するデータ領域を決定するステップをさらに含み、
計算結果が、前記要素が属するデータ領域の番号に対応するように、前記アクセラレータが区分化している前記大規模バケット内の各要素について、前記複数のアクセラレータそれぞれによって計算を実行するステップが、
前記要素を、前記複数の連続するデータ領域の前記固定ステップで割るステップと、丸めの結果が、前記要素が属するデータ領域の番号に対応するように、前記アクセラレータによって丸めを実行するステップとを、さらに含む、
請求項3に記載の方法。 - 前記パラメータに基づいて前記データ・セットに関する複数のデータ領域を決定するステップが、
前記パラメータに基づいて、データの2進表現の複数のビットの重み付け合計に従って、複数のデータ領域を決定するステップをさらに含み、
計算結果が、前記要素が属するデータ領域の番号に対応するように、前記アクセラレータが区分化している前記大規模バケット内の各要素について、前記複数のアクセラレータそれぞれによって計算を実行するステップが、
前記重み付け合計の値が、前記要素が属する前記データ領域の番号に対応するように、前記アクセラレータによって前記要素の2進表現の前記複数のビットの重み付け合計を計算するステップをさらに含む、
請求項3に記載の方法。 - 前記複数のアクセラレータそれぞれの前記ローカル・ストレージにおいて、小規模バケットを形成するためにアクセラレータが区分化している大規模バケット内の同じデータ領域に属する要素をまとめてリンク付けするために、リンク付けリストが設定され、
前記アクセラレータによって、番号が前記計算結果に対応する前記データ領域に対して設定された前記アクセラレータのローカル・ストレージ内の前記ストレージ領域内に、前記要素を格納するステップの後に、
前記ストレージ領域が満杯であることが判別された場合、前記アクセラレータによって、前記ストレージ領域内の前記要素を、前記メイン・メモリ内で前記アクセラレータが区分化している前記大規模バケットの位置に、データ・ストライプとして書き戻すステップと、
前記データ・ストライプを、同じデータ領域に属する前記大規模バケット内の他のデータ・ストライプにリンク付けするように、そのローカル・ストレージ内の前記リンク付けリストを、前記アクセラレータによって更新するステップと、
をさらに含む、請求項3に記載の方法。 - 前記複数のアクセラレータそれぞれの前記ローカル・ストレージ内の前記リンク付けリストが、インデックス・リストおよびテール・ポインタ・リストからなり、前記インデックス・リストは、前記アクセラレータによって前記メイン・メモリに書き戻された各データ・ストライプについて、前記データ・ストライプと同じ前記データ領域に属するその前のデータ・ストライプの位置を順番に記録し、前記テール・ポインタ・リストは、前記アクセラレータによって前記メイン・メモリに書き戻された前記複数のデータ領域それぞれの最新のデータ・ストライプの位置を示し、
そのローカル・ストレージ内の前記リンク付けリストを、前記アクセラレータによって更新するステップが、
前記ストレージ領域から前記メイン・メモリに書き戻された前記データ・ストライプが属する、前記データ領域に対応するそのテール・ポインタ・リスト内のエントリを、前記アクセラレータによって決定するステップと、
同じデータ領域に属する前記データ・ストライプの前のデータ・ストライプの位置を示すように、前記メイン・メモリに書き戻された前記データ・ストライプに対応する前記アクセラレータの前記インデックス・リスト内のエントリに、前記エントリ内の値を書き込むステップと、
前記データ・ストライプが属する前記データ領域の現在の最新データ・ストライプの位置を示すように、前記メイン・メモリ内で前記アクセラレータが区分化している前記大規模バケット内の前記データ・ストライプの位置を使用して、前記テール・ポインタ・リスト内の前記エントリの値を更新するステップと、
をさらに含む、請求項6に記載の方法。 - 同じデータ領域に属する前記データ・セット内の要素をまとめてリンク付けするために、前記メイン・メモリ内にリンク付けリストが設定され、前記リンク付けリストはインデックス・リストおよびテール・ポインタ・リストからなり、
そのローカル・ストレージ内の前記リンク付けリストを前記アクセラレータによって更新するステップの後に、
前記アクセラレータの前記ローカル・ストレージ内の前記インデックス・リストが満杯の場合、前記インデックス・リストのコンテンツを、前記アクセラレータが区分化している前記大規模バケットに対応する前記メイン・メモリの前記インデックス・リスト内の一部分に書き込むステップを、さらに含む、
請求項7に記載の方法。 - 前記複数の大規模バケットの中で、同じデータ領域に対応する複数の小規模バケットのマージを実行するステップが、
当初はそれが属する前記大規模バケット内の前記データ・ストライプの位置を示すエントリを置き換えるために、前記データ・セット全体において対応するデータ・ストライプのグローバル位置を示すように、その中の各エントリが変更されるように、前記メイン・メモリにおける前記インデックス・リストおよび前記テール・ポインタ・リストを修正するステップをさらに含み、ヘッド・インデックスおよびテール・インデックスは前記複数の大規模バケットの中で互いにリンク付けされる、請求項8に記載の方法。 - 第1の反復において、前記データ・セット内のデータ値の前記配分を示すことができる前記データ・セットの前記パラメータが、前記データ・セット内の前記データ値の前記配分を精密に示すことができる前記データ・セットに基づいて計算されたパラメータであるか、または前記データ・セット内のデータ値の前記配分を大まかに示すことができる前記データ・セットに基づいて推定されたパラメータである、請求項2に記載の方法。
- 各反復において、前記複数のアクセラレータを並行して使用することにより、前記複数の大規模バケットを、前記複数のデータ領域それぞれに対応する複数の小規模バケットに区分化するステップが、
前記区分化中に、前記小規模バケット内のデータ値の前記現在の配分を精密に示すことができるパラメータを、前記複数の小規模バケットそれぞれについて、リアルタイムで一般化するステップをさらに含み、
前記複数の大規模バケットの中で、同じデータ領域に対応する複数の小規模バケットのマージを実行するステップが、
マージ済みバケットそれぞれについて、その中に含まれる前記複数の小規模バケットの前記パラメータに基づいて、前記マージ済みバケット内のデータ値の前記配分を精密に示すことができるパラメータを決定するステップをさらに含む、
請求項10に記載の方法。 - 前記パラメータが、データ値の平均/分散、最小値および最大値のうちの1つまたは複数を備える、請求項1、10、および11のうちのいずれか一項に記載の方法。
- マルチプロセッサ・システム上でデータ・セットをソートするための方法であって、前記マルチプロセッサ・システムは少なくとも1つのコア・プロセッサと複数のアクセラレータとを有し、
請求項1から12のいずれか一項に記載の、マルチプロセッサ・システム上でデータ・セットを区分化するための前記方法を使用することによって、ソートされることになるデータ・セットを、複数の異なるデータ領域に対応する複数のバケットに区分化するステップと、
前記複数のバケットをメイン・メモリから前記複数のアクセラレータに分配するステップと、
前記複数のアクセラレータによって、並行して、前記複数のバケットのそれぞれでデータ・ソートを実行するステップと、
前記複数のアクセラレータにより、前記複数の異なるデータ領域の順序に従って、それらのソートされたバケットをそれぞれ前記メイン・メモリに書き戻すステップと、
を含む、方法。 - マルチプロセッサ・システム内でデータ・セットを区分化するための装置であって、前記マルチプロセッサ・システムは少なくとも1つのコア・プロセッサと複数のアクセラレータとを有し、前記装置は、前記複数のアクセラレータを並行して使用することにより、前記データ・セットを異なるデータ領域に対応する複数のバケットに反復的に区分化し、前記複数のバケットそれぞれは前記複数のアクセラレータのローカル・ストレージに格納可能であり、
各反復において、前記データ・セットを複数の大規模バケットに大まかに区分化するための大まかな区分化ユニットと、
各反復において、前記データ・セット内のデータ値の配分を示すことが可能な前記データ・セットのパラメータを取得するためのパラメータ取得ユニットと、
各反復において、前記パラメータに基づいて前記データ・セットに関する複数のデータ領域を決定するためのデータ領域決定ユニットと、
前記複数のアクセラレータを並行して使用することにより、前記複数の大規模バケットを、前記複数のデータ領域それぞれに対応する複数の小規模バケットに区分化するための精密な区分化ユニットと、を備え、前記複数のアクセラレータのそれぞれが、区分化している前記大規模バケット内の各要素について、前記複数のデータ領域内で前記要素が属するデータ領域を計算によって決定する、装置。 - 各反復において、前記複数の大規模バケットの中で、同じデータ領域に対応する複数の小規模バケットのマージを実行するための、バケット・マージ・ユニットと、
各反復において、前記複数のアクセラレータの前記ローカル・ストレージの容量よりも大きい、前記マージ済みバケット内のバケットを、区分化されることになる新しいデータ・セットとして決定するための、再区分化バケット決定ユニットと、
をさらに備える、請求項14に記載の装置。 - 前記複数のアクセラレータそれぞれの前記ローカル・ストレージにおいて、前記複数のデータ領域についてそれぞれストレージ領域が設定され、
前記精密な区分化ユニットが、
各反復において前記複数のデータ領域を番号付けするためのデータ領域番号付けユニットと、
計算結果が各反復において前記要素が属しているデータ領域の番号に対応するように、前記複数のアクセラレータのそれぞれが、前記アクセラレータが区分化している前記大規模バケット内の各要素について計算を実行できるようにするための、コンピューティング・ユニットと、
前記複数のアクセラレータそれぞれが、前記計算結果に基づいて、前記アクセラレータが区分化している前記大規模バケット内の各要素を、前記要素が属している前記データ領域に対応する前記アクセラレータのローカル・ストレージ内の前記ストレージ領域に格納できるようにするための、データ・カテゴリ化ユニットと、
をさらに備える、請求項15に記載の装置。 - 前記複数のアクセラレータそれぞれの前記ローカル・ストレージにおいて、小規模バケットを形成するために、前記アクセラレータが区分化している大規模バケット内の同じデータ領域に属する要素をまとめてリンク付けするためのリンク付けリストが設定され、前記リンク付けリストは、インデックス・リストおよびテール・ポインタ・リストからなり、
前記精密な区分化ユニットが、
前記アクセラレータが前記ストレージ領域内に要素を書き込んだ後、前記複数のアクセラレータのうちの1つのストレージ領域が満杯である場合、前記アクセラレータに、前記ストレージ領域内の前記要素を、各反復において前記アクセラレータがメイン・メモリ内で区分化している前記大規模バケットの位置に、データ・ストライプとして書き戻させることが可能な、データ・ストライプ書き戻しユニットと、
前記複数のアクセラレータのうちの1つが前記メイン・メモリにデータ・ストライプを書き戻した後、前記データ・ストライプを、各反復において同じデータ領域に属する、前記アクセラレータが区分化している前記大規模バケット内の他のデータ・ストライプに、リンク付けさせるように、前記アクセラレータに、そのローカル・ストレージ内の前記リンク付けリストを更新させることが可能な、リンク付けリスト更新ユニットと、
をさらに備える、請求項16に記載の装置。 - 同じデータ領域に属する前記データ・セット内の要素をまとめてリンク付けするために、前記メイン・メモリ内にリンク付けリストが設定され、前記リンク付けリストはインデックス・リストおよびテール・ポインタ・リストからなり、
前記精密な区分化ユニットが、
前記複数のアクセラレータのうちの1つのインデックス・リストが満杯であるものと判別した場合、前記アクセラレータに、各反復において、前記アクセラレータが区分化している前記大規模バケットに対応する前記メイン・メモリの前記インデックス・リスト内の一部分に、前記インデックス・リストのコンテンツを書き込ませることができるようにするための、インデックス書き戻しユニットをさらに備え、
前記バケット・マージ・ユニットが、
当初はそれが属する前記大規模バケット内の前記データ・ストライプの位置を示すエントリを置き換えるために、前記データ・セット全体において対応するデータ・ストライプのグローバル位置を示すように、その中の各エントリが変更されるように、各反復において、前記メイン・メモリにおける前記インデックス・リストおよび前記テール・ポインタ・リストを修正するための、インデックス・マージ・ユニットをさらに備え、ヘッド・インデックスおよびテール・インデックスは前記複数の大規模バケットの中で互いにリンク付けされる、
請求項17に記載の装置。 - 前記精密な区分化ユニットが、
各反復において、前記複数のアクセラレータのそれぞれに、それによって区分化される前記複数の小規模バケットそれぞれについて、区分化中の前記小規模バケット内でのデータ値の前記現在の配分を精密に示すことができるパラメータを、リアルタイムで一般化させることができるようにするための、パラメータ一般化ユニットをさらに備え、
前記バケット・マージ・ユニットが、
各反復において、マージ済みバケットそれぞれについて、前記パラメータ一般化ユニットによって一般化された、前記マージ済みバケットに含まれる前記複数の小規模バケットの前記パラメータに基づいて、前記マージ済みバケット内でのデータ値の前記配分を精密に示すことができるパラメータを決定するための、パラメータ・マージ・ユニットをさらに備える、
請求項15に記載の装置。 - マルチプロセッサ・システム内でデータ・セットをソートするための装置であって、前記マルチプロセッサ・システムは少なくとも1つのコア・プロセッサと複数のアクセラレータとを有し、
ソートされることになるデータ・セットを、複数の異なるデータ領域に対応する複数のバケットに区分化するために、請求項14から19のいずれか一項に記載のマルチプロセッサ・システム内でデータ・セットを区分化するための装置と、
前記メイン・メモリから前記複数のアクセラレータへ前記複数のバケットを分配するための、データ分配ユニットと、
前記複数のアクセラレータに、前記複数のバケット上でそれぞれ並行してデータ・ソートを実行させることができるようにするためのソート・ユニットと、
前記複数のアクセラレータに、前記複数の異なるデータ領域の順序に従って、それらのソート済みバケットを前記メイン・メモリに書き戻させることができるようにするための、データ書き戻しユニットと、
を備える、装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810134393XA CN101639769B (zh) | 2008-07-30 | 2008-07-30 | 在多处理器系统上对数据集进行划分及排序的方法和装置 |
CN200810134393.X | 2008-07-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010033561A true JP2010033561A (ja) | 2010-02-12 |
JP5425541B2 JP5425541B2 (ja) | 2014-02-26 |
Family
ID=41609517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009151796A Expired - Fee Related JP5425541B2 (ja) | 2008-07-30 | 2009-06-26 | マルチプロセッサ・システム上でデータ・セットを区分化およびソートするための方法および装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8140585B2 (ja) |
JP (1) | JP5425541B2 (ja) |
KR (1) | KR20100013257A (ja) |
CN (1) | CN101639769B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI625381B (zh) * | 2013-05-31 | 2018-06-01 | 日立化成股份有限公司 | 蝕刻組成物及其應用 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8209305B2 (en) * | 2006-04-19 | 2012-06-26 | Microsoft Corporation | Incremental update scheme for hyperlink database |
US20110190916A1 (en) * | 2010-01-29 | 2011-08-04 | Siemens Product Lifecycle Managemet Software Inc. | System and Method for Management of Parameters Using Options and Variants in a Product Lifecycle Management System |
KR101662769B1 (ko) * | 2010-03-09 | 2016-10-05 | 삼성전자주식회사 | 고속 정렬 장치 및 방법 |
US20120150825A1 (en) * | 2010-12-13 | 2012-06-14 | International Business Machines Corporation | Cleansing a Database System to Improve Data Quality |
TW201322022A (zh) * | 2011-11-24 | 2013-06-01 | Alibaba Group Holding Ltd | 分散式資料流處理方法及其系統 |
US8898419B2 (en) * | 2011-12-22 | 2014-11-25 | Netapp, Inc. | System and method for balancing block allocation on data storage devices |
CA2875001A1 (en) * | 2012-06-06 | 2013-12-12 | Spiral Genetics Inc. | Method and system for sorting data in a cloud-computing environment and other distributed computing environments |
CN103514042B (zh) * | 2012-06-18 | 2018-01-09 | 中国科学院计算机网络信息中心 | 一种双调归并排序调优方法及装置 |
JP5962269B2 (ja) * | 2012-07-09 | 2016-08-03 | 富士通株式会社 | 評価装置,分散格納システム,評価方法及び評価プログラム |
WO2014031114A1 (en) * | 2012-08-22 | 2014-02-27 | Empire Technology Development Llc | Partitioning sorted data sets |
CN103246563B (zh) * | 2013-04-24 | 2016-06-08 | 湖南大学 | 一种具有存储感知的多层分块调度方法 |
CN104123304B (zh) | 2013-04-28 | 2018-05-29 | 国际商业机器公司 | 数据驱动的并行排序系统和方法 |
CN104216684B (zh) * | 2013-06-04 | 2017-05-31 | 阿里巴巴集团控股有限公司 | 一种多核并行系统及其数据处理方法 |
US9282051B2 (en) * | 2013-06-26 | 2016-03-08 | Netronome Systems, Inc. | Credit-based resource allocator circuit |
JP6318303B2 (ja) * | 2014-05-30 | 2018-04-25 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 並列マージソート |
US9286001B2 (en) | 2014-06-30 | 2016-03-15 | Microsoft Licensing Technology Llc | Effective range partition splitting in scalable storage |
CN104360824B (zh) * | 2014-11-10 | 2017-12-12 | 北京奇虎科技有限公司 | 一种数据合并的方法和装置 |
US20160188643A1 (en) * | 2014-12-31 | 2016-06-30 | Futurewei Technologies, Inc. | Method and apparatus for scalable sorting of a data set |
US9740511B2 (en) * | 2015-06-04 | 2017-08-22 | Advanced Micro Devices, Inc. | Per-block sort for performance enhancement of parallel processors |
US9904695B2 (en) | 2015-06-25 | 2018-02-27 | International Business Machines Corporation | Efficient sorting of large data set with duplicate values |
US10296612B2 (en) | 2015-09-29 | 2019-05-21 | At&T Mobility Ii Llc | Sorting system |
US10416959B2 (en) | 2015-10-27 | 2019-09-17 | At&T Mobility Ii Llc | Analog sorter |
US10496370B2 (en) * | 2015-12-02 | 2019-12-03 | At&T Intellectual Property I, L.P. | Adaptive alphanumeric sorting apparatus |
US10261832B2 (en) * | 2015-12-02 | 2019-04-16 | At&T Mobility Ii Llc | Sorting apparatus |
EP3380993B1 (en) * | 2016-02-12 | 2021-04-07 | Google LLC | Systems and methods for robust large-scale machine learning |
US10261831B2 (en) | 2016-08-24 | 2019-04-16 | Qualcomm Incorporated | Speculative loop iteration partitioning for heterogeneous execution |
CN107329966B (zh) * | 2017-05-11 | 2020-05-19 | 昆仑智汇数据科技(北京)有限公司 | 机器数据存储方法及系统 |
DK3644196T3 (da) * | 2018-10-26 | 2022-08-01 | Tata Consultancy Services Ltd | Systemer og fremgangsmåde til lagring af data i et integreret array og en struktur baseret på en linked-liste |
US10691464B1 (en) * | 2019-01-18 | 2020-06-23 | quadric.io | Systems and methods for virtually partitioning a machine perception and dense algorithm integrated circuit |
KR101986129B1 (ko) * | 2019-04-17 | 2019-06-05 | 영남대학교 산학협력단 | 데이터 정렬 방법과 장치 및 이를 수행하기 위한 컴퓨팅 장치 |
CN110618866A (zh) * | 2019-09-20 | 2019-12-27 | 北京中科寒武纪科技有限公司 | 数据处理方法及装置以及相关产品 |
US11113064B2 (en) * | 2019-11-27 | 2021-09-07 | Sas Institute Inc. | Automated concurrency and repetition with minimal syntax |
CN114281762B (zh) * | 2022-03-02 | 2022-06-03 | 苏州浪潮智能科技有限公司 | 一种日志存储加速方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05242049A (ja) * | 1991-07-10 | 1993-09-21 | Hitachi Ltd | 分散データベースのソート方法およびアクセス方法 |
JPH10228368A (ja) * | 1997-02-14 | 1998-08-25 | Nec Corp | ソーティングアクセラレータ |
US5842207A (en) * | 1991-07-10 | 1998-11-24 | Hitachi, Ltd. | Method for storing records of a distributed database by plural processors to provide a host processor with sorted records belonging to one of a plurality of key sections |
US6978458B1 (en) * | 2000-11-17 | 2005-12-20 | Oracle International Corporation | Distributing data items to corresponding buckets for use in parallel operations |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5987468A (en) * | 1997-12-12 | 1999-11-16 | Hitachi America Ltd. | Structure and method for efficient parallel high-dimensional similarity join |
US6366911B1 (en) * | 1998-09-28 | 2002-04-02 | International Business Machines Corporation | Partitioning of sorted lists (containing duplicate entries) for multiprocessors sort and merge |
US6427148B1 (en) * | 1998-11-09 | 2002-07-30 | Compaq Computer Corporation | Method and apparatus for parallel sorting using parallel selection/partitioning |
US6477523B1 (en) * | 1999-12-03 | 2002-11-05 | Ncr Corporation | Selectivity prediction with compressed histograms in a parallel processing database system |
US6505188B1 (en) * | 2000-06-15 | 2003-01-07 | Ncr Corporation | Virtual join index for relational databases |
US6757675B2 (en) * | 2000-07-24 | 2004-06-29 | The Regents Of The University Of California | Method and apparatus for indexing document content and content comparison with World Wide Web search service |
US7139772B2 (en) * | 2003-08-01 | 2006-11-21 | Oracle International Corporation | Ownership reassignment in a shared-nothing database system |
-
2008
- 2008-07-30 CN CN200810134393XA patent/CN101639769B/zh not_active Expired - Fee Related
-
2009
- 2009-06-24 KR KR1020090056355A patent/KR20100013257A/ko active IP Right Grant
- 2009-06-26 JP JP2009151796A patent/JP5425541B2/ja not_active Expired - Fee Related
- 2009-07-24 US US12/508,628 patent/US8140585B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05242049A (ja) * | 1991-07-10 | 1993-09-21 | Hitachi Ltd | 分散データベースのソート方法およびアクセス方法 |
US5842207A (en) * | 1991-07-10 | 1998-11-24 | Hitachi, Ltd. | Method for storing records of a distributed database by plural processors to provide a host processor with sorted records belonging to one of a plurality of key sections |
JPH10228368A (ja) * | 1997-02-14 | 1998-08-25 | Nec Corp | ソーティングアクセラレータ |
US6978458B1 (en) * | 2000-11-17 | 2005-12-20 | Oracle International Corporation | Distributing data items to corresponding buckets for use in parallel operations |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI625381B (zh) * | 2013-05-31 | 2018-06-01 | 日立化成股份有限公司 | 蝕刻組成物及其應用 |
Also Published As
Publication number | Publication date |
---|---|
JP5425541B2 (ja) | 2014-02-26 |
CN101639769B (zh) | 2013-03-06 |
KR20100013257A (ko) | 2010-02-09 |
US8140585B2 (en) | 2012-03-20 |
US20100031003A1 (en) | 2010-02-04 |
CN101639769A (zh) | 2010-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5425541B2 (ja) | マルチプロセッサ・システム上でデータ・セットを区分化およびソートするための方法および装置 | |
JP6605573B2 (ja) | 並列ディシジョン・ツリー・プロセッサー・アーキテクチャ | |
JP6816078B2 (ja) | 拡張可能なマルチ車両タスクのためのシステムおよび方法 | |
EP3391214B1 (en) | Processing data using dynamic partitioning | |
CN105468439B (zh) | 在cpu-gpu异构框架下遍历固定半径内邻居的自适应并行方法 | |
US9400767B2 (en) | Subgraph-based distributed graph processing | |
CN104952032A (zh) | 图的处理方法、装置以及栅格化表示及存储方法 | |
EP4020209A1 (en) | Hardware offload circuitry | |
CN112000845B (zh) | 一种基于gpu加速的超空间哈希索引方法 | |
US20170083286A1 (en) | Parallel merge sorting | |
US20220391320A1 (en) | Operation device of convolutional neural network, operation method of convolutional neural network and computer program stored in a recording medium to execute the method thereof | |
CN114327809A (zh) | 构建和调度用于并行处理的任务 | |
CN106484532B (zh) | 面向sph流体模拟的gpgpu并行计算方法 | |
Dong et al. | High-Performance and Flexible Parallel Algorithms for Semisort and Related Problems | |
Chatterjee et al. | Data structures and algorithms for counting problems on graphs using gpu | |
CN106980673A (zh) | 内存数据库表索引更新方法及系统 | |
Che et al. | Accelerating all-edge common neighbor counting on three processors | |
CN112100446B (zh) | 搜索方法、可读存储介质和电子设备 | |
US8549456B2 (en) | System and method for circuit design floorplanning | |
Kang et al. | A comparative analysis of iterative MapReduce systems | |
Sanaullah et al. | GPU-accelerated charge mapping | |
Concessao et al. | Meerkat: A framework for Dynamic Graph Algorithms on GPUs | |
CN116701438B (zh) | 数据关联分析方法、装置、电子设备和计算机存储介质 | |
US20240311163A1 (en) | Hardware-driven call stack attribution | |
US20240134932A1 (en) | Distributed matrix computation control method and apparatus supporting matrix fused operation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130205 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20130228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20130228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130412 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131105 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20131105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131127 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |