Cygwin + MinGW + GCC 相談室 Part 8 (987レス)
Cygwin + MinGW + GCC 相談室 Part 8 http://mevius.5ch.net/test/read.cgi/tech/1411399211/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
714: デフォルトの名無しさん [sage] 2020/05/03(日) 23:40:13.01 ID:sXSeyux8 >>712 forkが遅いのはわかってるけど、 このコードでforkなんて大量にはしないだろ? time bash -c 'for i in {1..1000000}; do :; done' http://mevius.5ch.net/test/read.cgi/tech/1411399211/714
715: デフォルトの名無しさん [] 2020/05/04(月) 02:27:10.75 ID:R/PLl+Gn 元々、bash が、ループ向きではないから、dash などを使う for は遅いから、while などを使う。 実行時間中のほとんどが、フォークの時間 ループは、awk, perl, ruby などでは、0.1 秒も掛からない。 単一プロセス中の処理だから http://mevius.5ch.net/test/read.cgi/tech/1411399211/715
716: デフォルトの名無しさん [sage] 2020/05/04(月) 03:06:12.15 ID:szliIti6 あ、dashの結果書くの忘れてた。dashは速いから数を10倍にしてる 傾向は一緒。ただのループなのに2倍ぐらいの差が出てしまう WSL1 $ time dash -c 'for i in $(seq 10000000); do :; done' real 0m4.480s user 0m2.875s sys 0m2.047s Cygwin $ time dash -c 'for i in $(seq 10000000); do :; done' real 0m7.598s user 0m6.531s sys 0m1.296s MinGW64 $ time dash -c 'for i in $(seq 10000000); do :; done' real 0m7.905s user 0m6.905s sys 0m1.155s http://mevius.5ch.net/test/read.cgi/tech/1411399211/716
717: デフォルトの名無しさん [sage] 2020/05/04(月) 03:06:42.72 ID:szliIti6 >>715 どこでフォークしてるというの? http://mevius.5ch.net/test/read.cgi/tech/1411399211/717
718: デフォルトの名無しさん [sage] 2020/05/04(月) 03:16:08.18 ID:szliIti6 awkは更に速いから、更に10倍にしてる。これなら理解できるな。 CygwinとMinGW64がWSL1より少し遅いのは起動時のパフォーマンスの差だろう ってことはシェルスクリプトだと、なにか遅くなる処理をやってるってことか 整数型じゃないとか? WSL1 $ time awk 'BEGIN{i=0;for(i=0;i<100000000;i++);}' real 0m4.121s user 0m4.109s sys 0m0.016s Cygwin time awk 'BEGIN{i=0;for(i=0;i<100000000;i++);}' real 0m4.978s user 0m4.875s sys 0m0.031s MinGW64 $ time awk 'BEGIN{i=0;for(i=0;i<100000000;i++);}' real 0m4.586s user 0m4.562s sys 0m0.015s http://mevius.5ch.net/test/read.cgi/tech/1411399211/718
719: 715 [sage] 2020/05/04(月) 04:54:04.28 ID:R/PLl+Gn for がコマンドだから、フォークされるのだろ。 だから、シェルスクリプトでは、while を使えと言われる bash よりも、dash を使う。 それ以上は、awk, perl, ruby http://mevius.5ch.net/test/read.cgi/tech/1411399211/719
720: デフォルトの名無しさん [sage] 2020/05/04(月) 05:14:01.45 ID:szliIti6 whileを使うと遅いからforに変えたのですが? forを使った>>716とループ回数は同じ WSL1 $ time dash -c 'for i in $(seq 10000000); do :; done' real 0m4.480s user 0m2.875s sys 0m2.047s $ time dash -c 'i=0; while [ $i -lt 10000000 ]; do i=$((i+1)); done' real 0m15.811s user 0m15.766s sys 0m0.016s Cygwin $ time dash -c 'for i in $(seq 10000000); do :; done' real 0m7.598s user 0m6.531s sys 0m1.296s $ time dash -c 'i=0; while [ $i -lt 10000000 ]; do i=$((i+1)); done' real 0m26.173s user 0m26.109s sys 0m0.031s MinGWはCygwinと大差ないので省略 http://mevius.5ch.net/test/read.cgi/tech/1411399211/720
721: 715 [sage] 2020/05/04(月) 07:28:52.02 ID:R/PLl+Gn 8年前のシェルスクリプトの本には、 10万行の処理で、 for : 9分 while : 5秒 awk/perl : 0.1秒 http://mevius.5ch.net/test/read.cgi/tech/1411399211/721
722: 715 [sage] 2020/05/04(月) 07:33:20.66 ID:R/PLl+Gn $((i+1)) という部分が、コマンドだから遅いのだろう ほとんどが、そのフォーク時間 http://mevius.5ch.net/test/read.cgi/tech/1411399211/722
723: デフォルトの名無しさん [sage] 2020/05/04(月) 07:37:26.49 ID:iIYyf/rd せいぜいbashのサブコマンドで、forkしとらん気がする ただマルチスレッドは使ってるかも知れんし、その際のメモリ操作はなんか性能の問題があった気はする http://mevius.5ch.net/test/read.cgi/tech/1411399211/723
724: デフォルトの名無しさん [sage] 2020/05/04(月) 07:49:25.72 ID:szliIti6 >>722 コマンドじゃないよ http://mevius.5ch.net/test/read.cgi/tech/1411399211/724
725: デフォルトの名無しさん [sage] 2020/05/04(月) 18:39:29.61 ID:EvcVp/Zr $(())内でiを更新できることから分かるようにforkしていないし、少なくともbashとdashはシングルスレッド linux上で ltrace -f bash -c 'for i in {1..1000000}; do :; done' したら、mallocを何度も呼んでいるようだから、ヒープ操作関係が遅い可能性はある 実際、linux上でもmallocの実装をglibcのからjemallocに切り替えたら上のループが2割近く速くなった http://mevius.5ch.net/test/read.cgi/tech/1411399211/725
726: デフォルトの名無しさん [sage] 2020/05/06(水) 17:53:36.31 ID:cyb3WwF6 wsl2は仮想マシンになるのか windowsバイナリ実行できるのかな http://mevius.5ch.net/test/read.cgi/tech/1411399211/726
727: デフォルトの名無しさん [] 2020/05/06(水) 19:33:37.07 ID:DK8FW5YB 以下のパッケージ、入れようとすると対象が見つからないと出るんだけど・・・ dlfcn libpng tools-git jq clang http://mevius.5ch.net/test/read.cgi/tech/1411399211/727
728: デフォルトの名無しさん [sage] 2020/05/06(水) 20:42:44.30 ID:Fjn1hDTG WSL, Ubuntu 18.04 には、jq もあるけど apt-cache show jq メンテナー : 陳昌倬 http://mevius.5ch.net/test/read.cgi/tech/1411399211/728
729: デフォルトの名無しさん [sage] 2020/05/06(水) 22:45:14.75 ID:UqyV1t7H >>727 ないんだろ?Cygwinは独自のディストリ Windowsに移植できたもの、自分が関心があるパッケージしか 登録されていない http://mevius.5ch.net/test/read.cgi/tech/1411399211/729
730: デフォルトの名無しさん [] 2020/05/11(月) 23:46:54.34 ID:77t5bXxM GCC 10.1まだですか http://mevius.5ch.net/test/read.cgi/tech/1411399211/730
731: デフォルトの名無しさん [sage] 2020/05/12(火) 00:26:10.57 ID:6XbzcR0E ついにGCCのバージョンも10まできたか・・ http://mevius.5ch.net/test/read.cgi/tech/1411399211/731
732: デフォルトの名無しさん [sage] 2020/05/12(火) 01:18:10.18 ID:yS+J4vmz GCCじゅにや http://mevius.5ch.net/test/read.cgi/tech/1411399211/732
733: デフォルトの名無しさん [sage] 2020/05/12(火) 07:09:28.82 ID:zxRznJOz カバにダンスをさせるのは あまり楽しくないそうだ http://mevius.5ch.net/test/read.cgi/tech/1411399211/733
734: デフォルトの名無しさん [sage] 2020/05/14(木) 00:17:24.56 ID:rBW8Yffw MSYS2でWin32アプリ作ってみようとチャレンジ中 http://mevius.5ch.net/test/read.cgi/tech/1411399211/734
735: デフォルトの名無しさん [] 2020/05/14(木) 10:05:25.88 ID:tvxDWcUo きばれ tdm-gcc (64) http://mevius.5ch.net/test/read.cgi/tech/1411399211/735
736: デフォルトの名無しさん [] 2020/05/14(木) 10:09:03.48 ID:tvxDWcUo https://jmeubank.github.io/tdm-gcc/articles/2020-03/9.2.0-release http://mevius.5ch.net/test/read.cgi/tech/1411399211/736
737: デフォルトの名無しさん [sage] 2020/05/14(木) 10:17:17.31 ID:HbCKurWZ Ruby はやめとけ http://mevius.5ch.net/test/read.cgi/tech/1411399211/737
738: デフォルトの名無しさん [] 2020/05/22(金) 14:26:50.74 ID:DztlkuPK msys2をサイレントインストールするにはどうしたら良いですか? http://mevius.5ch.net/test/read.cgi/tech/1411399211/738
739: デフォルトの名無しさん [sage] 2020/05/28(木) 04:57:53.37 WSL2で 9PFs 経由でWin32側のファイルを読み込むの、なんでこんな遅いの? http://mevius.5ch.net/test/read.cgi/tech/1411399211/739
740: デフォルトの名無しさん [sage] 2020/05/28(木) 05:10:55.81 ID:X/662gLn 仮想マシン経由だからでは? だからWSL1も引き続き開発してるわけで http://mevius.5ch.net/test/read.cgi/tech/1411399211/740
741: デフォルトの名無しさん [] 2020/05/29(金) 02:44:46.36 ID:o1TI0Bdi そろそろ更新してくれ http://mevius.5ch.net/test/read.cgi/tech/1411399211/741
742: デフォルトの名無しさん [] 2020/06/23(火) 03:13:01.66 ID:1wsAa41I 新版まだですか〜 http://mevius.5ch.net/test/read.cgi/tech/1411399211/742
743: デフォルトの名無しさん [sage] 2020/06/23(火) 04:40:31.79 ID:TI7IUkkN あきらめれ。Cygwinはもうお役御免 http://mevius.5ch.net/test/read.cgi/tech/1411399211/743
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 244 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.015s