ขณะนี้เรากำลังประเมินการกำหนดค่าพีซีของนักพัฒนารุ่นต่อไปทั่วทั้งบริษัท และสังเกตเห็นบางสิ่งที่แปลกประหลาดจริงๆ
เสาหินที่ค่อนข้างใหญ่ของเรามี - ในการกำหนดค่าปัจจุบันของเรา เวลาในการสร้างประมาณ 4.5 นาที (ไม่มีการทดสอบ แค่คอมไพล์)
สำหรับการกำหนดค่ารุ่นถัดไป เราได้อัปเกรดส่วนประกอบหลายอย่าง ความถี่และ IPC เพิ่มขึ้นปานกลางด้วยโปรเซสเซอร์ เพิ่มจำนวนคอร์ CPU เป็นสองเท่า และการเปลี่ยนจาก SATA SSD ขนาดเล็กไปเป็น NVMe SSD ที่มีพิกัดที่ >3GBps นอกจากนี้ การกำหนดค่ารุ่นถัดไปยังสลับจาก Windows 7 เป็น Windows 10
เมื่อทำการทดสอบครั้งแรก เราสังเกตเห็นว่าเวลาในการสร้างเกือบจะเท่ากัน (4.3 นาที) ซึ่งมีการปรับปรุงน้อยกว่าที่เราคาดไว้มาก
ในระหว่างการทดลองของเรา ณ จุดหนึ่งเราได้พยายามเรียกใช้กระบวนการสร้างจากภายในเครื่อง Linux เสมือนที่ทำงานบนโฮสต์ของ windows ในการกำหนดค่าเก่า (Windows7) เราเห็นเวลาในการสร้างลดลงจาก 4.5 เป็น ~3.7 นาที บนโฮสต์ Windows 10 เราเห็นลดลงจาก 4.3 เป็น 2.3 นาที เราได้ตัดสิ่งต่างๆ เช่น การสแกนไวรัสออกไป
เราค่อนข้างประหลาดใจกับผลลัพธ์เหล่านี้ และพยายามค้นหาคำอธิบายอื่นนอกเหนือจากข้อความที่เกือบจะเป็นศาสนาและดูถูกเกี่ยวกับระบบปฏิบัติการต่างๆ
ดังนั้นคำถามก็คือ: เราอาจทำอะไรผิดในการกำหนดค่าเครื่อง Windows ในลักษณะที่ว่าความเร็วเกือบครึ่งหนึ่งของ Linux ที่ทำงานเสมือนจริงในโฮสต์ windows เดียวกัน โดยเฉพาะอย่างยิ่งเมื่อความก้าวหน้าทางฮาร์ดแวร์ทั้งหมดดูเหมือนจะถูกกินโดยการเปลี่ยนจาก windows 7 เป็น 10
คำถามอีกข้อคือ: เราจะเพิ่มประสิทธิภาพกระบวนการ javac ให้ใช้คอร์มากขึ้นได้อย่างไร เพราะตอนนี้ เมื่อใช้ Hotspot JDK 8 เราจะเห็นว่าบิลด์ส่วนใหญ่ใช้งานจริงมากที่สุดสองคอร์ ฉันได้อ่านเกี่ยวกับ sjavac แล้ว แต่ดูเหมือนว่าจะเป็นฟีเจอร์ทดลองที่มีให้เฉพาะ OpenJDK9 เป็นต้นไปใช่ไหม