JP5576798B2 - 決定論的マルチプロセッシング(deterministicmultiprocessing) - Google Patents

決定論的マルチプロセッシング(deterministicmultiprocessing) Download PDF

Info

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
Application number
JP2010538213A
Other languages
English (en)
Japanese (ja)
Other versions
JP2011507112A5 (enExample
JP2011507112A (ja
Inventor
セゼ,ルイス・エイチ
オスキン,マーク・エイチ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Washington
Original Assignee
University of Washington
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Washington filed Critical University of Washington
Publication of JP2011507112A publication Critical patent/JP2011507112A/ja
Publication of JP2011507112A5 publication Critical patent/JP2011507112A5/ja
Application granted granted Critical
Publication of JP5576798B2 publication Critical patent/JP5576798B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • G06F9/463Program control block organisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/522Barrier synchronisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; 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)
JP2010538213A 2007-12-12 2008-12-12 決定論的マルチプロセッシング(deterministicmultiprocessing) Expired - Fee Related JP5576798B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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