ข้อมูลจำเพาะของพีซีใดที่มีผลต่อเวลาในการรวบรวมของคุณมากที่สุด ดิสก์? ความเร็วสัญญาณนาฬิกา? จำนวนคอร์ CPU
ข้อมูลจำเพาะของพีซีใดที่มีผลต่อเวลาในการรวบรวมของคุณมากที่สุด ดิสก์? ความเร็วสัญญาณนาฬิกา? จำนวนคอร์ CPU
คำตอบ:
Scott Gu ยังโพสต์เกี่ยวกับสิ่งที่ส่งผลต่อความเร็วในการสร้างโดยเน้นไปที่ทรัพยากรI / Oเช่นฮาร์ดดิสก์
ปัจจัยที่ฉันค้นพบสร้างความแตกต่างที่ใหญ่ที่สุดไม่ใช่ปัจจัยทางกายภาพ แต่ซอฟต์แวร์ตัวหนึ่ง: คุณติดตั้งโปรแกรมป้องกันไวรัสตัวไหนอยู่
ผลิตภัณฑ์ป้องกันไวรัสบางตัวไม่สามารถจัดการกับการพัฒนาซอฟต์แวร์ได้เป็นอย่างดี - พวกเขาเห็นไฟล์แอปพลิเคชันเหล่านี้ทั้งหมดถูกเขียนใหม่สงสัยว่ามีการเล่นที่เหม็นและสแกนซ้ำทุกไฟล์ทุกครั้ง
(ดู/programming/1170078/is-it-usual-for-aspx-files-to-take-5-10-seconds-to-save/1170129#1170129เพื่อดูข้อมูลเพิ่มเติม)
ในทางตรงกันข้ามหากคุณต้องการปรับปรุงประสิทธิภาพของเครื่องที่มีอยู่ไม่มีอะไรจะดีไปกว่าการเพิ่มหน่วยความจำที่มีอยู่เพื่อการชนะอย่างรวดเร็ว
นี่คืองานวิจัยดีๆจาก Scott Hanselman เกี่ยวกับการใช้ CPU หลายตัวสำหรับ MSBUild การเพิ่มความเร็วนั้นค่อนข้างน่าทึ่ง
แก้ไข: ฉันควรทราบว่าเพื่อให้มีประสบการณ์ที่ดีในการใช้ Visual Studio คุณต้องมี RAM มากมาย :)
ประสบการณ์ส่วนตัวของฉันกับฐานรหัส C ++ ขนาดพอใช้:
หน่วยประมวลผล: Pentium 4 HT 3.06 GHz
หน่วยความจำ: 1 GB DDR RAM (PC 2100, 333 MHz)
ดิสก์:ฮาร์ดไดรฟ์ 7200 RPM (UDMA 100, ถ้าหน่วยความจำทำหน้าที่)
เวลารวบรวม: 50 นาที
หน่วยประมวลผล: Core i7 720QM (8 ประมวลผลเชิงตรรกะ) ที่ 1.6 GHz, Turbo Boost 1.73 GHz เมื่อแกนทั้งหมดมีการใช้งาน
หน่วยความจำ: 8 GB RAM DDR3 1066 MHz
ดิสก์: 7200 RPM ฮาร์ดไดรฟ์ (SATA 2)
รวบรวมเวลา: 4 นาที (กับ/ MP )
สรุป:ยิ่งตัวประมวลผล Merrier ยิ่งใช้ความเร็วสัญญาณนาฬิกาต่ำก็ตาม SSD จะปรับปรุงเวลาต่อไป แต่จากการสังเกตข้อความการรวบรวมฉันสงสัยว่ามันจะปรับปรุงได้มากกว่า 30 วินาทีหรือมากกว่านั้น
เท่าที่ฉันจำได้คือตัวประมวลผลและหน่วยความจำส่วนใหญ่ Google ที่รวดเร็วได้เปิดเผยการปรับแต่งต่างๆที่สามารถปรับปรุงเวลารวบรวม
โจเอลโพสต์เมื่อเร็ว ๆ นี้เกี่ยวกับผลของดิสก์บนโซลิดสเตรวบรวมที่นี่ ความเร็วดิสก์โดยทั่วไปจะไม่ปรับปรุงเวลาในการคอมไพล์อย่างมาก แต่เป็นไปตามนี้ก็จะมีมีผล ณ ออกแหลมโดยlyngbym
สำหรับการสร้างโปรแกรม C ++ ปัจจัย # 1 ก่อนโครงสร้างอื่นทั้งหมด - หากซอร์สโค้ดมีโครงสร้างในแนวตั้งอย่างหนักจะมีผลกระทบร้ายแรงต่อเวลาการสร้างโดยเฉพาะการสร้างที่เพิ่มขึ้น ฉันปรับโครงสร้างภายในประเทศบางส่วนของโครงการเพื่อปรับปรุง Xeon แบบ quad-core อย่างน่าทึ่ง 18 เดือนต่อมาและพวกเขา (คนที่เป็นเจ้าของโครงการ) ยังคงไม่สามารถเทียบเวลาสร้างนาฬิกาแขวนของฉันได้แม้กระทั่งบนเครื่อง Core i7
เอฟเฟกต์ (บวกหรือลบ) ของรูปแบบซอฟต์แวร์ของคุณทวีคูณในสมาชิกทุกคนในทีมของคุณและทุกสิ่งที่สร้างขึ้น
Xoreax IncrediBuildเป็นระบบ build แบบกระจายที่ได้ทำการปรับปรุงครั้งใหญ่ในเวลารวบรวมที่ฉันทำงาน (น่าเสียดายที่เวลาลิงก์ยังค่อนข้างยาวโดยเฉพาะรุ่นบิลด์ที่ใช้การเพิ่มประสิทธิภาพทั้งโปรแกรมและการสร้างรหัสลิงค์เวลา แต่คาดว่าจะเสร็จสิ้น)