JP7003025B2 - 計算量評価装置、計算量評価方法及び計算量評価プログラム - Google Patents
計算量評価装置、計算量評価方法及び計算量評価プログラム Download PDFInfo
- Publication number
- JP7003025B2 JP7003025B2 JP2018195928A JP2018195928A JP7003025B2 JP 7003025 B2 JP7003025 B2 JP 7003025B2 JP 2018195928 A JP2018195928 A JP 2018195928A JP 2018195928 A JP2018195928 A JP 2018195928A JP 7003025 B2 JP7003025 B2 JP 7003025B2
- Authority
- JP
- Japan
- Prior art keywords
- calculation
- input
- estimation function
- unit
- calculation time
- 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
Landscapes
- Debugging And Monitoring (AREA)
- Complex Calculations (AREA)
Description
従来の高速な乗算アルゴリズムとして、例えば、Karatsuba法(非特許文献1参照)、及び高速フーリエ変換乗算法(非特許文献2参照)が提案されている。
例えば、前述のKaratsuba法及び高速フーリエ変換乗算法の漸近計算量は、それぞれO(nlog(2)3)及びO(n・log n)であり、理論上は高速フーリエ変換乗算法が高速である。しかしながら、実装方法(プログラム)、CPU等の動作環境及び入力サイズ(桁数)によっては、高速フーリエ変換乗算法よりもKaratsuba法が高速になる場合もあった。
図1は、本実施形態に係る計算量評価装置1の機能構成を示すブロック図である。
計算量評価装置1は、サーバ装置又はパーソナルコンピュータ等の情報処理装置(コンピュータ)であり、制御部10及び記憶部20の他、各種データの入出力デバイス及び通信デバイス等を備える。
このとき、入力部11は、用意する計算時間のサンプルデータの数、すなわち記録部13による事前計算の実行回数の指定を受け付けてもよい。
ここで、設定部12は、主要項が入力サイズに等しい場合、すなわち、計算アルゴリズムから求められる計算量がO(n)の場合、推定関数を、線型項及び定数項のみとする。
なお、記録部13は、入力サイズを所定の範囲でランダムに選択してもよいし、実行回数に応じて等間隔等に分散して選択してもよい。
出力部15は、算出部14により算出された係数を設定した推定関数を出力する。
選択部16は、入力サイズの指定に対して、同一の処理を行う複数の計算アルゴリズムのうち、対応する推定関数による計算時間の推定値が最小の計算アルゴリズムを選択する。
なお、計算量評価装置1は、任意の計算アルゴリズムを対象とする。
評価対象の計算アルゴリズムによる計算時間f(n)は、入力サイズnにのみ依存し、アルゴリズムの計算量の主要項がC(n)(>O(1))であるものとする。また、計算時間は、入力サイズに比例するオーバヘッドと、常に一定のオーバヘッドとを加味し、f(n)=aC(n)+bn+c(ただし、a,b,cは定数)と表されるものとする。
計算量評価装置1は、実装されたプログラムP、計算量の主要項C(n)、繰り返し回数lを入力として、計算時間の推定関数f(n)を出力する。
なお、繰り返し回数lの値を大きくすると、処理時間は長くなるものの、推定関数の精度が向上する。
ステップ2において、制御部10(記録部13)は、入力サイズniを任意に、あるいは所定間隔等のルールに従って選択する。
ステップ3において、制御部10(記録部13)は、サイズniの入力xiを任意に選択する。
ステップ4において、制御部10(記録部13)は、評価対象の計算アルゴリズムの実装環境において、入力xiを与えてプログラムPを実行し、実計算時間tiを記録する。
ステップ6及び7において、制御部10(算出部14)は、係数a=0とし、推定関数f(n)=bn+cの係数b,cを前述の行列式により算出する。
ステップ8において、制御部10(算出部14)は、推定関数f(n)=aC(n)+bn+cの係数a,b,cを前述の行列式により算出する。
ステップ10において、制御部10(出力部15)は、推定関数f(n)を出力する。
計算アルゴリズムAの実装プログラムと計算アルゴリズムBの実装プログラムとは、入力サイズに応じてそれぞれ計算時間が異なる。計算アルゴリズムAの計算時間を推定する推定関数fAと、計算アルゴリズムBの計算時間を推定する推定関数fBとは、例えば図のように表される。
したがって、計算量評価装置1は、計算アルゴルズムの実装方法、動作環境及び入力サイズに基づき計算時間により計算量を評価できる。この結果、計算量評価装置1は、推定した計算時間により、同一の処理を行う複数の計算アルゴリズムの中から最適な計算アルゴリズムを選択することができる。
10 制御部
11 入力部
12 設定部
13 記録部
14 算出部
15 出力部
16 選択部
20 記憶部
Claims (7)
- 計算アルゴリズムに対して、入力サイズの関数である計算量の主要項を受け付ける入力部と、
前記主要項に所定のオーバヘッドを加味し、係数を付加した計算時間の推定関数を設定する設定部と、
前記計算アルゴリズムの実装環境において、前記入力サイズの異なる計算を複数回実行し、実計算時間を前記入力サイズと対応付けて記録する記録部と、
前記推定関数による計算時間の推定値と前記実計算時間との誤差を最小にするための前記係数を算出する算出部と、
前記算出部により算出された前記係数を設定した前記推定関数を出力する出力部と、を備える計算量評価装置。 - 前記入力部は、前記記録部による計算の実行回数の指定を受け付ける請求項1に記載の計算量評価装置。
- 前記オーバヘッドは、前記入力サイズの線型項及び定数項である請求項1又は請求項2に記載の計算量評価装置。
- 前記設定部は、前記主要項が前記入力サイズに等しい場合、前記推定関数を、前記線型項及び前記定数項のみとする請求項3に記載の計算量評価装置。
- 前記入力サイズの指定に対して、複数の計算アルゴリズムのうち、対応する前記推定関数による計算時間の推定値が最小の計算アルゴリズムを選択する選択部を備える請求項1から請求項4のいずれかに記載の計算量評価装置。
- 計算アルゴリズムに対して、入力サイズの関数である計算量の主要項を受け付ける入力ステップと、
前記主要項に所定のオーバヘッドを加味し、係数を付加した計算時間の推定関数を設定する設定ステップと、
前記計算アルゴリズムの実装環境において、前記入力サイズの異なる計算を複数回実行し、実計算時間を前記入力サイズと対応付けて記録する記録ステップと、
前記推定関数による計算時間の推定値と前記実計算時間との誤差を最小にするための前記係数を算出する算出ステップと、
前記算出ステップにおいて算出された前記係数を設定した前記推定関数を出力する出力ステップと、をコンピュータが実行する計算量評価方法。 - 計算アルゴリズムに対して、入力サイズの関数である計算量の主要項を受け付ける入力ステップと、
前記主要項に所定のオーバヘッドを加味し、係数を付加した計算時間の推定関数を設定する設定ステップと、
前記計算アルゴリズムの実装環境において、前記入力サイズの異なる計算を複数回実行し、実計算時間を前記入力サイズと対応付けて記録する記録ステップと、
前記推定関数による計算時間の推定値と前記実計算時間との誤差を最小にするための前記係数を算出する算出ステップと、
前記算出ステップにおいて算出された前記係数を設定した前記推定関数を出力する出力ステップと、をコンピュータに実行させるための計算量評価プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018195928A JP7003025B2 (ja) | 2018-10-17 | 2018-10-17 | 計算量評価装置、計算量評価方法及び計算量評価プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018195928A JP7003025B2 (ja) | 2018-10-17 | 2018-10-17 | 計算量評価装置、計算量評価方法及び計算量評価プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020064455A JP2020064455A (ja) | 2020-04-23 |
JP7003025B2 true JP7003025B2 (ja) | 2022-01-20 |
Family
ID=70388310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018195928A Active JP7003025B2 (ja) | 2018-10-17 | 2018-10-17 | 計算量評価装置、計算量評価方法及び計算量評価プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7003025B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010113527A (ja) | 2008-11-06 | 2010-05-20 | Hitachi Systems & Services Ltd | バグ摘出予測システム |
JP2013153257A (ja) | 2012-01-24 | 2013-08-08 | Axell Corp | 画像処理装置及び画像処理方法 |
JP2013175065A (ja) | 2012-02-24 | 2013-09-05 | Fujitsu Ltd | 性能評価方法、情報処理装置およびプログラム |
WO2018150588A1 (ja) | 2017-02-20 | 2018-08-23 | 三菱電機株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
US20180247223A1 (en) | 2017-02-28 | 2018-08-30 | GM Global Technology Operations LLC | System and method of selecting a computational platform |
-
2018
- 2018-10-17 JP JP2018195928A patent/JP7003025B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010113527A (ja) | 2008-11-06 | 2010-05-20 | Hitachi Systems & Services Ltd | バグ摘出予測システム |
JP2013153257A (ja) | 2012-01-24 | 2013-08-08 | Axell Corp | 画像処理装置及び画像処理方法 |
JP2013175065A (ja) | 2012-02-24 | 2013-09-05 | Fujitsu Ltd | 性能評価方法、情報処理装置およびプログラム |
WO2018150588A1 (ja) | 2017-02-20 | 2018-08-23 | 三菱電機株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
US20180247223A1 (en) | 2017-02-28 | 2018-08-30 | GM Global Technology Operations LLC | System and method of selecting a computational platform |
Also Published As
Publication number | Publication date |
---|---|
JP2020064455A (ja) | 2020-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Boudot et al. | Comparing the difficulty of factorization and discrete logarithm: a 240-digit experiment | |
CN114175568B (zh) | 安全的多方到达率和频率估算 | |
JP5378579B2 (ja) | フォールディングを用いるモジュール削減 | |
Bernstein et al. | On the correct use of the negation map in the Pollard rho method | |
Reparaz et al. | Fast leakage assessment | |
Xie et al. | Pandas: robust locality-aware scheduling with stochastic delay optimality | |
JP2022523182A (ja) | モジュラー整数を使用したセキュアなマルチパーティ計算のための算術 | |
CN110062922A (zh) | 流处理系统和方法 | |
JP2023525953A (ja) | Nisq(ノイズ有り中規模量子)コンピュータにおける振幅推定の方法 | |
Lange et al. | Kangaroos in side-channel attacks | |
JP7003025B2 (ja) | 計算量評価装置、計算量評価方法及び計算量評価プログラム | |
JP6618875B2 (ja) | 評価装置、評価方法及び評価プログラム | |
US20100115230A1 (en) | Hash functions using recurrency and arithmetic | |
US9537740B2 (en) | Monitoring device usage | |
KR101925614B1 (ko) | 타원곡선 암호화 시스템에서의 스칼라 곱셈 처리 방법 및 타원곡선 암호화 시스템 | |
Maitin-Shepard | Optimal software-implemented Itoh–Tsujii inversion for F _ 2^ m F 2 m | |
US9998347B2 (en) | Monitoring device usage | |
CN116132046A (zh) | 格基加密算法解密错误率的估算方法、介质、设备及系统 | |
JP6203313B2 (ja) | 特徴選択装置、特徴選択方法およびプログラム | |
Valois et al. | Performance of password guessing enumerators under cracking conditions | |
Orlov et al. | Approach to estimation of performance measures for SIP server model with batch arrivals | |
US11121861B2 (en) | Method and device to produce a secure hash value | |
JP7472998B2 (ja) | パラメータ推定装置、秘密パラメータ推定システム、秘密計算装置、それらの方法、およびプログラム | |
US20220166618A1 (en) | Decryption of Encrypted Data Missing a Private Key | |
JP7402191B2 (ja) | 乗算装置、乗算方法及び乗算プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201201 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211125 |
|
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: 20211130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211228 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7003025 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |