การตั้งค่า VM ด้วยซีพียู / แกนมากกว่า 1 อันจะปรับปรุงประสิทธิภาพหรือไม่?


11

เมื่อฉันใช้เวิร์กสเตชัน VMware ฉันสามารถตั้งค่า VM ด้วยหลายคอร์ จริง ๆ แล้วฉันใช้มันกับเครื่องที่มีคอร์สองแกนและแกนตรรกะ 4 แกน ดังนั้นฉันจะปรับปรุงประสิทธิภาพ VMS โดยใช้แกนเพิ่มเติมบน VM หรือไม่


3
มันควรค่าแก่การจดจำสิ่งหนึ่งเมื่อปรับขนาดแขกเสมือน: หากมันจะได้ประโยชน์ในการติดตั้งบนเครื่องจริงมันจะเป็นประโยชน์ในฐานะเครื่องเสมือนจริงและในทางกลับกัน และที่สำคัญที่สุดของทั้งหมด: ไม่มีอะไรที่มีมนต์ขลังที่เกิดขึ้นกับระบบหรือโปรแกรมต้องการเพียงเพราะคุณ virtualised บางสิ่งบางอย่าง
Rob Moir

คำตอบ:


8

มันขึ้นอยู่กับสิ่งที่ VM กำลังทำงานแขกบนเครื่องที่มีจำนวนแกนจะทำงานได้ดีที่สุดที่ n-1 คอร์ที่ได้รับมอบหมายตราบใดที่แขกสามารถใช้ประโยชน์หลาย CPU ได้อย่างมีประสิทธิภาพ น่าเสียดายที่วิธีที่ง่ายที่สุดในการพิจารณาว่าจะลองทำและดู ฉันมักจะเริ่มต้นด้วย 2 และหยุดเมื่อฉันหมดประสิทธิภาพการทำงานเพิ่มขึ้น โดยทั่วไป 2 คอร์คือที่ที่ฉันเห็น "จุดหวาน" ชุดแอป / ระบบปฏิบัติการไม่กี่อันที่ฉันเคยใช้จะปรับให้ดีกว่านั้น


6

เพื่ออธิบายให้ชัดเจนคุณกำลังบอกว่าคุณมีซีพียูแบบดูอัลคอร์และคุณได้กำหนดซีพียูเสมือน 4 ตัวบน VM แล้วหรือยัง

ในกรณีนี้ไม่มี หากคุณกำหนด vCPU มากกว่าที่คุณมีแกนประมวลผลทางกายภาพคุณจะเห็นประสิทธิภาพลดลงเล็กน้อยเนื่องจากค่าใช้จ่ายในการแบ่งปัน 2 ฟิสิคัลคอร์ระหว่าง 4 คอร์เสมือน (รวมทุกอย่างที่ทำงานบนโฮสต์ฟิสิคัล)

คุณจะเห็นประสิทธิภาพที่ดีที่สุดจาก VM โดยกำหนดให้เป็น 2 vCPU


ไม่จำเป็น - คุณจะเห็นประสิทธิภาพที่ดีขึ้นเท่านั้นหากแอปพลิเคชันที่ทำงานบน VM สามารถใช้ประโยชน์จากระบบมัลติคอร์ได้ น่าเสียดายที่ถึงแม้ว่าจะเป็นปี 2011 แอปพลิเคชันจำนวนมากก็ไม่สามารถทำได้
EEAA

@ErikA Fair point - แอปพลิเคชันเธรดกันฉันแค่บอกว่ามีเพียง 2 คอร์ทางกายภาพ 2 vCPUs บน VM เดียวจะดีกว่า 4 vCPU เสมอ
เชนหัวเสีย

ตกลง 100% เห็นด้วยกับจุดนั้น
EEAA

5

เราได้ทดลองเมื่อไม่นานมานี้ ( ดูคำถามของฉันเมื่อหนึ่งปีก่อน ) ด้วยการกำหนด vCPU จากแกนประมวลผลเชิงกายภาพเทียบกับแกนตรรกะ (เธรด) ใน CPU แบบ quad-core ที่มีไฮเปอร์เธรด (8 vCPU ที่กำหนดได้ ตามคำตอบที่ฉันได้แนะนำไปแล้ว - และประสบการณ์ของเราเบื่อ - คุณควรจัดสรรจำนวนขั้นต่ำของคอร์ที่คุณสามารถให้แขกแต่ละคนเพื่อให้มันดำเนินการได้

เมื่อกำหนด vCPU มากกว่าคอร์ฟิสิคัลที่มีอยู่บนโฮสต์หากแขกอยู่ภายใต้โหลดไฮเปอร์เธรดพร้อมกันไม่ได้เร็วพอที่จะสลับบริบทของ CPU ระหว่างเธรดเพื่อจำลอง CPU อื่นอย่างมีประสิทธิภาพ สิ่งนี้สามารถนำไปสู่สิ่งที่น่ารังเกียจมากสำหรับแขกทุกคนรวมถึงการล็อคและการหมดเวลาที่ต้องทำการรีบูต fsck และแย่กว่านั้นในกองซ้อน แม้ว่าสิ่งนี้จะไม่เกิดขึ้นการแสดงมักจะช้ากว่าสำหรับแขกมากกว่าจะเร็วกว่า

เมื่อ @Chris S ใส่ไว้ในความคิดเห็นของเขาแล้ว "จัดสรรให้น้อยที่สุดเท่าที่จะทำได้และคุณจะหลีกเลี่ยงอาการปวดหัวครั้งใหญ่"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.