ฉันใช้ qemu กับ kvm เป็นไฮเปอร์ไวเซอร์ของฉัน ฉันกำลังเรียกใช้แขกผู้มาเยี่ยมในโฮสต์อูบุนตู แขกจะได้รับหน่วยประมวลผลเดียว
เมื่อฉันเรียกใช้งานการคำนวณอย่างละเอียด (พูดว่า loop-loop) ฉันได้รับการใช้งาน CPU เกือบ 100% สำหรับแขกและโฮสต์ อย่างไรก็ตามเมื่อฉันเล่นวิดีโอความละเอียดสูง (1080p) ฉันเห็นว่าแขกแสดงการใช้งาน CPU สูงถึง 100% ในขณะที่โฮสต์แสดงการใช้งาน CPU โดยเฉลี่ยประมาณ 30-40% เท่านั้น ฉันสงสัยว่าอะไรจะทำให้เกิดสิ่งนี้
หากกระบวนการนั้นเป็นดิสก์ถูกผูกไว้ฉันเชื่อว่าการรันวิดีโอครั้งที่สองจะทำให้อัตราส่วนการใช้งานซีพียูของโฮสต์ต่อแขกดีขึ้นเนื่องจากวิดีโอจะถูกดึงไปยังหน่วยความจำหลัก (วิดีโอประมาณ 1 นาที 40 MB และแขกแรมคือ 4 กิ๊ก) แต่นั่นไม่ได้เกิดขึ้น ถ้าอย่างนั้นจะทำให้การใช้งาน CPU แตกต่างกันอย่างไร
ฉันไม่เข้าใจว่า vlc จัดการวิดีโอ H264 อย่างไร มันรายงานว่ามันกำลังวางเฟรมที่อาจเกิดจากคอมพิวเตอร์ช้า สิ่งเดียวที่ฉันคาดเดาก็คืออาจมีกราฟิกการ์ดที่เกี่ยวข้องกับ qemu ที่รอและแขกไม่ได้ตระหนักถึงการรอคอยนี้
เครื่องโฮสต์ของฉันมี 12 คอร์พร้อม RAM 24 กิ๊ก
แก้ไข:
ปัญหาไม่เกี่ยวข้องกับการใช้งานเครื่องเสมือน เป็นเพราะฉันเข้าถึงเครื่องทดสอบผ่าน SSH การส่งต่อ X11 ทำให้การประมวลผล qemu ของฉันช้าลงอย่างมาก อาจคล้ายกับโปรแกรมปกติที่ทำงานช้าลงหากเรามีคำสั่ง printf มากเกินไป เครือข่ายกลายเป็นคอขวดในกรณีของฉัน