JP2014059870A5 - - Google Patents

Download PDF

Info

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
Application number
JP2013187849A
Other languages
English (en)
Other versions
JP2014059870A (ja
JP6196855B2 (ja
Filing date
Publication date
Priority claimed from US13/620,047 external-priority patent/US9342358B2/en
Application filed filed Critical
Publication of JP2014059870A publication Critical patent/JP2014059870A/ja
Publication of JP2014059870A5 publication Critical patent/JP2014059870A5/ja
Application granted granted Critical
Publication of JP6196855B2 publication Critical patent/JP6196855B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (11)

  1. 複数のプロセッサによって遂行される命令数を同期させる方法であって、
    所定の期間が経過するまで第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のプロセッサに命令すること
    を備える、方法。
  2. 入力データをシステム内に受け取ることと、
    前記入力データを複数のプロセッサに提供することと、
    前記複数のプロセッサからのそれぞれの複数の出力を生成するために前記入力データを用いてアプリケーションコードを実行することと、
    合意出力を生成するために前記それぞれの複数の出力に分散合意アルゴリズムを適用することと、
    を備える方法であって、
    前記複数のプロセッサは、
    所定の期間が経過するまで第1の複数の反復によって命令を反復して実行するように構成される第1のプロセッサであって、前記第1の複数の反復の各反復内で実行される命令数は、前記第1の複数の反復の先行する反復内で実行される命令数よりも少ない、第1のプロセッサ、および
    前記所定の期間が経過するまで第2の複数の反復によって命令を反復して実行するように構成され、前記第1のプロセッサと同期した第2のプロセッサであって、前記第2の複数の反復の各反復内で実行される命令数は、前記第2の複数の反復の先行する反復内で実行される命令数よりも少ない、第2のプロセッサ、
    を備え
    前記入力データを用いてアプリケーションコードを実行することが、もし、前記第2の総命令数が前記第1の総命令数よりも少なければ、計算された命令数を実行するように前記第2のプロセッサに命令することを含む
    方法。
  3. もし、前記第1の総命令数が前記第2の総命令数以上であれば、処理を遅らせるように前記第1のプロセッサに命令することを備える、請求項1または2に記載の方法。
  4. もし、前記第2の総命令数が前記第1の総命令数以上であれば、処理を遅らせるように前記第2のプロセッサに命令することを備える、請求項1または2に記載の方法。
  5. 前記所定の期間が経過するまで第3の複数の反復によって命令を反復して実行するように第3のプロセッサに命令することであって、前記第3の複数の反復の各反復内で実行される命令数は、前記第3の複数の反復の先行する反復内で実行される命令数よりも少ない、前記所定の期間が経過するまで第3の複数の反復によって命令を反復して実行するように第3のプロセッサに命令することを備え、
    前記所定の期間の間に前記第3のプロセッサによって実行される第3の総命令数を求めることを備える、請求項1乃至4のいずれかに記載の方法。
  6. もし、前記第3の総命令数が前記第1の総命令数または前記第2の総命令数よりも少なければ、第3の計算された命令数を実行するように前記第3のプロセッサに命令することを備える、請求項記載の方法。
  7. もし、前記第3の総命令数が前記第1の総命令数以上であり、かつもし、前記第3の総命令数が前記第2の総命令数以上であれば、処理を遅らせるように前記第3のプロセッサに命令することを備える、請求項記載の方法。
  8. もし、前記第1の総命令数が前記第2の総命令数または前記第3の総命令数よりも少なければ、前記第2の計算された命令数を実行するように前記第1のプロセッサに命令することを備える、請求項記載の方法。
  9. もし、前記第1の総命令数が前記第2の総命令数以上であり、かつもし、前記第1の総命令数が前記第3の総命令数以上であれば、処理を遅らせるように前記第1のプロセッサに命令することを備える、請求項記載の方法。
  10. もし、前記第2の総命令数が前記第1の総命令数または前記第3の総命令数よりも少なければ、前記第1の計算された命令数を実行するように前記第2のプロセッサに命令することを備える、請求項記載の方法。
  11. もし、前記第2の総命令数が前記第1の総命令数以上であり、かつもし、前記第2の総命令数が前記第3の総命令数以上であれば、処理を遅らせるように前記第2のプロセッサに命令することを備える、請求項記載の方法。
JP2013187849A 2012-09-14 2013-09-11 プロセッサの命令実行の同期システムおよび方法 Expired - Fee Related JP6196855B2 (ja)

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)

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

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

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