JP7230683B2 - 演算処理装置、プログラム、及び演算処理装置の制御方法 - Google Patents
演算処理装置、プログラム、及び演算処理装置の制御方法 Download PDFInfo
- Publication number
- JP7230683B2 JP7230683B2 JP2019095467A JP2019095467A JP7230683B2 JP 7230683 B2 JP7230683 B2 JP 7230683B2 JP 2019095467 A JP2019095467 A JP 2019095467A JP 2019095467 A JP2019095467 A JP 2019095467A JP 7230683 B2 JP7230683 B2 JP 7230683B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- nodes
- average
- value
- calculation
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
-
- 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
- G06F2207/4818—Threshold devices
- G06F2207/4824—Neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Operations Research (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Multi Processors (AREA)
- Advance Control (AREA)
- Complex Calculations (AREA)
Description
(付記1)
互いに通信可能なN台のノードを備え、
各ノードは、演算を実行するプロセッサと、値及び前記値を用いた演算結果を保持するメモリを有し、
Nは2以上の自然数であり、nは1以上の自然数であり、N=2nでない場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、残りのノードは数えた順番で、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す処理を実行することを特徴とする、演算処理装置。
(付記2)
N=2p+1+1であり、pは2p-1<N<2pを満たす自然数である場合、数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
演算結果の数が奇数の場合、
前回の最後の演算結果の順番を最初として2で除算し、
前回の最初の演算結果と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行い、
演算結果の数が偶数の場合、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行うことを特徴とする、付記1記載の演算処理装置。
(付記3)
N=2p-1であり、pは2p-1<N<2pを満たす自然数である場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行うことを特徴とする、付記1記載の演算処理装置。
(付記4)
各ノードは、Allreduce処理を実行し、次式(2)
(付記5)
Nが2nである場合、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す処理を実行することを特徴とする、付記1乃至4のいずれか1項記載の演算処理装置。
(付記6)
互いに通信可能なN台のノードを備えたコンピュータを制御するためのプログラムであって、
Nは2以上の自然数であり、nは1以上の自然数であり、N=2nでない場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、残りのノードは数えた順番で、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す処理を実行する、
処理を前記コンピュータに実行させることを特徴とする、プログラム。
(付記7)
N=2p+1+1であり、pは2p-1<N<2pを満たす自然数である場合、数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
演算結果の数が奇数の場合、
前回の最後の演算結果の順番を最初として2で除算し、
前回の最初の演算結果と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行い、
演算結果の数が偶数の場合、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行う、
処理を前記コンピュータに実行させることを特徴とする、付記6記載のプログラム。
(付記8)
N=2p-1であり、pは2p-1<N<2pを満たす自然数である場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行う、
処理を前記コンピュータに実行させることを特徴とする、付記6記載のプログラム。
(付記9)
各ノードが、Allreduce処理を実行し、次式(2)
(付記10)
Nが2nである場合、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す、
処理を前記コンピュータに実行させることを特徴とする、付記6乃至9のいずれか1項記載のプログラム。
(付記11)
互いに通信可能なN台のノードの夫々が演算を実行し、値及び前記値を用いた演算結果を保持する、演算処理装置の制御方法であって、
Nは2以上の自然数であり、nは1以上の自然数であり、N=2nでない場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、残りのノードは数えた順番で、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す処理を実行させることを特徴とする、演算処理装置の制御方法。
(付記12)
N=2p+1+1であり、pは2p-1<N<2pを満たす自然数である場合、数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
演算結果の数が奇数の場合、
前回の最後の演算結果の順番を最初として2で除算し、
前回の最初の演算結果と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行い、
演算結果の数が偶数の場合、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行う、
処理を実行させることを特徴とする、付記11記載の演算処理装置の制御方法。
(付記13)
N=2p-1であり、pは2p-1<N<2pを満たす自然数である場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行う、
処理を実行させることを特徴とする、付記11記載の演算処理装置の制御方法。
(付記14)
各ノードが、Allreduce処理を実行し、次式(2)
(付記15)
Nが2nである場合、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す、
処理を実行させることを特徴とする、付記11乃至14のいずれか1項記載の演算処理装置の制御方法。
2 コミュニケータ
5 ネットワーク
10,10-1~10-N ノード
21 CPU
22 メモリ
23 通信装置
101 番号割当部
102 実行処理判定部
103 通常集約処理実行部
104 組分集約処理実行部
105 データ送信部
106 データ受信部
107 データ格納部
Claims (6)
- 互いに通信可能なN台のノードを備え、
各ノードは、演算を実行するプロセッサと、値及び前記値を用いた演算結果を保持するメモリを有し、
Nは2以上の自然数であり、nは1以上の自然数であり、N=2nでない場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、残りのノードは数えた順番で、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す処理を実行することを特徴とする、演算処理装置。 - N=2p+1+1であり、pは2p-1<N<2pを満たす自然数である場合、数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
演算結果の数が奇数の場合、
前回の最後の演算結果の順番を最初として2で除算し、
前回の最初の演算結果と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行い、
演算結果の数が偶数の場合、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行うことを特徴とする、請求項1記載の演算処理装置。 - N=2p-1であり、pは2p-1<N<2pを満たす自然数である場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、
前回の最初と次の演算結果の平均演算を行い、
以後は前回の演算結果の順番で連続する2つの演算結果の平均演算を行うことを特徴とする、請求項1記載の演算処理装置。 - 互いに通信可能なN台のノードを備えたコンピュータを制御するためのプログラムであって、
Nは2以上の自然数であり、nは1以上の自然数であり、N=2nでない場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、残りのノードは数えた順番で、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す処理を実行する、
処理を前記コンピュータに実行させることを特徴とする、プログラム。 - 互いに通信可能なN台のノードの夫々が演算を実行し、値及び前記値を用いた演算結果を保持する、演算処理装置の制御方法であって、
Nは2以上の自然数であり、nは1以上の自然数であり、N=2nでない場合、
数えた順番で最後のノードの順番を最初として当該ノードが保持する値を2で除算し、残りのノードは数えた順番で、前記値又は前記値を用いた演算結果を保持するノードを2台ずつ組にして、組にした2台のノードが保持する値の平均値の算出を繰返す処理を実行させることを特徴とする、演算処理装置の制御方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019095467A JP7230683B2 (ja) | 2019-05-21 | 2019-05-21 | 演算処理装置、プログラム、及び演算処理装置の制御方法 |
US16/874,729 US11593071B2 (en) | 2019-05-21 | 2020-05-15 | Arithmetic processing apparatus, control method of arithmetic processing apparatus, and non-transitory computer-readable storage medium for storing program |
CN202010411977.8A CN111984399A (zh) | 2019-05-21 | 2020-05-15 | 运算处理设备及其控制方法以及用于存储程序的存储介质 |
EP20175284.7A EP3742294A1 (en) | 2019-05-21 | 2020-05-18 | Arithmetic processing apparatus, control method of arithmetic processing apparatus, and program for controlling a computer provided with n nodes capable of communicating with each other |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019095467A JP7230683B2 (ja) | 2019-05-21 | 2019-05-21 | 演算処理装置、プログラム、及び演算処理装置の制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020190894A JP2020190894A (ja) | 2020-11-26 |
JP7230683B2 true JP7230683B2 (ja) | 2023-03-01 |
Family
ID=70775263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019095467A Active JP7230683B2 (ja) | 2019-05-21 | 2019-05-21 | 演算処理装置、プログラム、及び演算処理装置の制御方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11593071B2 (ja) |
EP (1) | EP3742294A1 (ja) |
JP (1) | JP7230683B2 (ja) |
CN (1) | CN111984399A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113744037B (zh) * | 2021-08-16 | 2023-09-29 | 同盾科技有限公司 | 知识联邦中参与方通信方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000020501A (ja) | 1998-07-03 | 2000-01-21 | Toshiba Corp | 並列計算機システム及びその演算処理装置間の通信方法 |
JP2006033473A (ja) | 2004-07-16 | 2006-02-02 | Nikon Corp | 画像処理装置、および画像処理プログラム |
US20080183779A1 (en) | 2007-01-31 | 2008-07-31 | International Business Machines Corporation | Method and System for Optimal Parallel Computing Performance |
JP2019067084A (ja) | 2017-09-29 | 2019-04-25 | 富士通株式会社 | 情報処理システム、情報処理装置、及び、転送先決定方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63259767A (ja) * | 1987-04-17 | 1988-10-26 | Canon Electronics Inc | 平均値回路 |
JP3524430B2 (ja) | 1999-05-25 | 2004-05-10 | 株式会社日立製作所 | 並列計算機におけるリダクション処理方法 |
JP5115497B2 (ja) * | 2009-02-27 | 2013-01-09 | 富士通セミコンダクター株式会社 | 画像処理プログラム、画像処理装置および画像処理方法 |
JP6380051B2 (ja) * | 2014-11-28 | 2018-08-29 | 富士通株式会社 | 有限要素演算プログラム、有限要素演算装置および有限要素演算方法 |
US20190188563A1 (en) * | 2017-12-18 | 2019-06-20 | Kabushiki Kaisha Toshiba | System |
JP6981329B2 (ja) * | 2018-03-23 | 2021-12-15 | 日本電信電話株式会社 | 分散深層学習システム |
CN108829517B (zh) * | 2018-05-31 | 2021-04-06 | 中国科学院计算技术研究所 | 一种用于在集群环境下进行机器学习的训练方法和系统 |
US11521067B2 (en) * | 2018-11-30 | 2022-12-06 | International Business Machines Corporation | Decentralized distributed deep learning |
-
2019
- 2019-05-21 JP JP2019095467A patent/JP7230683B2/ja active Active
-
2020
- 2020-05-15 CN CN202010411977.8A patent/CN111984399A/zh active Pending
- 2020-05-15 US US16/874,729 patent/US11593071B2/en active Active
- 2020-05-18 EP EP20175284.7A patent/EP3742294A1/en not_active Ceased
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000020501A (ja) | 1998-07-03 | 2000-01-21 | Toshiba Corp | 並列計算機システム及びその演算処理装置間の通信方法 |
JP2006033473A (ja) | 2004-07-16 | 2006-02-02 | Nikon Corp | 画像処理装置、および画像処理プログラム |
US20080183779A1 (en) | 2007-01-31 | 2008-07-31 | International Business Machines Corporation | Method and System for Optimal Parallel Computing Performance |
JP2019067084A (ja) | 2017-09-29 | 2019-04-25 | 富士通株式会社 | 情報処理システム、情報処理装置、及び、転送先決定方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111984399A (zh) | 2020-11-24 |
JP2020190894A (ja) | 2020-11-26 |
US11593071B2 (en) | 2023-02-28 |
US20200371750A1 (en) | 2020-11-26 |
EP3742294A1 (en) | 2020-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109324827B (zh) | 用于处理用于访问数据的指令的装置、方法和系统 | |
JP7279226B2 (ja) | 代替ループ限界値 | |
CN108564168B (zh) | 一种对支持多精度卷积神经网络处理器的设计方法 | |
TWI740274B (zh) | 用於在使用加法器之多維張量中存取資料之系統、電腦實施方法及設備 | |
TWI777442B (zh) | 用於傳送資料之設備、方法及系統 | |
US11880768B2 (en) | Method and apparatus with bit-serial data processing of a neural network | |
TW202014939A (zh) | 修改機器學習模型以改善局域性 | |
US20190138922A1 (en) | Apparatus and methods for forward propagation in neural networks supporting discrete data | |
CN114127702A (zh) | 在存储器受限设备上执行大型人工智能模型 | |
JP7230683B2 (ja) | 演算処理装置、プログラム、及び演算処理装置の制御方法 | |
CN112836787A (zh) | 通过高效混合并行化减少深度神经网络训练次数 | |
JP7193708B2 (ja) | 最適化装置及び最適化装置の制御方法 | |
CN112540946A (zh) | 可重构处理器及其上多种神经网络激活函数计算方法 | |
US11297127B2 (en) | Information processing system and control method of information processing system | |
JP2023542261A (ja) | 複数のアキュムレータを有するシストリックアレイセル | |
GB2567038B (en) | Accessing prologue and epilogue data | |
CN112149794A (zh) | 信息处理设备、计算机可读存储介质和信息处理方法 | |
US20180113839A1 (en) | Associative Computer Providing Semi-Parallel Architecture | |
US20190073584A1 (en) | Apparatus and methods for forward propagation in neural networks supporting discrete data | |
JP2024004199A (ja) | 粒子挙動シミュレーション装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221214 |
|
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: 20230117 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230130 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7230683 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |