JP2014059870A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2014059870A5 JP2014059870A5 JP2013187849A JP2013187849A JP2014059870A5 JP 2014059870 A5 JP2014059870 A5 JP 2014059870A5 JP 2013187849 A JP2013187849 A JP 2013187849A JP 2013187849 A JP2013187849 A JP 2013187849A JP 2014059870 A5 JP2014059870 A5 JP 2014059870A5
- Authority
- JP
- Japan
- Prior art keywords
- instructions
- processor
- total
- iterations
- instructing
- 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
- 230000003111 delayed Effects 0.000 claims 3
- 230000001360 synchronised Effects 0.000 claims 2
Claims (11)
- 複数のプロセッサによって遂行される命令数を同期させる方法であって、
所定の期間が経過するまで第1の複数の反復によって命令を反復して実行するように第1のプロセッサに命令することであって、前記第1の複数の反復の各反復内で実行される命令数は、前記第1の複数の反復の先行する反復内で実行される命令数よりも少ない、所定の期間が経過するまで第1の複数の反復によって命令を反復して実行するように第1のプロセッサに命令することと、
前記所定の期間が経過するまで第2の複数の反復によって命令を反復して実行するように、前記第1のプロセッサに同期した第2のプロセッサに命令することであって、前記第2の複数の反復の各反復内で実行される命令数は、前記第2の複数の反復の先行する反復内で実行される命令数よりも少ない、前記所定の期間が経過するまで第2の複数の反復によって命令を反復して実行するように第2のプロセッサに命令することと、
前記所定の期間の間に前記第1のプロセッサによって実行された第1の総命令数を求めることと、
前記所定の期間の間に前記第2のプロセッサによって実行された第2の総命令数を求めることと、
もし、前記第2の総命令数が前記第1の総命令数よりも少なければ、第1の計算された命令数を実行するように前記第2のプロセッサに命令することと、
もし、前記第1の総命令数が前記第2の総命令数よりも少なければ、第2の計算された命令数を実行するように前記第1のプロセッサに命令すること
を備える、方法。 - 入力データをシステム内に受け取ることと、
前記入力データを複数のプロセッサに提供することと、
前記複数のプロセッサからのそれぞれの複数の出力を生成するために前記入力データを用いてアプリケーションコードを実行することと、
合意出力を生成するために前記それぞれの複数の出力に分散合意アルゴリズムを適用することと、
を備える方法であって、
前記複数のプロセッサは、
所定の期間が経過するまで第1の複数の反復によって命令を反復して実行するように構成される第1のプロセッサであって、前記第1の複数の反復の各反復内で実行される命令数は、前記第1の複数の反復の先行する反復内で実行される命令数よりも少ない、第1のプロセッサ、および
前記所定の期間が経過するまで第2の複数の反復によって命令を反復して実行するように構成され、前記第1のプロセッサと同期した第2のプロセッサであって、前記第2の複数の反復の各反復内で実行される命令数は、前記第2の複数の反復の先行する反復内で実行される命令数よりも少ない、第2のプロセッサ、
を備え、
前記入力データを用いてアプリケーションコードを実行することが、もし、前記第2の総命令数が前記第1の総命令数よりも少なければ、計算された命令数を実行するように前記第2のプロセッサに命令することを含む、
方法。 - もし、前記第1の総命令数が前記第2の総命令数以上であれば、処理を遅らせるように前記第1のプロセッサに命令することを備える、請求項1または2に記載の方法。
- もし、前記第2の総命令数が前記第1の総命令数以上であれば、処理を遅らせるように前記第2のプロセッサに命令することを備える、請求項1または2に記載の方法。
- 前記所定の期間が経過するまで第3の複数の反復によって命令を反復して実行するように第3のプロセッサに命令することであって、前記第3の複数の反復の各反復内で実行される命令数は、前記第3の複数の反復の先行する反復内で実行される命令数よりも少ない、前記所定の期間が経過するまで第3の複数の反復によって命令を反復して実行するように第3のプロセッサに命令することを備え、
前記所定の期間の間に前記第3のプロセッサによって実行される第3の総命令数を求めることを備える、請求項1乃至4のいずれかに記載の方法。 - もし、前記第3の総命令数が前記第1の総命令数または前記第2の総命令数よりも少なければ、第3の計算された命令数を実行するように前記第3のプロセッサに命令することを備える、請求項5記載の方法。
- もし、前記第3の総命令数が前記第1の総命令数以上であり、かつもし、前記第3の総命令数が前記第2の総命令数以上であれば、処理を遅らせるように前記第3のプロセッサに命令することを備える、請求項5記載の方法。
- もし、前記第1の総命令数が前記第2の総命令数または前記第3の総命令数よりも少なければ、前記第2の計算された命令数を実行するように前記第1のプロセッサに命令することを備える、請求項5記載の方法。
- もし、前記第1の総命令数が前記第2の総命令数以上であり、かつもし、前記第1の総命令数が前記第3の総命令数以上であれば、処理を遅らせるように前記第1のプロセッサに命令することを備える、請求項5記載の方法。
- もし、前記第2の総命令数が前記第1の総命令数または前記第3の総命令数よりも少なければ、前記第1の計算された命令数を実行するように前記第2のプロセッサに命令することを備える、請求項5記載の方法。
- もし、前記第2の総命令数が前記第1の総命令数以上であり、かつもし、前記第2の総命令数が前記第3の総命令数以上であれば、処理を遅らせるように前記第2のプロセッサに命令することを備える、請求項5記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/620,047 | 2012-09-14 | ||
US13/620,047 US9342358B2 (en) | 2012-09-14 | 2012-09-14 | System and method for synchronizing processor instruction execution |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2014059870A JP2014059870A (ja) | 2014-04-03 |
JP2014059870A5 true JP2014059870A5 (ja) | 2016-10-20 |
JP6196855B2 JP6196855B2 (ja) | 2017-09-13 |
Family
ID=49162034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013187849A Expired - Fee Related JP6196855B2 (ja) | 2012-09-14 | 2013-09-11 | プロセッサの命令実行の同期システムおよび方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9342358B2 (ja) |
EP (1) | EP2709010B1 (ja) |
JP (1) | JP6196855B2 (ja) |
CN (1) | CN103677756B (ja) |
BR (1) | BR102013021930A2 (ja) |
CA (1) | CA2826572A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201229910A (en) * | 2011-01-14 | 2012-07-16 | Hon Hai Prec Ind Co Ltd | Method of activating application in virtual environment |
FR3023398B1 (fr) * | 2014-07-01 | 2016-07-01 | Bull Sas | Procede et dispositif d'execution synchronisee d'une application dans un environnement a haute disponibilite |
US9996431B2 (en) * | 2016-03-23 | 2018-06-12 | GM Global Technology Operations LLC | Architecture and apparatus for advanced arbitration in embedded controls |
FR3052890B1 (fr) * | 2016-06-21 | 2018-07-13 | Thales Sa | Procede de reception garantie de signaux communs dans un systeme avionique comportant une pluralite de calculateurs electroniques |
CN106445852B (zh) * | 2016-08-12 | 2019-05-14 | 中国航空工业集团公司西安飞行自动控制研究所 | 一种基于自监控架构的任务间通讯装置与方法 |
US10452446B1 (en) * | 2017-06-07 | 2019-10-22 | Rockwell Collins, Inc. | High integrity multi-core processing |
CN111767078A (zh) * | 2019-04-02 | 2020-10-13 | 上海寒武纪信息科技有限公司 | 数据运行方法、装置和相关产品 |
FR3108993A1 (fr) * | 2020-04-07 | 2021-10-08 | Airbus Operations | Procédé et système de synchronisation d’unités de calcul d’un aéronef. |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4589066A (en) | 1984-05-31 | 1986-05-13 | General Electric Company | Fault tolerant, frame synchronization for multiple processor systems |
US5295258A (en) | 1989-12-22 | 1994-03-15 | Tandem Computers Incorporated | Fault-tolerant computer system with online recovery and reintegration of redundant components |
US5233615A (en) | 1991-06-06 | 1993-08-03 | Honeywell Inc. | Interrupt driven, separately clocked, fault tolerant processor synchronization |
US5613127A (en) | 1992-08-17 | 1997-03-18 | Honeywell Inc. | Separately clocked processor synchronization improvement |
US5537655A (en) | 1992-09-28 | 1996-07-16 | The Boeing Company | Synchronized fault tolerant reset |
JPH0773059A (ja) | 1993-03-02 | 1995-03-17 | Tandem Comput Inc | フォールトトレラント型コンピュータシステム |
US5550736A (en) | 1993-04-27 | 1996-08-27 | Honeywell Inc. | Fail-operational fault tolerant flight critical computer architecture and monitoring method |
US5572620A (en) | 1993-07-29 | 1996-11-05 | Honeywell Inc. | Fault-tolerant voter system for output data from a plurality of non-synchronized redundant processors |
JPH07175765A (ja) * | 1993-10-25 | 1995-07-14 | Mitsubishi Electric Corp | 計算機の障害回復方法 |
US5557623A (en) | 1994-08-12 | 1996-09-17 | Honeywell Inc. | Accurate digital fault tolerant clock |
US5742753A (en) | 1996-06-06 | 1998-04-21 | The Boeing Company | Mesh interconnected array in a fault-tolerant computer system |
US5896523A (en) | 1997-06-04 | 1999-04-20 | Marathon Technologies Corporation | Loosely-coupled, synchronized execution |
CA2309926A1 (en) | 1997-11-14 | 1999-05-27 | Erik Muench | Method for maintaining the synchronized execution in fault resilient/fault tolerant computer systems |
US6374364B1 (en) | 1998-01-20 | 2002-04-16 | Honeywell International, Inc. | Fault tolerant computing system using instruction counting |
US6327668B1 (en) * | 1998-06-30 | 2001-12-04 | Sun Microsystems, Inc. | Determinism in a multiprocessor computer system and monitor and processor therefor |
US6367031B1 (en) | 1998-12-17 | 2002-04-02 | Honeywell International Inc. | Critical control adaption of integrated modular architecture |
ATE456092T1 (de) | 2000-04-11 | 2010-02-15 | Boeing Co | Verarbeitungssystem mit mehrheitsentscheidung |
US6633969B1 (en) * | 2000-08-11 | 2003-10-14 | Lsi Logic Corporation | Instruction translation system and method achieving single-cycle translation of variable-length MIPS16 instructions |
US6895582B1 (en) | 2000-09-11 | 2005-05-17 | Rockwell Collins | Method and apparatus for high assurance computing using virtual machines on general purpose computing resources |
US6938183B2 (en) | 2001-09-21 | 2005-08-30 | The Boeing Company | Fault tolerant processing architecture |
EP1341080A1 (fr) * | 2002-02-26 | 2003-09-03 | Koninklijke Philips Electronics N.V. | Système de traitement d'instructions d'un programme |
US6948091B2 (en) | 2002-05-02 | 2005-09-20 | Honeywell International Inc. | High integrity recovery from multi-bit data failures |
US7565433B1 (en) | 2002-06-28 | 2009-07-21 | Microsoft Corporation | Byzantine paxos |
US7558883B1 (en) | 2002-06-28 | 2009-07-07 | Microsoft Corporation | Fast transaction commit |
JP2004046599A (ja) * | 2002-07-12 | 2004-02-12 | Nec Corp | フォルトトレラントコンピュータ装置、その再同期化方法及び再同期化プログラム |
US7620680B1 (en) | 2002-08-15 | 2009-11-17 | Microsoft Corporation | Fast byzantine paxos |
US8005888B2 (en) | 2003-12-30 | 2011-08-23 | Microsoft Corporation | Conflict fast consensus |
US7856502B2 (en) | 2004-06-18 | 2010-12-21 | Microsoft Corporation | Cheap paxos |
US7334154B2 (en) | 2004-06-18 | 2008-02-19 | Microsoft Corporation | Efficient changing of replica sets in distributed fault-tolerant computing system |
US7505400B2 (en) | 2004-09-22 | 2009-03-17 | Honeywell International Inc. | Dual lane connection to dual redundant avionics networks |
US7555516B2 (en) | 2004-11-23 | 2009-06-30 | Microsoft Corporation | Fast Paxos recovery |
US7698465B2 (en) | 2004-11-23 | 2010-04-13 | Microsoft Corporation | Generalized Paxos |
US20060143517A1 (en) | 2004-12-22 | 2006-06-29 | Microsoft Corporation | Replicated virtual machine |
US9753754B2 (en) | 2004-12-22 | 2017-09-05 | Microsoft Technology Licensing, Llc | Enforcing deterministic execution of threads of guest operating systems running in a virtual machine hosted on a multiprocessor machine |
US8046413B2 (en) | 2005-02-14 | 2011-10-25 | Microsoft Corporation | Automatic commutativity detection for generalized paxos |
US20060200278A1 (en) | 2005-03-02 | 2006-09-07 | Honeywell International Inc. | Generic software fault mitigation |
WO2006127613A2 (en) | 2005-05-24 | 2006-11-30 | Marathon Technologies Corporation | Symmetric multiprocessor fault tolerant computer system |
US7797457B2 (en) | 2006-03-10 | 2010-09-14 | Microsoft Corporation | Leaderless byzantine consensus |
US7636868B2 (en) | 2006-06-27 | 2009-12-22 | Microsoft Corporation | Data replication in a distributed system |
US7793147B2 (en) | 2006-07-18 | 2010-09-07 | Honeywell International Inc. | Methods and systems for providing reconfigurable and recoverable computing resources |
WO2008040082A1 (en) | 2006-10-05 | 2008-04-10 | Waratek Pty Limited | Multiple computer system with dual mode redundancy architecture |
FR2912526B1 (fr) * | 2007-02-13 | 2009-04-17 | Thales Sa | Procede de maintien du synchronisme d'execution entre plusieurs processeurs asynchrones fonctionnant en parallele de maniere redondante. |
FR2914519B1 (fr) | 2007-03-26 | 2009-06-12 | Airbus France Sas | Procede de controle d'integrite des donnees dans un reseau afdx. |
US7987385B2 (en) | 2007-07-24 | 2011-07-26 | Ge Aviation Systems Llc | Method for high integrity and high availability computer processing |
US7849223B2 (en) | 2007-12-07 | 2010-12-07 | Microsoft Corporation | Virtually synchronous Paxos |
US8499297B2 (en) | 2008-10-28 | 2013-07-30 | Vmware, Inc. | Low overhead fault tolerance through hybrid checkpointing and replay |
US8930754B2 (en) | 2008-12-12 | 2015-01-06 | Bae Systems Plc | Apparatus and method for processing data streams |
-
2012
- 2012-09-14 US US13/620,047 patent/US9342358B2/en active Active
-
2013
- 2013-08-28 BR BRBR102013021930-4A patent/BR102013021930A2/pt active Search and Examination
- 2013-09-05 CA CA2826572A patent/CA2826572A1/en not_active Abandoned
- 2013-09-11 JP JP2013187849A patent/JP6196855B2/ja not_active Expired - Fee Related
- 2013-09-12 EP EP13184182.7A patent/EP2709010B1/en active Active
- 2013-09-13 CN CN201310416585.0A patent/CN103677756B/zh active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2014059870A5 (ja) | ||
GB2553934B (en) | Virtual image processor instruction set architecture (ISA) and memory model and exemplary target hardware having a two-dimensional shift array structure | |
GB2558842A (en) | Processing apparatus and methods | |
HK1248934A1 (zh) | 網絡計算資源的數據協調處理 | |
WO2015000919A3 (en) | Method and processor for efficient video processing in a streaming environment | |
HK1249459A1 (zh) | 用於處理心臟傳感器輸出的方法和計算機系統 | |
PT3619921T (pt) | Processador de áudio, sistema, método e programa de computador para renderização de áudio | |
KR20180084980A (ko) | 진단 장치, 컴퓨터 프로그램, 및 진단 시스템 | |
EP3190515A4 (en) | Task scheduling method and device on heterogeneous multi-core reconfigurable computing platform | |
EP3241130A4 (en) | System and method for massively parallel processor database | |
PH12017550124A1 (en) | Decoupled processor instruction window and operand buffer | |
PT2822226T (pt) | Sistema e método de preparação e processamento de alimentos, cozinhando, e programa de computador para implementar o método | |
EP3519948A4 (en) | PROCESSORS, METHODS, SYSTEMS AND INSTRUCTIONS FOR LOADING MULTIPLE DATA ELEMENTS TO DESTINATION LOCATIONS OTHER THAN PACKED DATA REGISTERS | |
SG11201705365UA (en) | Virtual currency conversion device, method and computer program | |
PL3338196T3 (pl) | Certyfikowalna deterministyczna platforma oprogramowania systemu dla krytycznych dla bezpieczeństwa aplikacji ścisłego czasu rzeczywistego w systemach awioniki z procesorami wielordzeniowymi | |
EP2889760A3 (en) | SMS4 acceleration processors, methods, systems, and instructions | |
DK3326345T3 (da) | Systemer og fremgangsmåder til at eksekvere private programmer på ikke sikre computere | |
EP2962192A4 (en) | SYSTEM AND ASSOCIATED METHOD FOR OPTIMIZING COMPUTER STARTING TIME COMPRISING MULTIPLE UCT | |
GB201507373D0 (en) | A discovery informatics system, method and computer program | |
WO2012096849A3 (en) | System and method for controlling excessive parallelism in multiprocessor systems | |
BR112015026470A2 (pt) | aparelho de corte para cortar objetos de alimento enquanto os objetos de alimento são transportados a partir de um transportador de entrada para um transportador de saída. método de operar um aparelho de corte para cortar objetos de alimento enquanto os objetos de alimento são transportados a partir de um transportador de entrada para um transportador de saída , e produto de programa de computador | |
EP3076297A3 (en) | Controller | |
JP2017097520A5 (ja) | ||
ZA201702790B (en) | Cpu and multi-cpu system management method | |
GB2540070A (en) | Hardware counters to track utilization in a multithreading computer system |