JP5576798B2 - 決定論的マルチプロセッシング(deterministicmultiprocessing) - Google Patents
決定論的マルチプロセッシング(deterministicmultiprocessing) Download PDFInfo
- Publication number
- JP5576798B2 JP5576798B2 JP2010538213A JP2010538213A JP5576798B2 JP 5576798 B2 JP5576798 B2 JP 5576798B2 JP 2010538213 A JP2010538213 A JP 2010538213A JP 2010538213 A JP2010538213 A JP 2010538213A JP 5576798 B2 JP5576798 B2 JP 5576798B2
- Authority
- JP
- Japan
- Prior art keywords
- thread
- deterministic
- threads
- code
- execution
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/461—Saving or restoring of program or task context
- G06F9/463—Program control block organisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/522—Barrier synchronisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Devices For Executing Special Programs (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US1301907P | 2007-12-12 | 2007-12-12 | |
| US61/013,019 | 2007-12-12 | ||
| PCT/US2008/086711 WO2009076654A1 (en) | 2007-12-12 | 2008-12-12 | Deterministic multiprocessing |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2011507112A JP2011507112A (ja) | 2011-03-03 |
| JP2011507112A5 JP2011507112A5 (enExample) | 2013-02-21 |
| JP5576798B2 true JP5576798B2 (ja) | 2014-08-20 |
Family
ID=40755909
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010538213A Expired - Fee Related JP5576798B2 (ja) | 2007-12-12 | 2008-12-12 | 決定論的マルチプロセッシング(deterministicmultiprocessing) |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US8694997B2 (enExample) |
| EP (1) | EP2232367A4 (enExample) |
| JP (1) | JP5576798B2 (enExample) |
| WO (1) | WO2009076654A1 (enExample) |
Families Citing this family (41)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9009020B1 (en) * | 2007-12-12 | 2015-04-14 | F5 Networks, Inc. | Automatic identification of interesting interleavings in a multithreaded program |
| US8972794B2 (en) * | 2008-02-26 | 2015-03-03 | International Business Machines Corporation | Method and apparatus for diagnostic recording using transactional memory |
| WO2009114645A1 (en) * | 2008-03-11 | 2009-09-17 | University Of Washington | Efficient deterministic multiprocessing |
| US8490181B2 (en) * | 2009-04-22 | 2013-07-16 | International Business Machines Corporation | Deterministic serialization of access to shared resource in a multi-processor system for code instructions accessing resources in a non-deterministic order |
| KR101572879B1 (ko) | 2009-04-29 | 2015-12-01 | 삼성전자주식회사 | 병렬 응용 프로그램을 동적으로 병렬처리 하는 시스템 및 방법 |
| US8812796B2 (en) * | 2009-06-26 | 2014-08-19 | Microsoft Corporation | Private memory regions and coherence optimizations |
| US8489864B2 (en) * | 2009-06-26 | 2013-07-16 | Microsoft Corporation | Performing escape actions in transactions |
| US8356166B2 (en) * | 2009-06-26 | 2013-01-15 | Microsoft Corporation | Minimizing code duplication in an unbounded transactional memory system by using mode agnostic transactional read and write barriers |
| US8370577B2 (en) * | 2009-06-26 | 2013-02-05 | Microsoft Corporation | Metaphysically addressed cache metadata |
| US8250331B2 (en) | 2009-06-26 | 2012-08-21 | Microsoft Corporation | Operating system virtual memory management for hardware transactional memory |
| JP5452125B2 (ja) | 2009-08-11 | 2014-03-26 | クラリオン株式会社 | データ処理装置及びデータ処理方法 |
| WO2011022114A1 (en) | 2009-08-20 | 2011-02-24 | Rambus Inc. | Atomic memory device |
| US8402218B2 (en) | 2009-12-15 | 2013-03-19 | Microsoft Corporation | Efficient garbage collection and exception handling in a hardware accelerated transactional memory system |
| US8539465B2 (en) * | 2009-12-15 | 2013-09-17 | Microsoft Corporation | Accelerating unbounded memory transactions using nested cache resident transactions |
| US9092253B2 (en) * | 2009-12-15 | 2015-07-28 | Microsoft Technology Licensing, Llc | Instrumentation of hardware assisted transactional memory system |
| US8533440B2 (en) * | 2009-12-15 | 2013-09-10 | Microsoft Corporation | Accelerating parallel transactions using cache resident transactions |
| KR20110080073A (ko) * | 2010-01-04 | 2011-07-12 | 삼성전자주식회사 | 멀티쓰레드 환경을 테스트하는 커버리지 장치 및 방법 |
| US20110173595A1 (en) * | 2010-01-08 | 2011-07-14 | Microsoft Corporation | Language-based model for asynchronous operations |
| US8453120B2 (en) | 2010-05-11 | 2013-05-28 | F5 Networks, Inc. | Enhanced reliability using deterministic multiprocessing-based synchronized replication |
| US9411634B2 (en) * | 2010-06-21 | 2016-08-09 | Microsoft Technology Licensing, Llc | Action framework in software transactional memory |
| US8719515B2 (en) | 2010-06-21 | 2014-05-06 | Microsoft Corporation | Composition of locks in software transactional memory |
| US9038048B2 (en) | 2010-07-22 | 2015-05-19 | The Trustees Of Columbia University In The City Of New York | Methods, systems, and media for protecting applications from races |
| US9454460B2 (en) * | 2010-07-23 | 2016-09-27 | The Trustees Of Columbia University In The City Of New York | Methods, systems, and media for providing determinism in multithreaded programs |
| US8910188B1 (en) | 2011-07-14 | 2014-12-09 | Google Inc. | Deterministic data processing |
| US8990830B2 (en) * | 2011-07-19 | 2015-03-24 | International Business Machines Corporation | Thread management in parallel processes |
| US20130205284A1 (en) * | 2012-02-02 | 2013-08-08 | Dhruva Chakrabarti | Ownership acquire policy selection |
| US9606924B2 (en) * | 2012-06-22 | 2017-03-28 | Wind River Systems, Inc. | System and method for supporting fast and deterministic execution and simulation in multi-core environments |
| US9558000B2 (en) * | 2014-02-06 | 2017-01-31 | Optimum Semiconductor Technologies, Inc. | Multithreading using an ordered list of hardware contexts |
| US9417876B2 (en) | 2014-03-27 | 2016-08-16 | International Business Machines Corporation | Thread context restoration in a multithreading computer system |
| US9354883B2 (en) | 2014-03-27 | 2016-05-31 | International Business Machines Corporation | Dynamic enablement of multithreading |
| US9921848B2 (en) | 2014-03-27 | 2018-03-20 | International Business Machines Corporation | Address expansion and contraction in a multithreading computer system |
| US9804846B2 (en) | 2014-03-27 | 2017-10-31 | International Business Machines Corporation | Thread context preservation in a multithreading computer system |
| US10102004B2 (en) | 2014-03-27 | 2018-10-16 | International Business Machines Corporation | Hardware counters to track utilization in a multithreading computer system |
| US9594660B2 (en) | 2014-03-27 | 2017-03-14 | International Business Machines Corporation | Multithreading computer system and program product for executing a query instruction for idle time accumulation among cores |
| US9715416B2 (en) * | 2015-06-03 | 2017-07-25 | Intel Corporation | Adaptive queued locking for control of speculative execution |
| US9513960B1 (en) | 2015-09-22 | 2016-12-06 | International Business Machines Corporation | Inducing transactional aborts in other processing threads |
| US9851957B2 (en) * | 2015-12-03 | 2017-12-26 | International Business Machines Corporation | Improving application code execution performance by consolidating accesses to shared resources |
| US10536441B2 (en) * | 2016-08-23 | 2020-01-14 | Texas Instruments Incorporated | Thread ownership of keys for hardware-accelerated cryptography |
| CN109284193B (zh) * | 2018-09-06 | 2022-12-09 | 平安科技(深圳)有限公司 | 一种基于多线程的分布式数据处理方法及服务器 |
| US11900156B2 (en) * | 2019-09-24 | 2024-02-13 | Speedata Ltd. | Inter-thread communication in multi-threaded reconfigurable coarse-grain arrays |
| CN113919877B (zh) * | 2021-10-15 | 2024-06-28 | 深圳市酷开网络科技股份有限公司 | 基于dmp平台圈人任务进度处理方法、装置及可读存储介质 |
Family Cites Families (34)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6298370B1 (en) * | 1997-04-04 | 2001-10-02 | Texas Instruments Incorporated | Computer operating process allocating tasks between first and second processors at run time based upon current processor load |
| US5909559A (en) * | 1997-04-04 | 1999-06-01 | Texas Instruments Incorporated | Bus bridge device including data bus of first width for a first processor, memory controller, arbiter circuit and second processor having a different second data width |
| US6101524A (en) | 1997-10-23 | 2000-08-08 | International Business Machines Corporation | Deterministic replay of multithreaded applications |
| US6625635B1 (en) | 1998-11-02 | 2003-09-23 | International Business Machines Corporation | Deterministic and preemptive thread scheduling and its use in debugging multithreaded applications |
| AU8025100A (en) | 1999-10-13 | 2001-04-23 | Board Of Regents, The University Of Texas System | Software fault tolerance of concurrent programs using controlled re-execution |
| US6832367B1 (en) * | 2000-03-06 | 2004-12-14 | International Business Machines Corporation | Method and system for recording and replaying the execution of distributed java programs |
| WO2002021281A2 (en) | 2000-09-08 | 2002-03-14 | Network Appliance, Inc. | Panic message analyzer |
| EP1436724A4 (en) | 2001-09-28 | 2007-10-03 | Consentry Networks Inc | MORE THREAD PACKAGE PROCESSING ENGINE FOR CAREFUL PACKAGE PROCESSING |
| US6842848B2 (en) * | 2002-10-11 | 2005-01-11 | Sandbridge Technologies, Inc. | Method and apparatus for token triggered multithreading |
| CN100549966C (zh) | 2003-09-30 | 2009-10-14 | 明导公司 | 使用一个或多个自动机的系统验证 |
| US20050081206A1 (en) | 2003-10-14 | 2005-04-14 | Armstrong Douglas R. | Methods and apparatus for profiling threaded programs |
| US7730501B2 (en) * | 2003-11-19 | 2010-06-01 | Intel Corporation | Method for parallel processing of events within multiple event contexts maintaining ordered mutual exclusion |
| US7490218B2 (en) | 2004-01-22 | 2009-02-10 | University Of Washington | Building a wavecache |
| US7716031B2 (en) | 2005-02-25 | 2010-05-11 | Coware, Inc. | Interface converter for unified view of multiple computer system simulations |
| WO2007056597A1 (en) | 2005-11-10 | 2007-05-18 | Hewlett-Packard Development Company L.P. | Program thread synchronization |
| US7555607B2 (en) * | 2005-11-10 | 2009-06-30 | Hewlett-Packard Development Company, L.P. | Program thread syncronization for instruction cachelines |
| US7720073B2 (en) | 2005-12-06 | 2010-05-18 | Shabbir Khan | System and/or method for bidding |
| US8799882B2 (en) * | 2005-12-07 | 2014-08-05 | Microsoft Corporation | Compiler support for optimizing decomposed software transactional memory operations |
| US20070143755A1 (en) * | 2005-12-16 | 2007-06-21 | Intel Corporation | Speculative execution past a barrier |
| US7792805B2 (en) * | 2006-05-30 | 2010-09-07 | Oracle America, Inc. | Fine-locked transactional memory |
| US8316352B2 (en) * | 2006-06-09 | 2012-11-20 | Oracle America, Inc. | Watchpoints on transactional variables |
| US20080209436A1 (en) * | 2006-10-25 | 2008-08-28 | Gul Agha | Automated testing of programs using race-detection and flipping |
| US7711678B2 (en) * | 2006-11-17 | 2010-05-04 | Microsoft Corporation | Software transaction commit order and conflict management |
| US7860847B2 (en) * | 2006-11-17 | 2010-12-28 | Microsoft Corporation | Exception ordering in contention management to support speculative sequential semantics |
| US8719807B2 (en) * | 2006-12-28 | 2014-05-06 | Intel Corporation | Handling precompiled binaries in a hardware accelerated software transactional memory system |
| US8060482B2 (en) * | 2006-12-28 | 2011-11-15 | Intel Corporation | Efficient and consistent software transactional memory |
| WO2008101756A1 (en) * | 2007-02-20 | 2008-08-28 | International Business Machines Corporation | Method and system for concurrent message processing |
| US8533681B2 (en) | 2007-03-07 | 2013-09-10 | The Board Of Trustees Of The University Of Illinois | Atomicity violation detection using access interleaving invariants |
| US8458724B2 (en) * | 2007-06-15 | 2013-06-04 | Microsoft Corporation | Automatic mutual exclusion |
| US7676636B2 (en) | 2007-07-10 | 2010-03-09 | Sun Microsystems, Inc. | Method and apparatus for implementing virtual transactional memory using cache line marking |
| US8239633B2 (en) * | 2007-07-11 | 2012-08-07 | Wisconsin Alumni Research Foundation | Non-broadcast signature-based transactional memory |
| US7966459B2 (en) | 2007-12-31 | 2011-06-21 | Oracle America, Inc. | System and method for supporting phased transactional memory modes |
| WO2009114645A1 (en) | 2008-03-11 | 2009-09-17 | University Of Washington | Efficient deterministic multiprocessing |
| US8453120B2 (en) | 2010-05-11 | 2013-05-28 | F5 Networks, Inc. | Enhanced reliability using deterministic multiprocessing-based synchronized replication |
-
2008
- 2008-12-12 EP EP08858537A patent/EP2232367A4/en not_active Withdrawn
- 2008-12-12 WO PCT/US2008/086711 patent/WO2009076654A1/en not_active Ceased
- 2008-12-12 US US12/334,336 patent/US8694997B2/en not_active Expired - Fee Related
- 2008-12-12 JP JP2010538213A patent/JP5576798B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US20090165006A1 (en) | 2009-06-25 |
| WO2009076654A1 (en) | 2009-06-18 |
| EP2232367A1 (en) | 2010-09-29 |
| EP2232367A4 (en) | 2011-03-09 |
| US8694997B2 (en) | 2014-04-08 |
| JP2011507112A (ja) | 2011-03-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5576798B2 (ja) | 決定論的マルチプロセッシング(deterministicmultiprocessing) | |
| JP5624480B2 (ja) | 効率的な決定論的マルチプロセッシング(deterministicmultiprocessing) | |
| US8453120B2 (en) | Enhanced reliability using deterministic multiprocessing-based synchronized replication | |
| Pulte et al. | Promising-ARM/RISC-V: a simpler and faster operational concurrency model | |
| Olszewski et al. | Kendo: efficient deterministic multithreading in software | |
| EP3296877B1 (en) | Debugging systems | |
| Gustavsson et al. | Towards WCET analysis of multicore architectures using UPPAAL | |
| US7506339B2 (en) | High performance synchronization of accesses by threads to shared resources | |
| Kokologiannakis et al. | Stateless model checking of the Linux kernel's hierarchical read-copy-update (tree RCU) | |
| JP6205168B2 (ja) | 並列構造化重複検出を利用する並列モデル検査のためのシステムおよび方法 | |
| Rommel et al. | From Global to Local Quiescence:{Wait-Free} Code Patching of {Multi-Threaded} Processes | |
| US20220164507A1 (en) | Electronic system-level reproducible parallel simulation method implemented by way of a discrete event simulation multicore computing system | |
| US20150160967A1 (en) | Context preservation during thread level speculative execution | |
| Pina et al. | Freeda: Deploying incompatible stock dynamic analyses in production via multi-version execution | |
| Edwards et al. | Programming shared memory multiprocessors with deterministic message-passing concurrency: Compiling SHIM to Pthreads | |
| Lackorzynski et al. | Decoupled: low-effort noise-free execution on commodity systems | |
| Bell et al. | Vroom: Faster Build Processes for Java | |
| Štill | LLVM transformations for model checking | |
| Blanton et al. | Non-blocking inter-partition communication with wait-free pair transactions | |
| Olszewski et al. | Scaling deterministic multithreading | |
| Chajed | Verifying an I/O-concurrent file system | |
| Anand | Take control of your cache: An infrastructure for user-controlled write-backs in modern superscalar out-of-order processors | |
| Boelmann et al. | Application-level determinism in distributed systems | |
| Liao | TAI: threaded asynchronous I/O library for performance and portability | |
| Skazhenik et al. | Basic Lock Algorithms in Lightweight Thread Environments |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111212 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121206 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130426 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130522 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130822 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130829 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140411 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140514 |
|
| 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: 20140606 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140704 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5576798 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |