任意精度で計算してみた。
raspberry piをクラスタ計算機として使ってみるために円周率計算のプログラムを作成していたところ、数学に現れる定数の計算速度を競うコンテストサイト(?)Constantを発見しました。 せっかくだし任意精度計算のためのプログラムから作ってみるか、ということで色々やってみたことを書きます。と
raspberry piをクラスタ計算機として使ってみるために円周率計算のプログラムを作成していたところ、数学に現れる定数の計算速度を競うコンテストサイト(?)Constantを発見しました。 せっかくだし任意精度計算のためのプログラムから作ってみるか、ということで色々やってみたことを書きます。と
TL;DRXcodeをインストールし、コマンドラインツールの参照先を変更する。発生したエラーについて私の環境では、cargo run初回実行時に以下のようなエラーが発生し、rugのインストールが失敗しました。 checking for sysctlbyname..
今回はMPIを用いてChudnovskyの公式による円周率計算をマルチノード並列化できるようにしていきます。今回使用するのはMPI bindings for Rustです。(rustネイティブな分散並列用のクレートを知らないので、馴染みのあるMPIを選択しました。)実行環境は以下のとおりです。
現在最速とされている、Chudnovskyの公式を用いて円周率を計算します。言語はRustです。実装にあたって、 こちらの記事を参考にしました。詳細な解説はリンク先をご覧ください。最終的な目標は分散システムでの並列計算ですが、本記事ではまず単一ノードでのスレッド並列を実装します。実装
せっかくRaspberry Piクラスタを構築したので、並列計算を試してみたい、ということで円周率を計算してみることにしました。ただC++でプログラムを書いても面白くないので、以前から関心があったRustの学習を兼ねて実装してみました。Rust環境構築Rustのインストール