Cygwin なんでも掲示板

一覧最新記事過去一覧 | 検索FAQアンテナHOME
(新規投稿・発言はできません)


スレッド

└◇368:
win200DualCPU環境下でのコンパイル [Free-Free] 05/09 13:26

 └◇371:Re:win200DualCPU環境下でのコンパイル [中島] 05/09
  └◇380:Re[2]:win200DualCPU環境下でのコンパイル [りう] 05/14
   └◇395:Re[3]:win200DualCPU環境下でのコンパイル [藤枝] 05/25 <


368● win200DualCPU環境下でのコンパイル[ Free-Free ] 2002 05/09 13:26
win200DualCPU環境下でのCプログラムのコンパイルに関する質問です。LinuxではDualCPU環境なら、コンパイルオプションによってコンパイルの速度をかなり上げることができると聞いておりますがwin2000の環境下でもこれは可能なのでしょうか。
可能であれば、その方法お教えてください。お願いします。
スレッド一覧


371● Re:win200DualCPU環境下でのコンパイル[ 中島 ] 2002 05/09 18:46
> LinuxではDualCPU環境なら、コンパイルオプションによってコンパイル
> の速度をかなり上げることができると聞いておりますがwin2000の環境
> 下でもこれは可能なのでしょうか。

 makeコマンドのオプション -j [数字]という、同時に複数のjobプロセス
でコンパイラを実行するものがあります。
 このオプションは、SingleCPUではCPUが50%ずつ使われるため、あまり
意味はありませんが、MultiCPUでは、それぞれのプロセッサに、プロセス
が割りふられるため、見かけ上全体では処理時間を短縮することが出来ます。

> 可能であれば、その方法お教えてください。お願いします。

 Linux だろうと、Cygwin だろうと 同じ、GNUmake なので同様に使えるはず
です。
スレッド一覧


380● Re[2]:win200DualCPU環境下でのコンパイル[ りう ] 2002 05/14 19:18
make -j は Cygwin では動作しないようです。
http://www.sixnine.net/cygwin/cygwin-doc/faq/faq_4.html#SEC90
を参照下さい。

# まだ公開していませんが、Cygwin 1.3.10 の FAQ にも
# この記述は残っています。
スレッド一覧


395● Re[3]:win200DualCPU環境下でのコンパイル[ 藤枝 ] 2002 05/25 02:44
そんなことないです。動きます。

なんで止まるって書いてあるかっていうと、以前はプロセス間のrace conditionがひどくて、複数プロセスを必ず同時に走らせるmake -j 2はCygwin DLLにとっては非常に酷な作業だったんです。一時期は、ほぼ100%失敗するありさまでした。

ChrisがDUAL CPUマシンを使うようになってからはデバックが進んだんで、DUALをサポートするNT/2000/XPではmake -j2がちゃんと動くはずです。

あとは95/98/Meなんですけど、こちらはNT系よりも長い間make -j2が動きませんでした。でも、何かの拍子にChrisがやる気になって、一時期集中的に直してたんで、95系でも平気になってるはずです。
スレッド一覧

早田のホームページへ
CGIROOM