ふと、下記が目に入ったときに、利用されていた y-cruncher というツールを使ってみたいなぁと思いました。このツールは、http://www.numberworld.org/y-cruncher/ にあるわけですが、2010年8月の 5兆桁を皮切りに、2019年3月にはGoogle社員の方が 31.4兆を、同Google社員の方が2022年6月には100兆超えをして、そして2024年2月には105兆桁を実現したようですね。
- 2019年3月 Google Japan Blog: 世界記録を破る“パイ”の作り方(Google Japan Blog)
- 2022年6月 ついに円周率の100兆桁目が判明、Google Cloudの研究者が約5カ月かけて追求(GIGAZINE)
- 2024年2月 円周率が105兆桁まで明らかに、所要時間は70日弱(GIGAZINE)
WindowsとLinux OSのみサポートしているので、ちょっと試すぐらいなら Windows OS で十分かなと思います。で、日本語での使い方を探しますが、意外と探せない。まぁ http://www.numberworld.org/y-cruncher/ をみたら一目瞭然でしょとは思いますが、そこはまぁ、見てもわからない人でも試せる使い方あったほうが楽しいじゃないですか。
ということで試してみることにしました。
なお、M1 MAX MacBookPro の macOS Sonoma 14.5 上に仮想環境 Parallels Desktop をインストールして、そこに Windows11 OS(英語版)をインストールして試しているので、パフォーマンスは悪いかなぁとは思います。体験できたらよし!なので気にしないでおきましょう。
STEP 1. ツールのダウンロードと ZIPファイルの展開
http://www.numberworld.org/y-cruncher/ よりダウンロードして、ダウンロードしたZIP圧縮ファイルを展開します(ファイルで右クリックして「すべてを展開」を選択)。
ここについての詳しい説明は割愛しておきます。
STEP 2. ツールを起動する
下記のプログラムを開きます。
すると、下記のようなコマンドプロンプトで起動します。
*途中で処理を強制的に終了したい場合には、Ctrl を押しながら cボタンを押してください(Ctrl + c)。これで処理が強制終了してコマンドプロンプトも閉じます。
*途中で処理を強制的に終了したい場合には、Ctrl を押しながら cボタンを押してください(Ctrl + c)。これで処理が強制終了してコマンドプロンプトも閉じます。
さて基本的には、数字を入力して、Enter を押すことで次に進みます。
まずはこのツールが端末情報をどのように認識しているかみてみましょう。
1 を入力して Enterを押してみてください。
下記のように、端末で利用可能な CPU のコア数やメモリなどの情報がでてきます。
私の場合には仮想環境に対して 8GB のメモリ(うち4GBをグラフィックメモリ)を割り当ててます。
確認できたら、Ctrl を押しながら cボタンを押してください(Ctrl + c)。これで処理が強制終了させて、再度 y-cruncher を起動してみましょう。
STEP 3. 円周率を求めてみる
下記において、0 を入力して Enterを押します。
下記のようにシングルスレッドかマルチスレッドがでてきますので、とりあえずマルチスレッドである 1 を入力して Enterを押します。
そして、最初は軽めにするということで 2500万桁を求める 1 を入力して Enterを押してみましょう。下記のように計算がスタートします。
さすがにこれでは味気なさすぎます。
次は、10億桁をやってみましょう! 下記にあるように目安として必要なメモリ情報が書かれてます。下記の選択になったら 6を押して Enterを押します。
*なお 7 を選択すると、メモリ不足と怒られました。さすがに明らかにメモリ不足だと動作させないようにしているのでしょう。手持ちは 64GBの物理メモリがあるので、やろうと思えば仮想環境に50GBほど割り当てることができますから、9 まではいけそうですね (^^;
さすがに数秒とはいかず、7分少し掛かりました。
とまぁ、このように円周率を10億桁求めてみたぜ!ぐらいなら、まぁメモリ 8GBぐらい搭載している端末はわりと一般的ですから、誰でもできるんじゃないでしょうか。
2024年6月10日 @kimipooh
0 件のコメント:
コメントを投稿