操作
202556時点のまとめ » 履歴 » リビジョン 11
« 前 |
リビジョン 11/14
(差分)
| 次 »
開発 次郎, 2025/05/06 07:12
2025/5/6時点のまとめ¶
結果まとめ¶
- cpp_bin_float_100型とlong double型ではどれくらいの処理時間差があるのか?
- (結果)2~4桁は違う(1/50~1/2000)
- MSYS2/MinGW64環境でパッケージはビルドできるのか?
- GCC 4.8.5
- (答え)4.8.2が最も古いのでPKGBUILDは不可。ただしSOURCEFORGE/x86_64-4.8.5-release-win32-sjlj-rt_v4-rev0.7zが使える
- boost
- (答え)mingw64/mingw-w64-x86_64-boost があるからパッケージ化できるはず。PKGBUILDがある場合
- log4cpp
- (答え)ucrt64/mingw-w64-ucrt-x86_64-log4cpp はあるがMinGWパッケージになるのか?不明
- PROJ4
- (答え)mingw64/mingw-w64-x86_64-proj があるからパッケージ化できるはず。PKGBUILDがある場合
- GCC 4.8.5
詳細¶
cpp_bin_float_100型とlong double型 処理速度比較¶
- MSYS/MinGW(Windows)
- 比較表(単位はCPUクロック・カウント)
項目 double long double cpp_bin_float_100 cpp_bin_float_100/long double 変数サイズ 8 16 80 sin 284 274 613004 2237 cos 268 284 563428 1984 tan 224 292 612512 2098 pow 232 310 15891 51 sqrt 190 184 148743 808 サンプル 2355 4438 3526710 795
- 比較表(単位はCPUクロック・カウント)
- CentOS 7(WSL)
- 比較表(単位はn秒)
項目 double long double cpp_bin_float_100 変数サイズ 8 16 80 sin 100 100 91000 cos 100 100 92500 tan 100 100 185500 pow 0 100 10600 sqrt 0 100 12300 サンプル 700 1300 1046000
- 比較表(単位はn秒)
- Rocky9(Linux)
- 未計測
計測条件¶
- boost_1_66_0
- MinGWがサポートされているのは1_66_0から
- GCC 4.8.5
- 計測したホストPCのスペック
今回分かったこと¶
- 各パッケージをMinGW向けにソースからビルドしても、ほとんど失敗する
- たいていのパッケージはMinGWという環境をサポートしていないためだと思われる
- MinGWにはMINGW-pacakgesというのがあって、オリジナルソースファイルにパッチを充ててMinGW用のパッケージを作成することができる
- オリジナルソースからビルドしない方が良い
- この仕組みは、過去に所望のバージョンのPKGBUILD(Makefileみたいなもの)があることが前提
- 例えば、log4cppはもっとも古いもので1.1.4であるから、最新の1.1.5はパッケージ化することができない
- 例えば、log4cppはurt64向けPKGBUILDはあるが、mingw64向けPKGBUILDがない
- log4cppはVisual Studio 2022でビルドできない
- クローンを使っても静的ライブラリは作れるものの、動的ライブラリは作れない
- 使い続けていいのか?