JP2010532528A - データ並列演算における順番保存 - Google Patents
データ並列演算における順番保存 Download PDFInfo
- Publication number
- JP2010532528A JP2010532528A JP2010514964A JP2010514964A JP2010532528A JP 2010532528 A JP2010532528 A JP 2010532528A JP 2010514964 A JP2010514964 A JP 2010514964A JP 2010514964 A JP2010514964 A JP 2010514964A JP 2010532528 A JP2010532528 A JP 2010532528A
- Authority
- JP
- Japan
- Prior art keywords
- order
- computer
- operations
- reordering
- logical
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
- G06F8/456—Parallelism detection
Abstract
Description
1.論理的順番再順序付け、
2.物理的順番再順序付け、
3.両方(物理的および論理的順番再順序付け)、
4.何れでもない(物理的および論理的順番が保存される)。
Claims (20)
- コンピューターに実行させるためのコンピューター実行可能命令を有するコンピューター読み取り可能媒体であって、前記命令は、
分割および結合を発生させるデータ並列演算を含むように複合的データ並列演算を書き直すステップ(206)と、
結果としてのそれぞれの分割を並列に処理するステップ(208)と、
データ並列演算の前記実行の間、論理的順序情報を確立するステップ(207)と、
必要な論理的並び順を保存するように動作可能な最終的結合処理を使用して1つの出力ストリームにデータを結合し戻すステップ(212)と
を具備することを特徴とするコンピューター読み取り可能媒体。 - 保存される前記論理的順序情報が、前記データ並列演算への入力における要素の位置から導出される(272)ことを特徴とする請求項1に記載のコンピューター読み取り可能媒体。
- 前記最終的結合処理が、前記論理的順序情報から最終的に順序付けられた集合を生成する(302)ように動作可能であることを特徴とする請求項1に記載のコンピューター読み取り可能媒体。
- 物理的並び順を保存するようにすべての演算が配慮している(have been careful)場合に、前記最終的結合処理が、要素に対して漸進的並べ替え(incremental sort)を実行する(302)ように動作可能であることを特徴とする請求項1に記載のコンピューター読み取り可能媒体。
- 前記1つの出力ストリームが、前記最終的結合処理の順序付けられた(302)結果を含むことを特徴とする請求項4に記載のコンピューター読み取り可能媒体。
- 物理的並び順を保存するようにすべての演算が配慮していない場合に、前記結合演算が、並べ替えおよび結合に関与する(246)ことを特徴とする請求項1に記載のコンピューター読み取り可能媒体。
- 確立した並び順を有する並べ替えが、論理的順序保存特性を確立するキーを発生させるように変更される(372)ことを特徴とする請求項6に記載のコンピューター読み取り可能媒体。
- 保存される前記順番情報が、前記データ並列演算への入力におけるそれぞれの要素から並べ替えキーを抽出するキー選択機能から導出される(308)ことを特徴とする請求項1に記載のコンピューター読み取り可能媒体。
- 複合的データ並列演算の実行に際して、出力における相対的入力要素の位置を保存するための方法であって、
前記要素の間での論理的並び順を確立し、かつ順番保存を必要とする演算にアクセスするステップ(272)と、
下流の演算が、複数の分類の何れに前記演算が属するかによって異なる技法を使用して、並び順情報を記憶することを確実にするステップ(276)と
を具備することを特徴とする方法。 - 複合的演算が、それぞれの構成演算に個々の分類を表示するために分析されるステップであって、前記個々の分類が、物理的順番再順序付け分類、論理的順番再順序付け分類、物理的および論理的順番再順序付け分類、ならびに上記の何れでもない分類、から成るグループから選択される(207)ことを特徴とする請求項9に記載の方法。
- 論理的順番再順序付け分類または両方に属する何れかの演算がある場合には、前記結合演算に最も近い前記論理的順序再順序付け分類における演算が、次に順番を再構築するために必要な情報を記憶させる(298)ことを特徴とする請求項9に記載の方法。
- 前記最も近い演算から前記結合への出力を使用する、物理的再順序付け分類におけるすべての演算が、前記最終的な結合の間、順番を再構築するために必要な情報を 覚える (300)ことを特徴とする請求項11に記載の方法。
- 前記順番保存処理が:
物理的順番再順序付け分類におけるそれぞれの演算に並び順が保存される必要性があることを通知する(322)ステップと、
並び順に対する変更を記憶するよりもっと効率的であると判定される(326)代替のアルゴリズムであって、前記アルゴリズムが前記物理的順番再順序付け分類に属さない場合には、前記代替の演算に移る(329)ステップと
を具備することを特徴とする請求項12に記載の方法。 - 並び順に対する変更を記憶するよりもっと効率的であると判定される代替のアルゴリズムがない場合には、関連付けを実行し、変更を記憶する(328)ステップ
をさらに具備することを特徴とする請求項13に記載の方法。 - 前記代替のアルゴリズムに関する前記判定のために経験的方法が使用される(328)ことを特徴とする請求項13に記載の方法。
- 請求項9に記載の前記ステップ(200)をコンピューターに実行させるための、コンピューターで実行可能な命令を有するコンピューター読み取り可能媒体。
- データ発生源を検索する(292)ステップと、
前記データ発生源におけるそれぞれの演算に個々の分類を表示するために、複合的データ並列演算を分析する(294)ステップと、
何れかの演算が論理的順序再順序付け分類に属する場合には(296)、結合に最も近い前記論理的順序再順序付け分類における演算において順番を再構築するために必要な情報を記憶する(298)ステップと、
前記結合に最も近い前記論理的順序再順序付け演算からの出力を使用するすべての演算における順番保存を容易にする順番保存処理を実行する(300)ステップと、
最終的に順序付けられた集合を生成するために最終的結合処理を実行する(302)ステップと
を具備することを特徴とする、データ並列演算において既存の順序を表す要素位置を保存するための方法。 - 何れの演算も前記物理的および論理的順番再順序付け分類に属さず、かつ並び順が重要でない場合には、特に何も為されない(306)ことを特徴とする請求項17に記載の方法。
- 何れの演算も前記物理的および論理的順番再順序付け分類に属さず、かつ並び順が重要である場合には、前記最終的な結合処理の間、要素の間での入力データの相対的並び順が保存される(308)ことを特徴とする請求項17に記載の方法。
- 請求項17に記載の前記ステップ(200)をコンピューターに実行させるためのコンピューターで実行可能な命令を有することを特徴とするコンピューター読み取り可能媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/823,167 US8074219B2 (en) | 2007-06-27 | 2007-06-27 | Order preservation in data parallel operations |
PCT/US2008/067138 WO2009002750A2 (en) | 2007-06-27 | 2008-06-16 | Order preservation in data parallel operations |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010532528A true JP2010532528A (ja) | 2010-10-07 |
Family
ID=40162386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010514964A Pending JP2010532528A (ja) | 2007-06-27 | 2008-06-16 | データ並列演算における順番保存 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8074219B2 (ja) |
EP (1) | EP2176752A4 (ja) |
JP (1) | JP2010532528A (ja) |
CN (1) | CN101689125B (ja) |
TW (1) | TWI444894B (ja) |
WO (1) | WO2009002750A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011141587A (ja) * | 2010-01-05 | 2011-07-21 | Nippon Telegr & Teleph Corp <Ntt> | 分散処理システム、分散処理方法、およびプログラム |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8996556B2 (en) * | 2009-06-05 | 2015-03-31 | Microsoft Technology Licensing, Llc | Parallel processing of an ordered data stream |
US8276154B2 (en) * | 2009-12-18 | 2012-09-25 | Microsoft Corporation | Hash partitioning streamed data |
US8949249B2 (en) | 2010-06-15 | 2015-02-03 | Sas Institute, Inc. | Techniques to find percentiles in a distributed computing environment |
US20120124518A1 (en) * | 2010-11-16 | 2012-05-17 | Microsoft Corporation | Managing Operations via a User Interface |
US10007698B2 (en) * | 2011-11-28 | 2018-06-26 | Sybase, Inc. | Table parameterized functions in database |
US9122700B2 (en) * | 2011-12-20 | 2015-09-01 | Los Alamos National Security, Llc | Parallel log structured file system collective buffering to achieve a compact representation of scientific and/or dimensional data |
US9251155B1 (en) * | 2012-05-04 | 2016-02-02 | Paraccel Llc | Maintaining sort order of data in databases |
US10175961B2 (en) * | 2015-06-10 | 2019-01-08 | International Business Machines Corporation | Joining operator graph elements via whole program optimization |
US10783113B2 (en) * | 2015-06-11 | 2020-09-22 | Oracle International Corporation | Data retention framework |
JP6902805B2 (ja) * | 2017-03-03 | 2021-07-14 | ランウェイ セーフ アイピーアール エイビー | 人工材料拘束システム及びその形成方法 |
CN111291036B (zh) * | 2018-11-21 | 2023-10-20 | 杭州海康威视数字技术股份有限公司 | 数据标签的确定方法、装置及计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0231232A (ja) * | 1988-07-21 | 1990-02-01 | Matsushita Electric Ind Co Ltd | データ処理装置 |
JPH09511347A (ja) * | 1994-01-31 | 1997-11-11 | サン マイクロシステムズ インコーポレイテッド | マルチプロセッサディジタルデータプロセッシングシステムにおけるデータアクセス方法および装置 |
JP2004302741A (ja) * | 2003-03-31 | 2004-10-28 | Fujitsu Ltd | グリッドコンピューティングを用いたシステムにおけるリソース提供方法,そのシステムにおける監視装置,その監視装置用プログラムおよびそのシステムにおけるリソース提供端末用プログラム |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0447228A3 (en) | 1990-03-16 | 1993-01-07 | Hewlett-Packard Company | Data stream concentrator providing attribute data storage and graphics pipeline access |
US5237691A (en) | 1990-08-01 | 1993-08-17 | At&T Bell Laboratories | Method and apparatus for automatically generating parallel programs from user-specified block diagrams |
JPH077422B2 (ja) | 1991-08-23 | 1995-01-30 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータ処理データベース・システムにおけるジョインの実行方法及びシステム |
US5421007A (en) * | 1992-05-12 | 1995-05-30 | Syncsort Incorporated | Key space analysis method for improved record sorting and file merging |
JP3415914B2 (ja) * | 1993-10-12 | 2003-06-09 | 富士通株式会社 | 並列マージソート処理方法 |
US5860009A (en) * | 1994-04-28 | 1999-01-12 | Kabushiki Kaisha Toshiba | Programming method for concurrent programs and program supporting apparatus thereof |
US5659737A (en) | 1995-08-01 | 1997-08-19 | Oracle Corporation | Methods and apparatus for data compression that preserves order by using failure greater than and failure less than tokens |
US5610603A (en) | 1995-09-28 | 1997-03-11 | International Business Machines Corporation | Sort order preservation method used with a static compression dictionary having consecutively numbered children of a parent |
US5745392A (en) * | 1995-10-05 | 1998-04-28 | Chevron U.S.A. Inc. | Method for reducing data storage and transmission requirements for seismic data |
US6055558A (en) * | 1996-05-28 | 2000-04-25 | International Business Machines Corporation | Pacing of multiple producers when information is required in natural order |
US5999729A (en) * | 1997-03-06 | 1999-12-07 | Continuum Software, Inc. | System and method for developing computer programs for execution on parallel processing systems |
CA2209549C (en) | 1997-07-02 | 2000-05-02 | Ibm Canada Limited-Ibm Canada Limitee | Method and apparatus for loading data into a database in a multiprocessor environment |
US6212617B1 (en) | 1998-05-13 | 2001-04-03 | Microsoft Corporation | Parallel processing method and system using a lazy parallel data type to reduce inter-processor communication |
US6292822B1 (en) | 1998-05-13 | 2001-09-18 | Microsoft Corporation | Dynamic load balancing among processors in a parallel computer |
US6480876B2 (en) | 1998-05-28 | 2002-11-12 | Compaq Information Technologies Group, L.P. | System for integrating task and data parallelism in dynamic applications |
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 |
US6408314B1 (en) * | 1999-07-06 | 2002-06-18 | Synscort Incorporated | Method of performing a high-performance sort which gains efficiency by reading input file blocks sequentially |
US6542921B1 (en) * | 1999-07-08 | 2003-04-01 | Intel Corporation | Method and apparatus for controlling the processing priority between multiple threads in a multithreaded processor |
US6434560B1 (en) * | 1999-07-19 | 2002-08-13 | International Business Machines Corporation | Method for accelerated sorting based on data format |
US6438562B1 (en) * | 1999-08-24 | 2002-08-20 | Oracle Corporation | Parallel index maintenance |
US6717851B2 (en) * | 2000-10-31 | 2004-04-06 | Sandisk Corporation | Method of reducing disturbs in non-volatile memory |
US6691109B2 (en) | 2001-03-22 | 2004-02-10 | Turbo Worx, Inc. | Method and apparatus for high-performance sequence comparison |
US7085769B1 (en) * | 2001-04-26 | 2006-08-01 | Ncr Corporation | Method and apparatus for performing hash join |
US7047395B2 (en) * | 2001-11-13 | 2006-05-16 | Intel Corporation | Reordering serial data in a system with parallel processing flows |
US6864892B2 (en) | 2002-03-08 | 2005-03-08 | Sun Microsystems, Inc. | Graphics data synchronization with multiple data paths in a graphics accelerator |
US7058937B2 (en) | 2002-04-12 | 2006-06-06 | Intel Corporation | Methods and systems for integrated scheduling and resource management for a compiler |
WO2003091872A1 (fr) * | 2002-04-26 | 2003-11-06 | Nihon University School Juridical Person | Dispositif de tri par fusion en parallele, procede et programme y relatifs |
CN101165650B (zh) | 2003-06-25 | 2012-10-10 | 起元科技有限公司 | 计算图的计算机辅助并行化 |
US7251650B2 (en) | 2003-08-25 | 2007-07-31 | International Business Machines Corporation | Method, system, and article of manufacture for processing updates to insert operations |
US20050131893A1 (en) * | 2003-12-15 | 2005-06-16 | Sap Aktiengesellschaft | Database early parallelism method and system |
US7426752B2 (en) | 2004-01-05 | 2008-09-16 | International Business Machines Corporation | System and method for order-preserving encryption for numeric data |
US20060155394A1 (en) | 2004-12-16 | 2006-07-13 | International Business Machines Corporation | Method and apparatus for order-preserving clustering of multi-dimensional data |
US7779008B2 (en) * | 2005-02-16 | 2010-08-17 | Oracle International Corporation | Parallel partition-wise aggregation |
US8126870B2 (en) | 2005-03-28 | 2012-02-28 | Sybase, Inc. | System and methodology for parallel query optimization using semantic-based partitioning |
US7302510B2 (en) * | 2005-09-29 | 2007-11-27 | International Business Machines Corporation | Fair hierarchical arbiter |
US20070250470A1 (en) * | 2006-04-24 | 2007-10-25 | Microsoft Corporation | Parallelization of language-integrated collection operations |
US8316360B2 (en) * | 2006-09-29 | 2012-11-20 | Intel Corporation | Methods and apparatus to optimize the parallel execution of software processes |
-
2007
- 2007-06-27 US US11/823,167 patent/US8074219B2/en not_active Expired - Fee Related
-
2008
- 2008-06-02 TW TW097120485A patent/TWI444894B/zh not_active IP Right Cessation
- 2008-06-16 EP EP08771207A patent/EP2176752A4/en not_active Withdrawn
- 2008-06-16 WO PCT/US2008/067138 patent/WO2009002750A2/en active Application Filing
- 2008-06-16 JP JP2010514964A patent/JP2010532528A/ja active Pending
- 2008-06-16 CN CN200880022282.8A patent/CN101689125B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0231232A (ja) * | 1988-07-21 | 1990-02-01 | Matsushita Electric Ind Co Ltd | データ処理装置 |
JPH09511347A (ja) * | 1994-01-31 | 1997-11-11 | サン マイクロシステムズ インコーポレイテッド | マルチプロセッサディジタルデータプロセッシングシステムにおけるデータアクセス方法および装置 |
JP2004302741A (ja) * | 2003-03-31 | 2004-10-28 | Fujitsu Ltd | グリッドコンピューティングを用いたシステムにおけるリソース提供方法,そのシステムにおける監視装置,その監視装置用プログラムおよびそのシステムにおけるリソース提供端末用プログラム |
Non-Patent Citations (4)
Title |
---|
CSND199801002001; 正井一夫、根岸和義、土田正士、松澤 茂: '更新処理を並列実行するUNIX向けDBMSを開発' 日経エレクトロニクス 第630号, 19950227, 第107〜111頁, 日経BP社 * |
CSND199801515003; 佐藤紅志: '徹底検証!SQL Server7.0 vs Oracle8:SQL Serverはどこまで進化したか?' LAN TIMES 第8巻,第12号, 19981201, 第89〜92頁, ソフトバンク株式会社 * |
JPN6012067766; 正井一夫、根岸和義、土田正士、松澤 茂: '更新処理を並列実行するUNIX向けDBMSを開発' 日経エレクトロニクス 第630号, 19950227, 第107〜111頁, 日経BP社 * |
JPN6012067767; 佐藤紅志: '徹底検証!SQL Server7.0 vs Oracle8:SQL Serverはどこまで進化したか?' LAN TIMES 第8巻,第12号, 19981201, 第89〜92頁, ソフトバンク株式会社 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011141587A (ja) * | 2010-01-05 | 2011-07-21 | Nippon Telegr & Teleph Corp <Ntt> | 分散処理システム、分散処理方法、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP2176752A2 (en) | 2010-04-21 |
CN101689125B (zh) | 2013-12-25 |
US8074219B2 (en) | 2011-12-06 |
EP2176752A4 (en) | 2011-05-04 |
WO2009002750A2 (en) | 2008-12-31 |
CN101689125A (zh) | 2010-03-31 |
TWI444894B (zh) | 2014-07-11 |
WO2009002750A3 (en) | 2009-02-26 |
US20090007137A1 (en) | 2009-01-01 |
TW200907800A (en) | 2009-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010532528A (ja) | データ並列演算における順番保存 | |
JP6454706B2 (ja) | ソースコード変換 | |
US8201171B2 (en) | Adjacent data parallel and streaming operator fusion | |
EP4250135A2 (en) | Systems and methods for dataflow graph optimization | |
JP5950285B2 (ja) | 予め決められた複数のビット幅のデータに対して操作を行う命令を使用してツリーの検索を行うための方法、並びに、当該命令を使用してツリーの検索を行うためのコンピュータ及びそのコンピュータ・プログラム | |
US9575639B2 (en) | Compound controls | |
KR102549994B1 (ko) | 가변 레벨 병렬화를 사용하여 데이터 처리 동작을 수행하기 위한 시스템 및 방법 | |
JP6598996B2 (ja) | データ準備のためのシグニチャベースのキャッシュ最適化 | |
JP6387399B2 (ja) | データ操作のための、メモリ及びストレージ空間の管理 | |
TW200910093A (en) | Memory transaction grouping | |
Qiao et al. | Hyper dimension shuffle: Efficient data repartition at petabyte scale in scope | |
Jayalath et al. | Efficient Geo-distributed data processing with rout | |
JP6523823B2 (ja) | 仮想データベースシステム管理装置、管理方法及び管理プログラム | |
US10642876B1 (en) | Query processing pipeline for semi-structured and unstructured data | |
Ponce et al. | Extension of a Task-based model to Functional programming | |
Gurumurthy et al. | ADAMANT: A Query Executor with Plug-In Interfaces for Easy Co-processor Integration | |
US11288447B2 (en) | Step editor for data preparation | |
Marszałek | Modification of parallelization for fast sort algorithm | |
US20230359668A1 (en) | Dataflow graph datasets | |
Schram | Software architectures and patterns for persistence in heterogeneous data-intensive systems | |
Browning et al. | Common Protocols | |
Skifjeld | Retrieval of Genomic Data using PyTables | |
Wadkar et al. | Basics of MapReduce Development | |
Guller et al. | Spark Core |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110317 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121211 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121228 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130328 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130404 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130430 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130509 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130528 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20130701 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20130717 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20131126 |