Friday, August 13, 2004

เวลาที่ใช้คอมไพล์ gcc-3.4.1

ไหนๆก็ Upgrade gcc เป็น 3.4.1 หลายเครื่องแล้ว ลองทำอีกสองเครื่อง (Celeron/Crusoe คู่เดิม) เปรียบเทียบเวลากัน ใช้เวลากว่า 4 ชั่วโมง ช่างห่างไกลกับสองเครื่องแรกมากจริงๆ

เครื่อง คำสั่ง ชั่วโมง:นาที:วินาที
SGI R1200-400 x24/12GB gmake -j 20 bootstrap MAKE="gmake -j 20" 00:22:05
Linux Xeon 2.4 x2/2GB make -j 4 bootstrap MAKE="make -j 4" 00:28:47
Linux Celeron-400/256MB make -j 2 bootstrap MAKE="make -j 2" 04:23:xx
Linux Crusoe5400-600/192MB make -j 2 bootstrap MAKE="make -j 2" 04:46:xx
Ultra-450 UltraSPARC2-300 x2 make -j 4 bootstrap MAKE="make -j 4" Error เมื่อผ่านไป 2:35:19

บน Ultra-450 (Solaris 2.6 เก่าแล้ว) ขึ้น Error ว่า

...
make[1]: *** [all-target-libjava] Error 2
make: *** [bootstrap] Error 2
13924.52u 2427.90s 2:35:19.38 175.4%
ระหว่างกำลังสร้าง libjava

4 comments:

bact' said...

Xeon นี่ double core รึเปล่า?

ตัว UltraSPARC II นี่ไม่แน่ๆ .. ลอง -j 3 จะหายมั๊ยครับ?
(เห็นปกติเค้าแนะนำให้ค่า -j = จำนวนซีพียู + 1)

bact' said...

ไม่แน่ใจว่าเกี่ยวด้วยรึเปล่า
แต่ถ้าเป็น jvm ของ Sun เนี่ย อย่างน้อยๆ ต้อง Solaris 7 มั้ง ถึงจะ support .. หรือ 8 ด้วยซ้ำ

Hui/ฮุ้ย said...

Xeon รุ่น HyperThreading ธรรมดาครับ มันคงมีหน่วยประมวลผลภายในหลายหน่วย เอามาแบ่งๆกันใช้เหมือนมี 2 CPU

-j 3 คงเหมือนกันครับ เพราะมันตายที่ process ของ gcj คำสั่งเดียว

ส่วน libjava นั้นก็เห็นมันคอมไพล์ด้วย gcj ที่เพิ่งสร้างเสร็จ ไม่ได้ใช้ JDK 1.3 เก่าๆ ที่ลงไว้ 1.4 ลงไม่ได้แล้ว ต้อง Up เป็น Solaris ใหม่ๆอย่างที่บอก

bact' said...

Solaris 8 น่าจะโอเคนะครับ ผมเคยใช้ UlraSPARC IIi 233 MHz ก็ใช้ได้ไม่อืด (แต่อย่าลง GNOME นะครับ, CDE ดีที่สุด :P .. เอาไว้เป็น server หรือทำงานคำนวณน่ะดีแล้ว ..ปกติผมเอาไว้รัน SETI@Home 555)