Cygwin + MinGW + GCC 相談室 Part 8 (987レス)
Cygwin + MinGW + GCC 相談室 Part 8 http://mevius.5ch.net/test/read.cgi/tech/1411399211/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
560: デフォルトの名無しさん [] 2019/08/24(土) 17:48:35.57 ID:u2q8uNB0 DLLよりstaticが速いとか都市伝説 http://mevius.5ch.net/test/read.cgi/tech/1411399211/560
561: デフォルトの名無しさん [sage] 2019/08/25(日) 16:54:37.16 ID:z6AAmiat >>559 -O3はコードの最適化を3レベル(あるいはタイプ3)で行う 実際に何を行っているかはコンパイランの説明を読まないと分からない -mtune=skylakeはコードをIntel CPUのSkyLakeアーキテクチャで最適な形にする どちらも記述したコードを実行形式にするときに最適化を行うオプションなので、 非常に大きなコードを書いた際や似たような処理を繰り返すコードを書いている際に 指定すると早くなる事もある(ライブラリに含まれるコードは最適化されない) >>560
都市伝説ってこともない 関数A、B、C、Dが含まれるライブラリlibhogeが存在する場合、自分のプログラムで 関数BとDだけを使っていると、ダイナミックリンクの場合自分のプログラムの実行 コードに加えてすべての関数が含まれるlibhoge.dll全体を読み込む必要がある スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した 関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが 早くなる可能性は高くなる ただし、実際問題としてはdllを一回読み込めばキャッシュからなくならない限り読み込
む 必要がない+Windowsのプログラミングで使用するライブラリで基本的なものは通常 システムを起動した時点でキャッシュされていることに加えて、Windowsでプログラムを 動かすために必要な関数郡はかなりの量になる事が多いのでスタティックにリンクすると すでにキャッシュされている関数郡を使わずに、必要な関数郡を含んだ大きなコードを 読み込む必要があるのでスタティックリンクの方が起動が遅くなるって本末転倒な事態が 発生することもある MinGWの場合にはWindows一般では使わないライブラリを使用するので1回目の 起動時には必要なdllを読
み込むよりは、必要な関数のみをリンクしたスタティックな 状態の方が早い場合があるかもってこと http://mevius.5ch.net/test/read.cgi/tech/1411399211/561
562: デフォルトの名無しさん [sage] 2019/08/25(日) 19:02:38.36 ID:7s5pz20M もっと短く http://mevius.5ch.net/test/read.cgi/tech/1411399211/562
563: デフォルトの名無しさん [sage] 2019/08/25(日) 23:51:01.48 ID:V1f8d4H1 >>561 ということは--static -O3 -mtune=skylakeでビルドすれば起動が早くなるかもということですか 時間があるときに試したいと思いますm(_ _)m http://mevius.5ch.net/test/read.cgi/tech/1411399211/563
564: デフォルトの名無しさん [sage] 2019/08/26(月) 01:28:47.93 ID:K2zp8I6+ やっぱり名前解決の問題が大きいんすよ ライブラリの読み込みだけでは説明できない http://mevius.5ch.net/test/read.cgi/tech/1411399211/564
565: デフォルトの名無しさん [] 2019/08/26(月) 14:11:24.03 ID:T0vtMl8v >スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した >関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが これ関数単位でソース分けてあって 一関数が一objになってる場合だけだよな http://mevius.5ch.net/test/read.cgi/tech/1411399211/565
566: デフォルトの名無しさん [] 2019/08/26(月) 14:11:24.09 ID:T0vtMl8v >スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した >関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが これ関数単位でソース分けてあって 一関数が一objになってる場合だけだよな http://mevius.5ch.net/test/read.cgi/tech/1411399211/566
567: デフォルトの名無しさん [sage] 2019/08/26(月) 17:43:39.53 ID:eYWa871J dll読み込みってそんなに重いかな? なんか別のところで時間がかかっていそうな感じ。 http://mevius.5ch.net/test/read.cgi/tech/1411399211/567
568: デフォルトの名無しさん [sage] 2019/08/26(月) 21:44:29.54 ID:CEMf0Y7L >>565-566 MinGWの場合はそうかな。確かMinGWでは--gc-sectionsが効かなかったかと。 LTOで未使用関数が除去されるかもしれないけどバグが多いので試してない。 http://mevius.5ch.net/test/read.cgi/tech/1411399211/568
569: デフォルトの名無しさん [sage] 2019/08/27(火) 05:30:30.81 ID:FSIINwco >>563 でビルドしてみました 様子見します -O3は、前にビルドしたときにプログラムがうまく動作しないことがあったんですよね -O0にすると正常に動作したんですけど http://mevius.5ch.net/test/read.cgi/tech/1411399211/569
570: デフォルトの名無しさん [] 2019/08/27(火) 09:41:49.02 ID:NZJyfwBK -O3に完璧を求める方が可笑しい http://mevius.5ch.net/test/read.cgi/tech/1411399211/570
571: デフォルトの名無しさん [sage] 2019/08/27(火) 11:08:45.95 ID:NDEdv6OD そこで-Ofastですよ http://mevius.5ch.net/test/read.cgi/tech/1411399211/571
572: デフォルトの名無しさん [sage] 2019/08/27(火) 12:32:02.21 ID:j4wzaSFP -O3と-O0で挙動が違うのは、不定の値を使っているとか、 未規定の動作に依存しているとか、そういう系だぞ まれにコンパイラのバグということもあるが大抵てめーが悪い http://mevius.5ch.net/test/read.cgi/tech/1411399211/572
573: デフォルトの名無しさん [] 2019/08/28(水) 17:10:08.53 ID:w9RtsrXP VCで造られたdllをmingwのgccで使いたいです hoge.dll と hoge.lib は有るのですが libhoge.a がありません あと hoge.c とかのソースファイルもありません hoge.def は hoge.dll から作れるのですが hoge.lib から libhoge.a を作るのはどうすればよかったか思い出せません http://mevius.5ch.net/test/read.cgi/tech/1411399211/573
574: デフォルトの名無しさん [] 2019/08/28(水) 17:25:07.66 ID:iAy2zRVx https://stackoverflow.com/questions/8683046/compatibility-of-dll-a-lib-def-between-visualstudio-and-gcc dlltool.exe -m i386:x86-64 -d libhoge.def -D hoge.dll -l libhoge.a dlltool.exe -m i386 -d libhoge.def -D hoge.dll -l libhoge.a しらんけど http://mevius.5ch.net/test/read.cgi/tech/1411399211/574
575: デフォルトの名無しさん [sage] 2019/08/28(水) 17:45:16.06 ID:4qorfKL6 実際parallelstlをコンパイルするのはVCの方が楽だしな これを.aに変換したいと思っていたのでありがたいです http://mevius.5ch.net/test/read.cgi/tech/1411399211/575
576: デフォルトの名無しさん [sage] 2019/09/03(火) 16:24:26.27 ID:fy59PR5b 9.2.0 Rev2 でPCHのエラーが出なくなった。 http://mevius.5ch.net/test/read.cgi/tech/1411399211/576
577: デフォルトの名無しさん [] 2019/09/13(金) 12:46:20.65 ID:wKEqF87n 本物のWInネイティブアプリの起動はもっと速いのかもしれません。 MinGW+MSYS2がCygwinより速い理由が釈然としませんが、 forkがCygwinのものまんまよりは多少軽量だったりするんだろうか https://twitter.com/nullpo_head/status/905032098506915840 https://twitter.com/5chan_nel (5ch newer account) http://mevius.5ch.net/test/read.cgi/tech/1411399211/577
578: デフォルトの名無しさん [] 2019/09/13(金) 12:48:07.35 ID:wKEqF87n ビルド環境のまとめ http://i.loveruby.net/ja/rhg/cd/buildenv.png http://i.loveruby.net/ja/rhg/cd/win.html http://mevius.5ch.net/test/read.cgi/tech/1411399211/578
579: デフォルトの名無しさん [sage] 2019/09/13(金) 13:01:11.82 ID:hxTRiT39 mingwはその本物のネイティブとちゃうか http://mevius.5ch.net/test/read.cgi/tech/1411399211/579
580: デフォルトの名無しさん [] 2019/09/13(金) 15:13:51.93 ID:ud7Tmahn cygwin の fork = native じゃなくて emu mingw の fork = あるんか? http://mevius.5ch.net/test/read.cgi/tech/1411399211/580
581: デフォルトの名無しさん [sage] 2019/09/13(金) 16:40:00.05 ID:08rV0d8/ MinGW+MSYS2がCygwinより速い理由は Cygwinはたとえ遅くなろうとも完璧なエミュレートを目指してるのに対して MinGW+MSYS2は目指してないから http://mevius.5ch.net/test/read.cgi/tech/1411399211/581
582: デフォルトの名無しさん [sage] 2019/09/13(金) 18:56:41.57 ID:2jKM3FP9 MSYS2は、Windowsネイティブアプリを作るための環境です。 Windowsネイティブアプリを作りましょう。 http://mevius.5ch.net/test/read.cgi/tech/1411399211/582
583: デフォルトの名無しさん [sage] 2019/09/13(金) 19:47:41.41 ID:+NnovRbX >>581 どういうことなの… http://mevius.5ch.net/test/read.cgi/tech/1411399211/583
584: デフォルトの名無しさん [] 2019/09/14(土) 10:05:32.62 ID:NwEptffo fork の歴史 (windows の fork 含む) https://www.eelsgo.com/cs-CZ/article/fork%20windows https://support.microsoft.com/ja-jp/help/190351/how-to-spawn-console-processes-with-redirected-standard-handles http://mevius.5ch.net/test/read.cgi/tech/1411399211/584
585: デフォルトの名無しさん [] 2019/09/14(土) 10:32:34.60 ID:NwEptffo なぜ今 fork が熱いのか https://mao.5ch.net/test/read.cgi/linux/1560665525/ http://mevius.5ch.net/test/read.cgi/tech/1411399211/585
586: デフォルトの名無しさん [] 2019/09/14(土) 11:49:59.95 ID:mIZ3m5oP http://www.kobore.net/diary_techno/?date=20180221 http://www.kobore.net/diary_techno/?date=0214 https://books.google.co.jp/books?id=NdmjDwAAQBAJ&pg=PT819&dq=NTDLL+RtlCloneUserProcess http://mevius.5ch.net/test/read.cgi/tech/1411399211/586
587: デフォルトの名無しさん [] 2019/09/15(日) 06:58:43.73 ID:zbVYZgVB >>584 むりぽ https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/afdf1b68-1f3e-47f5-94cf-51e397afe073/cygwin-fork-and-rtlcloneuserprocess?forum=windowsgeneraldevelopmentissues http://mevius.5ch.net/test/read.cgi/tech/1411399211/587
588: デフォルトの名無しさん [sage] 2019/10/02(水) 07:41:31.63 ID:WxowMW3Q GMPって真面目にソースtarからビルドするしかないの? ビルド済みのバイナリですぐ使えるのがあれば欲しいんだけどcygwinのインストーラでチェック入れてもダメで、なんじゃこりゃってなってるんだけど。 http://mevius.5ch.net/test/read.cgi/tech/1411399211/588
589: デフォルトの名無しさん [] 2019/10/02(水) 11:20:07.41 ID:55+aQRnY https://stackoverflow.com/questions/19192963/are-there-any-recent-gmp-windows-binary-distributions http://7shi.hateblo.jp/entry/2012/05/07/034105 https://cs.nyu.edu/~exact/core/gmp/index.html http://mevius.5ch.net/test/read.cgi/tech/1411399211/589
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 398 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.016s