Linuxのネイティブと仮想環境での計算速度(直接法MUMPS)2025年08月15日 18:42

補足説明付きの資料はElmerのフォーラムにアップロードしました
有限要素法で使用される解法は、大きく分けて、反復法と直接法があります。

CyberNetに概要が記載されていたので、紹介します。
反復法とは、初期推定値を計算し、収束するまで反復する処理によって解を得る方法のことです。このような方法を用いるソルバーを、反復法ソルバー(iterative solver)と呼びます。...良条件のマトリクスでは、直接法ソルバーよりも計算時間が短くなることが期待できます。一方、悪条件のマトリクス(不安定なモデルや、ビーム/シェル構造など)では直接法ソルバーの利用が適切です。
https://www.cybernet.co.jp/ansys/learning/glossary/hanpukuhou/

直接法とは、連立線形方程式の直接消去法に基づく数値計算手法です。
直接法で解析する場合、反復法に比べてディスクまたはメモリー容量の消費が大きくなります。...直接法では、精度が低下することはありますが悪条件のマトリクスでも解の生成が困難になりません。直接法では方程式に特異性がない場合、常に解が得られます。
https://www.cybernet.co.jp/ansys/learning/glossary/chokusetsuhou/index.html

現在は、RAM、ストレージが大容量化しているので、直接法は中小規模の解析で使用されることが増えています。
英文ですが、2件の参考資料を紹介します。

Elmerの資料:下側にあるフローチャートがわかりやすい
https://github.com/ElmerCSC/elmer-linsys

SimScaleの資料:最後のSummarizing FEM Solversがわかりやすい
https://www.simscale.com/blog/how-to-choose-solvers-for-fem/

Elmerにより丸棒のネジリ問題の解析を直接法のMUMPSにより、各種条件で計算速を比較しました。
VirtualVBox、WSL2の仮想環境であっても、実機の80%~90%の速度がでました。
Linux環境において、nvidiaのカードの機能を使う場合(WSL上のcudaではUbuntuのみ対応)、RAM・CPUを最大限活用する場合には、デュアルブートが魅力的です。

なお、以下のElmerフォーラムに計算速度の表に加えて、計算モデル、計算結果の変位・応力図などを含めて投稿しました。
https://www.elmerfem.org/forum/viewtopic.php?t=8756

Red Hat Enterprise Linux 9互換OSでのElmerコンパイル2025年07月14日 20:20

GNOMEのメニュー
Red Hat Enterprise Linux 9互換のAlmaLinux-9(WSL2)、RockyLinux-9(Windowsとデュアルブートのネイティブ)の環境において、Elmerのコンパイル(ElmerGUI, MUMPS, MMG, Lua)に成功しました。

使用した手順やスクリプトをElmer本家のフォーラムに投稿しました。
https://www.elmerfem.org/forum/viewtopic.php?t=8667

スクリプトだけで操作ができる内容ですので、文章を書かずにコード主体にしました。
英文を書く量が少ないので、英語が苦手な方でも負担が少ないと思います。

-----------------------------------
WSL2のデスクトップ画面のない環境で使うことが多かったですが、デュアルブートのGNOME環境で操作するのも新鮮さがあってよかった。

オープンCAEソフトの計算速度の比較2025年07月05日 21:16

3D四面体メッシュ 758208個(一次要素)の条件で熱伝導解析 or 静電場解析を行って、計算時間を比較しました。基本的にメッシュを4分割して、4並列のMUMPS解法(BLASの性能がそのまま出る条件)としました。
FrontISTRが最も速く Linuxの実環境で3.04s、 フォールバックしないVirtualBox、WSL2、Hyper-Vで3.4s前後です。
次は、blasとlapackをintel-mklとしたElmerです。Linuxの実環境で7.0s、フォールバックしないVirtualBox、WSL2で7.5〜7.8s。

比較したソフトは、以下の通りです
FrontISTR https://www.frontistr.com/features/
Elmer https://www.elmerfem.org/blog/
Salome-meca https://code-aster.org/spip.php?article146
PrePoMax https://prepomax.fs.um.si/
Onelab https://onelab.info/

PrePoMaxもPardiso解法の効果により比較的高速です。
OneLabやSalome-mecaは、計算速度の面ではあまり魅力はありません。
しかし、OneLabは、テンプレートなどの雛形があれば設定が最も簡単です。
Salome-mecaは、長い実績のあるソフトなので解析結果の比較用として活用できます。

Windowsの日本語入力(IME)の不具合2025年06月30日 21:12

WordからMS-IMEの日本語入力をするときに、Word画面から離れた場所でIMEのWindowが開くときがあります。
直ぐにWordに戻らないときがあるので、batファイルを作りました。

効果のあった方法:タスクマネージャーからCTFローダーを終了すると、Wordに戻りました。

対策:以下のbatファイルを作り、デスクトップに置き、実行する。

IME-reset.bat
taskkill /IM ctfmon.exe /F
start ctfmon.exe

不具合があったときに、Copilotに聞くと、AIサポートみたいな回答が得られました。

マイクロソフト以外のPC-Linux環境は難しい2025年06月12日 17:15

VMwareインストール時のメッセージ
Pythonによる行列転置(モジュールのインポートなし)、Scilabによる行列乗算(Intel-MKL, OpenBLAS)、FrontISTRのTutorial 2(Intel MKLとMPI、4並列)により動作速度を比較して、WSLやHyper-Vが高速との結果が得られました。

しかし、冷静に考えると、フェアな評価ではありません。
マイクロソフトがOSの基盤部分を有利に使用しているのが影響していると感じました。

VirtualBoxは、動作が不安定になることはないですが、WSL・Hyper-Vを使用している場合はフォールバックモードとなるようです(VirtualBoxを単独インストールすると、openblasがHASWELL:avx2と認識するが、WSL・Hyper-V機能をオンにすると低速のNehalem:SSEとなります)。

以下、私のXへのリンク
https://x.com/HD_mount_Music/status/1932062960182251806

VMwareは、買収される前から個人向け製品には力をいれていないように感じていました(SSDやIntel 12世代以降のcoreシリーズPコア・Eコアへの対応、など)。
個人向けは使用環境は混沌としていて、保守サービスの手間はかかるが、高価すぎると売れないので、利益がでなかった?
VirtualBOXよりもPC環境がシビアなようです。デバイスセキュリティのコア分離などをオフにする必要があるようです。
端末の入力が遅くなったと思ったら、マイクロソフトの仮想化が復活していることがありました。
https://zenn.dev/inada/articles/3ae416fe297d17

「Windows 95」とWebブラウザ「Internet Explorer(IE)」抱合せ販売で問題になった独占し、有利な立場を利用する体質を思い出しました。

「小学生に自治体配備の学習用端末、Windows激減 コスパが決め手?ChromeとiPadがシェア分け合う」という記事があるので、2000年前後とは戦略を変える必要があると思います。
https://www.chunichi.co.jp/article/1073065