複数多項式二次篩

12.28 川原 未鈴
目次
1、実験①
2、実験②
3、ガウスの消去法について
4、今後
実験環境
 ハードウェア
AMD Phenom(tm) Ⅱ X6 1090T
Processor (3.2GHz 6cores)
Memory: 8GB
Disk:
HDD 2TB, SDD 64GB
CPU:
 システム
Server: Windows Server 2008 R2 Standard
Emulator: VMware(R) Player Ver.3.1.3
Linux OS: CentOS 5.5
(CPU: 4cores, Memory: 2GB,
HDD: 200GB )
実験①
・NZMATHにある熊木さんのプログラムで実験
・50桁から60桁の合成数について実験
・それぞれの実験の対象となった合成数は
ほぼ同じ桁数の素数2つの積であるような数とし
た
・各桁の10個の合成数に対し,平均時間を算出
実験結果
50桁の実験は終了したが、出てきた時間がマイナス
になっているものがあり、正確なタイムはわからない。
マイナスになった原因はArithのCPUTimeが大体40
00秒までは正確に測れるがそれ以上は正確には測れ
ないため。
Komeyaも同じ性能。
2、実験②
・NZMATHにある熊木さんのプログラムで実験
・10、15、20、25、30、35、40桁の合成数につ
いて実験
・それぞれの実験の対象となった合成数は
ほぼ同じ桁数の素数2つの積であるような数とした
・過程の中を
(ⅰ)係数を決める(ⅱ)篩う
(ⅲ)𝐵 − 𝑠𝑚𝑜𝑜𝑡ℎな𝑄(𝑥)を得る(=(ⅰ)+(ⅱ))
(ⅳ)ガウスの消去法(ⅴ)total に分けてそれぞれの時間を
出す
・各桁の10個の合成数に対し,それぞれの平均時間を算出
実験結果
10桁
15桁
Time of deciding
coefficient
0.001
0.00625
Sieving Time
0.008
0.0475
0.148 1.00875 3.7425 17.8092 80.105
0.009
0.05375
0.21 1.25125 4.4825 23.5669 99.8558
0.002
0.00375
0.052 0.28875 1.6825 10.0492 85.3233
0.019
0.0725
Total time of
getting enough
smooth numbers
Time of Gaussian
Elimination
Total time
20桁
0.048
0.358
25桁
0.2425
1.9825
30桁
35桁
40桁
0.74 5.74769 19.7342
8.34
43.08 242.986
300
Time of deciding coefficient
Sieving Time
Total time of getting enough smooth
numbers
Time of Gaussian Elimination
250
・35桁まではガウスの消去法よ
り篩いのほうに時間がかかってい
る
200
150
・Total Timeは5桁ごと上がるご
とに大体5~6倍増えている →
50桁では約6000秒?
100
50
0
0
-50
2
4
6
8
・係数決め、篩い、ガウスの消去
法以外のところでも桁数が上がる
ごとに時間がかかっている
2、ガウスの消去法について
・先生からガウスの消去法の改良を提案されたが、
codeを見たら先生の言っていた通りになっていた
3、今後
どこかを改良する
or
どのくらい使えるのかを詳しく調べる
or
篩いの範囲について考える