JP2014146355A - トランザクションを用いるシーケンシャルフレームワークの並行化 - Google Patents
トランザクションを用いるシーケンシャルフレームワークの並行化 Download PDFInfo
- Publication number
- JP2014146355A JP2014146355A JP2014061450A JP2014061450A JP2014146355A JP 2014146355 A JP2014146355 A JP 2014146355A JP 2014061450 A JP2014061450 A JP 2014061450A JP 2014061450 A JP2014061450 A JP 2014061450A JP 2014146355 A JP2014146355 A JP 2014146355A
- Authority
- JP
- Japan
- Prior art keywords
- loop
- transaction
- commit
- transactions
- parallel
- 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
Images
Classifications
-
- 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/466—Transaction processing
-
- 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
-
- 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/466—Transaction processing
- G06F9/467—Transactional memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Advance Control (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
【解決手段】オープンエンドおよび/またはクローズドエンドのシーケンシャルループを、並列ループに変換することができる。当初のシーケンシャルループを含むコードのセクションを解析して、当初のシーケンシャルループについての繰り返し定数を決定する。当初のシーケンシャルループを、繰り返し定数までの数だけトランザクションを発生することのできる並列ループに変換する。オープンエンドシーケンシャルループは、それぞれの作業項目を含む個々のトランザクションを、各スペキュレーションパイプラインの繰り返し毎に発生する並列ループに変換することができる。その並列ループは次いで、異なるスレッド上で実行される個々のトランザクションのうち少なくともいくつかと共に、前記トランザクショナルメモリシステムを用いて実行される。
【選択図】図1
Description
{
S;
}
Claims (20)
- クローズドエンドのシーケンシャルループを並列ループに変換する方法であって、
トランザクショナルメモリシステムを提供するステップと、
当初のシーケンシャルループを含むコードの第1セクションを解析して、前記当初のシーケンシャルループが実行する繰り返し定数を決定するステップと、
前記当初のシーケンシャルループを含むコードの前記第1セクションを、並列ループを含むコードの第2セクションに変換するステップであって、前記並列ループは前記繰り返し定数までの数の複数のトランザクションを生成するよう作動可能であり、前記トランザクションは前記並列ループの少なくとも一部を並列に実行可能にする、ステップと、
異なるスレッド上で実行する複数のトランザクションのうちの少なくともいくつかと共に、前記トランザクショナルメモリシステムを使用してコードの第2セクションを実行するステップと
を備えたことを特徴とする方法。 - 前記繰り返し定数は、前記当初のシーケンシャルループと比較してループ終了を判定するための一定値を検索することにより決定されることを特徴とする請求項1に記載の方法。
- 前記トランザクションの各々がそれぞれの誘導変数カウンタをコミット連続番号として使用し、該コミット連続番号は所定のコミット順処理を使用してトランザクション各々を正しい順序でコミットするのを保証することを特徴とする請求項1に記載の方法。
- 請求項1に記載の各ステップをコンピュータに実行させるためのコンピュータ実行可能命令を有することを特徴とするコンピュータ読取可能記憶媒体。
- コンピュータに実行させるためのコンピュータ実行可能命令を有するコンピュータ読取可能記憶媒体であって、該コンピュータ実行可能命令は、
トランザクショナルメモリシステムを提供するステップと、
オープンエンドシーケンシャルループを含むコードの前記第1セクションを、並列ループを含むコードの第2セクションに変換するステップであって、前記並列ループはスペキュレーションパイプラインの繰り返し毎にそれぞれの作業項目を含む個々のトランザクションを生成するように作動可能であるステップと、
異なるスレッド上で実行する前記個々のトランザクションのうち少なくともいくつかと共に、前記トランザクショナルメモリシステムを使用してコードの前記第2セクションを実行するステップと、
を含み、各ステップをコンピュータに実行させることを特徴とするコンピュータ読取可能記憶媒体。 - コードの前記第2セクションは、前記トランザクションのうち少なくともいくつかを並行して実行するように生成されることを特徴とする請求項5に記載のコンピュータ読取可能記憶媒体。
- コードの前記前記第2セクションは、前記オープンエンドシーケンシャルループのコンパイラ分析を実行することなく生成されることを特徴とする請求項5に記載のコンピュータ読取可能記憶媒体。
- 当初の入力対出力のマッピングが、前記トランザクションを所定のコミット順でコミットすることにより維持されることを特徴とする請求項5に記載のコンピュータ読取可能記憶媒体。
- 前記所定のコミット順が、前記オープンエンドシーケンシャルループの実行順と整合性が取れていることを特徴とする請求項8に記載のコンピュータ読取可能記憶媒体。
- オープンエンドシーケンシャルループから生成される並列ループを実行する方法であって、
オープンエンドシーケンシャルループから生成される並列ループで実行する繰り返しの回数を見積もるスペキュレーションパイプラインを生成するステップと、
前記スペキュレーションパイプラインの各繰り返しをもとに、それぞれの作業項目を含む個々のトランザクションを生成するステップと、
異なるスレッドの上で個々のトランザクションのうち少なくともいくつかを実行するステップと、
それぞれの作業項目毎に終了条件を評価するステップと、
前記それぞれの作業項目のうちの特定の1つが、前記並列ループを終了する時期に到達したと判定するときに、前記それぞれの作業項目のうちの前記特定の1つの先行者をコミットし、後継者を廃棄するステップと、
を含むことを特徴とする方法。 - それぞれの作業項目を実行しながら、現在の繰り返し値を読み出すことを特徴とする請求項10に記載の方法。
- それぞれの作業項目毎の前記現在の繰り返し値は、所定のコミット順処理において、コミット連続番号として使用されること、を特徴とする請求項11に記載の方法。
- 前記現在の繰り返し値は、それぞれの作業項目毎にアクセス可能な値の極小の増分を実行することにより読み出されることを特徴とする請求項11に記載の方法。
- 前記オープンエンドシーケンシャルループの当初の実行と整合性が取れているコミット順が達成されることを特徴とする請求項10に記載の方法。
- 前記オープンエンドシーケンシャルループが、whileループであることを特徴とする請求項10に記載の方法。
- 前記オープンエンドシーケンシャルループが、do whileループであることを特徴とする請求項10に記載の方法。
- 前記オープンエンドシーケンシャルループが、forループであることを特徴とする請求項10に記載の方法。
- 前記スペキュレーションパイプラインの初期値が、並列ループを実行するコンピュータ上で利用可能な処理装置の数に少なくとも部分的に基づいて計算されることを特徴とする請求項10に記載の方法。
- 適応的統計データを用いて、前記並列ループの後の実行のために前記スペキュレーションパイプラインを調整することを特徴とする請求項10に記載の方法。
- 請求項10に記載の各ステップをコンピュータに実行させるためのコンピュータ実行可能命令を有することを特徴とするコンピュータ読取可能記憶媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/810,111 | 2007-06-04 | ||
US11/810,111 US8024714B2 (en) | 2006-11-17 | 2007-06-04 | Parallelizing sequential frameworks using transactions |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010511260A Division JP2010529559A (ja) | 2007-06-04 | 2008-05-30 | トランザクションを用いるシーケンシャルフレームワークの並行化 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014146355A true JP2014146355A (ja) | 2014-08-14 |
JP5813165B2 JP5813165B2 (ja) | 2015-11-17 |
Family
ID=40107429
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010511260A Pending JP2010529559A (ja) | 2007-06-04 | 2008-05-30 | トランザクションを用いるシーケンシャルフレームワークの並行化 |
JP2014061450A Active JP5813165B2 (ja) | 2007-06-04 | 2014-03-25 | トランザクションを用いるシーケンシャルフレームワークの並行化 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010511260A Pending JP2010529559A (ja) | 2007-06-04 | 2008-05-30 | トランザクションを用いるシーケンシャルフレームワークの並行化 |
Country Status (7)
Country | Link |
---|---|
US (2) | US8024714B2 (ja) |
EP (1) | EP2171592B1 (ja) |
JP (2) | JP2010529559A (ja) |
CN (1) | CN101681292B (ja) |
BR (1) | BRPI0811470A2 (ja) |
TW (1) | TWI451340B (ja) |
WO (1) | WO2008151046A1 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8010550B2 (en) * | 2006-11-17 | 2011-08-30 | Microsoft Corporation | Parallelizing sequential frameworks using transactions |
US8621468B2 (en) * | 2007-04-26 | 2013-12-31 | Microsoft Corporation | Multi core optimizations on a binary using static and run time analysis |
JP5067425B2 (ja) * | 2007-09-21 | 2012-11-07 | 富士通株式会社 | 翻訳装置と翻訳方法および翻訳プログラムとプロセッサコアの制御方法およびプロセッサ |
US8739141B2 (en) * | 2008-05-19 | 2014-05-27 | Oracle America, Inc. | Parallelizing non-countable loops with hardware transactional memory |
JP4612710B2 (ja) * | 2008-06-02 | 2011-01-12 | 株式会社日立製作所 | トランザクション並行制御方法、データベース管理システム、およびプログラム |
US8667476B1 (en) * | 2009-01-20 | 2014-03-04 | Adaptmicrosys LLC | Instruction grouping and ungrouping apparatus and method for an adaptive microprocessor system |
US8266604B2 (en) * | 2009-01-26 | 2012-09-11 | Microsoft Corporation | Transactional memory compatibility management |
US20110178984A1 (en) * | 2010-01-18 | 2011-07-21 | Microsoft Corporation | Replication protocol for database systems |
US8825601B2 (en) | 2010-02-01 | 2014-09-02 | Microsoft Corporation | Logical data backup and rollback using incremental capture in a distributed database |
CN104572506B (zh) * | 2013-10-18 | 2019-03-26 | 阿里巴巴集团控股有限公司 | 一种并发访问内存的方法及装置 |
US9454313B2 (en) | 2014-06-10 | 2016-09-27 | Arm Limited | Dynamic selection of memory management algorithm |
CN104317850B (zh) * | 2014-10-14 | 2017-11-14 | 北京国双科技有限公司 | 数据处理方法和装置 |
JP6645348B2 (ja) | 2016-05-06 | 2020-02-14 | 富士通株式会社 | 情報処理装置、情報処理プログラム、及び情報処理方法 |
US11521242B2 (en) * | 2016-08-31 | 2022-12-06 | Meta Platforms, Inc. | Asynchronous execution of tasks and ordering of task execution |
EP3594804B1 (en) * | 2018-07-09 | 2021-11-03 | ARM Limited | Transactional compare-and-discard instruction |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05127904A (ja) * | 1991-11-05 | 1993-05-25 | Matsushita Electric Ind Co Ltd | 情報処理装置及びコード生成装置 |
JPH05173988A (ja) * | 1991-12-26 | 1993-07-13 | Toshiba Corp | 分散処理方式および該分散処理に適用されるトランザクション処理方式 |
JPH0784851A (ja) * | 1993-09-13 | 1995-03-31 | Toshiba Corp | 共有データ管理方法 |
JPH1185544A (ja) * | 1997-09-04 | 1999-03-30 | Nec Corp | トランザクションプログラム並列実行方法およびトラン ザクションプログラム並列実行方式 |
US20070055960A1 (en) * | 2004-08-10 | 2007-03-08 | Sun Microsystems, Inc. | System and method for supporting multiple alternative methods for executing transactions |
Family Cites Families (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8306813D0 (en) | 1983-03-11 | 1983-04-20 | Bonas Machine Co | Heald control apparatus |
US4884228A (en) | 1986-10-14 | 1989-11-28 | Tektronix, Inc. | Flexible instrument control system |
JPH01108638A (ja) * | 1987-10-21 | 1989-04-25 | Hitachi Ltd | 並列化コンパイル方式 |
JPH0475139A (ja) * | 1990-07-18 | 1992-03-10 | Toshiba Corp | ループ並列化装置 |
DE4216871C2 (de) | 1991-05-21 | 2001-09-06 | Digital Equipment Corp | Ausführungsordnen zum Sicherstellen der Serialisierbarkeit verteilter Transaktionen |
US5701480A (en) | 1991-10-17 | 1997-12-23 | Digital Equipment Corporation | Distributed multi-version commitment ordering protocols for guaranteeing serializability during transaction processing |
US5241675A (en) | 1992-04-09 | 1993-08-31 | Bell Communications Research, Inc. | Method for enforcing the serialization of global multidatabase transactions through committing only on consistent subtransaction serialization by the local database managers |
US5335343A (en) | 1992-07-06 | 1994-08-02 | Digital Equipment Corporation | Distributed transaction processing using two-phase commit protocol with presumed-commit without log force |
US6704861B1 (en) | 1993-06-17 | 2004-03-09 | Hewlett-Packard Development Company, L.P. | Mechanism for executing computer instructions in parallel |
US5799179A (en) | 1995-01-24 | 1998-08-25 | International Business Machines Corporation | Handling of exceptions in speculative instructions |
JP3434405B2 (ja) | 1996-03-19 | 2003-08-11 | 富士通株式会社 | 通信制御装置及び通信制御方法並びに中間通信制御ユニット |
US5920724A (en) | 1996-03-28 | 1999-07-06 | Intel Corporation | Software pipelining a hyperblock loop |
JPH1049420A (ja) | 1996-08-02 | 1998-02-20 | Fuji Xerox Co Ltd | データベース管理方法 |
US5898865A (en) | 1997-06-12 | 1999-04-27 | Advanced Micro Devices, Inc. | Apparatus and method for predicting an end of loop for string instructions |
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 |
US7065750B2 (en) | 1999-02-17 | 2006-06-20 | Elbrus International | Method and apparatus for preserving precise exceptions in binary translated code |
WO2001013202A2 (en) | 1999-08-17 | 2001-02-22 | Progress Software, Inc. | Concurrent commit lock |
US6374403B1 (en) * | 1999-08-20 | 2002-04-16 | Hewlett-Packard Company | Programmatic method for reducing cost of control in parallel processes |
US6507947B1 (en) * | 1999-08-20 | 2003-01-14 | Hewlett-Packard Company | Programmatic synthesis of processor element arrays |
US6438747B1 (en) * | 1999-08-20 | 2002-08-20 | Hewlett-Packard Company | Programmatic iteration scheduling for parallel processors |
JP4237354B2 (ja) | 1999-09-29 | 2009-03-11 | 株式会社東芝 | トランザクション処理方法及びトランザクション処理システム |
US6745160B1 (en) | 1999-10-08 | 2004-06-01 | Nec Corporation | Verification of scheduling in the presence of loops using uninterpreted symbolic simulation |
US6574725B1 (en) * | 1999-11-01 | 2003-06-03 | Advanced Micro Devices, Inc. | Method and mechanism for speculatively executing threads of instructions |
US6557048B1 (en) | 1999-11-01 | 2003-04-29 | Advanced Micro Devices, Inc. | Computer system implementing a system and method for ordering input/output (IO) memory operations within a coherent portion thereof |
US20040236659A1 (en) | 1999-12-01 | 2004-11-25 | Cazalet Edward G. | Method and apparatus for an engine system supporting transactions, schedules and settlements involving fungible, ephemeral commodities including electrical power |
US6918053B1 (en) | 2000-04-28 | 2005-07-12 | Microsoft Corporation | Compensation framework for long running transactions |
US6708331B1 (en) * | 2000-05-03 | 2004-03-16 | Leon Schwartz | Method for automatic parallelization of software |
US6615403B1 (en) * | 2000-06-30 | 2003-09-02 | Intel Corporation | Compare speculation in software-pipelined loops |
EP1197876A3 (en) | 2000-10-13 | 2003-04-16 | Miosoft Corporation | Persistent data storage techniques |
US7111023B2 (en) | 2001-05-24 | 2006-09-19 | Oracle International Corporation | Synchronous change data capture in a relational database |
US7069556B2 (en) | 2001-09-27 | 2006-06-27 | Intel Corporation | Method and apparatus for implementing a parallel construct comprised of a single task |
GB0130399D0 (en) | 2001-12-19 | 2002-02-06 | Ibm | Message ordering in a messaging system |
US6754737B2 (en) | 2001-12-24 | 2004-06-22 | Hewlett-Packard Development Company, L.P. | Method and apparatus to allow dynamic variation of ordering enforcement between transactions in a strongly ordered computer interconnect |
KR100450400B1 (ko) | 2001-12-26 | 2004-09-30 | 한국전자통신연구원 | 안전 기억 장치가 없는 환경을 위한 이중화 구조의 주 메모리 상주 데이터베이스 관리시스템 및 그 데이터 일치성 제어방법 |
US6785779B2 (en) | 2002-01-09 | 2004-08-31 | International Business Machines Company | Multi-level classification method for transaction address conflicts for ensuring efficient ordering in a two-level snoopy cache architecture |
US7328316B2 (en) | 2002-07-16 | 2008-02-05 | Sun Microsystems, Inc. | Software transactional memory for dynamically sizable shared data structures |
US7103612B2 (en) | 2002-08-01 | 2006-09-05 | Oracle International Corporation | Instantiation of objects for information-sharing relationships |
US7076508B2 (en) | 2002-08-12 | 2006-07-11 | International Business Machines Corporation | Method, system, and program for merging log entries from multiple recovery log files |
US7089253B2 (en) | 2002-09-13 | 2006-08-08 | Netezza Corporation | Computer method and system for concurrency control using dynamic serialization ordering |
US6898685B2 (en) | 2003-03-25 | 2005-05-24 | Emc Corporation | Ordering data writes from a local storage device to a remote storage device |
US7185323B2 (en) * | 2003-05-16 | 2007-02-27 | Sun Microsystems, Inc. | Using value speculation to break constraining dependencies in iterative control flow structures |
KR100507782B1 (ko) | 2003-12-04 | 2005-08-17 | 한국전자통신연구원 | 데이터베이스 관리시스템 및 그 시스템에서 시스템테이블에 대한 동시성 제어 방법 |
US20050210185A1 (en) | 2004-03-18 | 2005-09-22 | Kirsten Renick | System and method for organizing data transfers with memory hub memory modules |
US7386842B2 (en) | 2004-06-07 | 2008-06-10 | International Business Machines Corporation | Efficient data reorganization to satisfy data alignment constraints |
US7266571B2 (en) | 2004-07-27 | 2007-09-04 | International Business Machines Corporation | Method and system for scheduling a partial ordered transactions for event correlation |
US7376675B2 (en) | 2005-02-18 | 2008-05-20 | International Business Machines Corporation | Simulating multi-user activity while maintaining original linear request order for asynchronous transactional events |
US7627864B2 (en) * | 2005-06-27 | 2009-12-01 | Intel Corporation | Mechanism to optimize speculative parallel threading |
US7536517B2 (en) | 2005-07-29 | 2009-05-19 | Microsoft Corporation | Direct-update software transactional memory |
US20070113056A1 (en) * | 2005-11-15 | 2007-05-17 | Dale Jason N | Apparatus and method for using multiple thread contexts to improve single thread performance |
KR100806274B1 (ko) * | 2005-12-06 | 2008-02-22 | 한국전자통신연구원 | 멀티 쓰레디드 프로세서 기반의 병렬 시스템을 위한 적응형실행 방법 |
US7926046B2 (en) * | 2005-12-13 | 2011-04-12 | Soorgoli Ashok Halambi | Compiler method for extracting and accelerator template program |
US7720891B2 (en) | 2006-02-14 | 2010-05-18 | Oracle America, Inc. | Synchronized objects for software transactional memory |
US8010550B2 (en) | 2006-11-17 | 2011-08-30 | Microsoft Corporation | Parallelizing sequential frameworks using transactions |
US7937695B2 (en) * | 2007-04-27 | 2011-05-03 | International Business Machines Corporation | Reducing number of exception checks |
-
2007
- 2007-06-04 US US11/810,111 patent/US8024714B2/en active Active
-
2008
- 2008-05-19 TW TW097118420A patent/TWI451340B/zh active
- 2008-05-20 BR BRPI0811470-6A2A patent/BRPI0811470A2/pt not_active IP Right Cessation
- 2008-05-30 WO PCT/US2008/065363 patent/WO2008151046A1/en active Application Filing
- 2008-05-30 JP JP2010511260A patent/JP2010529559A/ja active Pending
- 2008-05-30 EP EP08769907.0A patent/EP2171592B1/en active Active
- 2008-05-30 CN CN2008800183912A patent/CN101681292B/zh active Active
-
2011
- 2011-07-25 US US13/189,639 patent/US8402447B2/en active Active
-
2014
- 2014-03-25 JP JP2014061450A patent/JP5813165B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05127904A (ja) * | 1991-11-05 | 1993-05-25 | Matsushita Electric Ind Co Ltd | 情報処理装置及びコード生成装置 |
JPH05173988A (ja) * | 1991-12-26 | 1993-07-13 | Toshiba Corp | 分散処理方式および該分散処理に適用されるトランザクション処理方式 |
JPH0784851A (ja) * | 1993-09-13 | 1995-03-31 | Toshiba Corp | 共有データ管理方法 |
JPH1185544A (ja) * | 1997-09-04 | 1999-03-30 | Nec Corp | トランザクションプログラム並列実行方法およびトラン ザクションプログラム並列実行方式 |
US20070055960A1 (en) * | 2004-08-10 | 2007-03-08 | Sun Microsystems, Inc. | System and method for supporting multiple alternative methods for executing transactions |
Non-Patent Citations (3)
Title |
---|
JPN6013004284; 木村啓二、笠原博徳: '"特集 マルチコアにおけるソフトウェア:マルチコアにおけるプログラミング"' 情報処理 第47巻,第1号(通巻491号), 20060115, p.22, 社団法人情報処理学会 * |
JPN7013000342; Lance Hammond, Brian D. Carlstrom, Vicky Wong, Ben Hertzberg, Mike Chen, Christos Kozyrakis, and Kun: '"Programming with Transactional Coherence and Consistency(TCC)"' ASPLOS XI Proceedings of the 11th international conference on Architectual support for &# * |
JPN7015001139; Brian D.Carlstrom, Austen McDonald, Hassan Chafi, JaeWoong Chung, Chi Cao Minh, Christos Kozyrakis,: '"The Atomos Transactional Programming Language"' PLDI'06 Proceedings of the 2006 ACM SIGPLAN Conference on Programming Language Design and Implementa , 20060611, p.࿱ * |
Also Published As
Publication number | Publication date |
---|---|
CN101681292B (zh) | 2012-10-10 |
BRPI0811470A2 (pt) | 2014-11-04 |
EP2171592B1 (en) | 2019-04-10 |
JP5813165B2 (ja) | 2015-11-17 |
CN101681292A (zh) | 2010-03-24 |
US20110283091A1 (en) | 2011-11-17 |
US8402447B2 (en) | 2013-03-19 |
TWI451340B (zh) | 2014-09-01 |
US8024714B2 (en) | 2011-09-20 |
US20080120298A1 (en) | 2008-05-22 |
WO2008151046A1 (en) | 2008-12-11 |
TW200903339A (en) | 2009-01-16 |
EP2171592A1 (en) | 2010-04-07 |
JP2010529559A (ja) | 2010-08-26 |
EP2171592A4 (en) | 2012-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5813165B2 (ja) | トランザクションを用いるシーケンシャルフレームワークの並行化 | |
US8010550B2 (en) | Parallelizing sequential frameworks using transactions | |
JP4698757B2 (ja) | ソフトウェアトランザクションのコミット順序および競合の管理 | |
US7860847B2 (en) | Exception ordering in contention management to support speculative sequential semantics | |
EP2176763B1 (en) | Memory transaction grouping | |
JP2010524133A (ja) | バッファリングされた書込みおよび強制的直列化順序を使用するトランザクショナルメモリ | |
US10372509B2 (en) | Composable and cancelable dataflow continuation passing | |
Kitano et al. | Performance evaluation of parallel heapsort programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150501 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20150522 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150731 |
|
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: 20150817 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150915 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5813165 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |