distributed.netな日々:2023年10月

2023年10月23日:GIMPS 始めて3か月の所感

GIMPSを始めて3か月が経ちました。最初のうちは何が何だかのところも多かったのですが、日々Resultsなどを眺めているうちにある程度状況が把握できて来たと言いますか。まだまだ分からないこともたくさんあるんですけどね。ともあれ、3か月の現時点での思うところをいくつか書き出してみたいと思います。

まず一つ目は、計算に時間がかかること。まあこれはしょうがない部分もあります。メルセンヌ素数の計算は数字が大きくなるほど計算量が増えていきますから。プロジェクトの初期に探索していたころは比較的小さな値だったのに、今はどんどん大きくなっていってしまっていますからね。

実際、GIMPSが最初に発見したメルセンヌ素数は21,398,269-1でしたが、2018年に発見したのは282,589,933-1です。実に59倍。単純に計算量が59倍になるわけではないでしょうけれども、それでも計算量が増えるのは間違いない。この30年でCPUも爆裂に速くもなったんですが、計算対象のメルセンヌ数も大きくなったと。これはしょうがないですね。まあ気長にいきましょう。

次に思うのは、参加者が少ないこと。今日時点で過去に一度でも計算結果を送出したことのあるアカウントは41,079です。過去1年間に限ると2,727人。ちなみにdistributed.netのRC5-72では144,295が参加していて、昨日の参加者は1,670です。まあ、distributed.netについてはプロジェクト初期にバズったことで大量に人が流入したってのがあるわけなんですけどね。大半の人はやめてしまったけど、私のように今でも続けてる人もそれなりにいると。バズった時の母数が大きいから、こうして続けてる人も多いってことなのでしょうね。

まあこれは仕方がないというか、分散コンピューティングに限らずどんなプロジェクトでも人がなかなか集まらないってのはあるわけでして、むしろ人が集まったことがあるdistributed.netが異端なんだろうと思います。でも、そんなdistributed.netを経験した身としては寂しいですけどね。

GIMPSでは計算タイプに複数の種類があります。一番大事なのはリュカ-レーマー・テストでして、これはおそらくLLという計算タイプになります。そしてLLのダブルチェックがLL-D。TFとP-1は試し割らしく、要するに小さな素数で割り切れないか事前にチェックしてる感じでしょうかね。その他にもECMとかPRPとかいろいろあるんですが、正直どの計算タイプが何をやってるかよくわからない。ドキュメントに書いてあるのかな。ぼちぼち調べてみたいと思います。

最後に気になるのは、ランキングが上位500しか見れないこと。自分のランクはMyPageで見れるんですが、自分の近傍の他のユーザのランクは見えないんですよね。distributed.netでは全員のランクが見れたんですけどねぇ。ということでちょっと残念。

2023年10月26日:GIMPS の Tips を書きました。

GIMPSクライアントのtipsになります。

distributed.netについてはドキュメントを書いてくださっている人がたくさんいるので、クライアントの操作もある程度わかるのですが、GIMPS クライアントについてはあんまりそういうのが見つからないんですよね。ああ、私が日本語で情報を探してるからで、実は英語ならそれなりにドキュメントあるかもしれないのですが。ただ、母国語でドキュメントがあるってのはやっぱり利用者として助かるので、こんなのでもあるといいかなぁと思って書きました。間違いとかよりよい提案とかありましたら、お知らせいただけると助かります。

このドキュメントを書いていてようやく気が付いたんですが、GIMPS の場合は割り当ては exponent、つまり指数で行われるのですね。2p-1のpがそのまま割り当たると。他のプロジェクトではブロックとかワークユニットと呼んでるものが exponent であるということですねぇ。

そして exponent によって計算量は違うので、ランキングは GHz-Day で行われていると。なるほどなるほど。だいぶ GIMPS に対する理解が進んできた気がします(気のせいだと思うけど)。