Berapa banyak prosesor atau inti virtual yang harus saya tetapkan untuk OS Tamu saya? [Tutup]

8

Saya baru saja menerima mesin Host yang ditingkatkan, dan saya ingin mendorong beberapa kemajuan itu ke workstation saya OS Guest. Secara khusus, saya dulu memiliki prosesor tunggal, dengan 2 core, jadi OS Tamu saya hanya memiliki 1/1.

Sekarang, saya punya prosesor tunggal dengan 8 core, jadi saya ingin tahu tentang apa yang akan direkomendasikan untuk OS Tamu saya sekarang?

  • 1 prosesor / 4 inti?
  • 2 prosesor / 2 core?
  • 4 prosesor / 1 inti?

Naluri saya mengatakan untuk tetap dengan jumlah prosesor fisik (atau kurang), tetapi, apakah itu didasarkan pada kenyataan? Saya menghabiskan banyak waktu sambil mencari jawaban untuk ini, tetapi mungkin google-karma saya tidak menguntungkan saya hari ini.

reidLinden
sumber
Apakah tamu Anda menggunakan kemampuan pemrosesan yang dimilikinya seperti sekarang?
OldWolf
Tautan ini mungkin membantu, menyarankan agar Anda mencocokkan konfigurasi Anda dengan konfigurasi NUMA host.
Glenn

Jawaban:

4

Dalam pengujian saya sendiri, dengan VMWare Workstation, menggunakan GeekBench 3, 64-bit tes terbaru, pada mesin host dengan 1 cpu, 2 core (dengan HT dihidupkan, jadi 4 core):

Sistem Host:

  • 2866 Skor Inti Tunggal, 5939 Skor Multi-Inti

Tervirtualisasi:

  • 1 cpu, 1 inti: 2783 sc, 2705 mc
  • 1 cpu, 2 core: 2758 sc, 4271 mc
  • 1 cpu, 3 core: 2783 sc, 5234 mc
  • 1 cpu, 4 core: 2769 sc, 5793 mc

Jadi, setidaknya dalam pengujian saya, sepertinya ada manfaat untuk mengatur jumlah virtual core Anda agar sesuai dengan core fisik Anda. Mungkin aku salah. Saya ingin berdiskusi.

Nicholas
sumber
Penelitian luar biasa! Terima kasih. Bisakah Anda memperluas penelitian ini untuk mencakup beberapa opsi lain yang saya soroti di posting asli? Seperti sistem 2/2 dan 4/1 virtual (setelah mengidentifikasi bahwa 1/4 out melakukan pengaturan 1 / 4-)? Itu pertanyaan sebenarnya. Jika Anda menggunakan 1/4, 2/2, atau 4/1 (dengan asumsi Anda akan menggunakan 4 core virtual secara keseluruhan). Juga, saya akui bahwa saya tidak memahami perbedaan dalam "skor inti tunggal" dan "skor multi-inti" di masing-masing contoh Anda. Bagaimana mesin 1cpu / 1core bisa mendapatkan skor multi-core sama sekali? Sama untuk situasi 1cpu / 4core, secara terbalik ....
reidLinden
2

Saya tidak tahu apakah informasi ini masih valid, tetapi dalam waktu yang tidak terlalu lama, CPU tamu tambahan tidak skala hampir sama baiknya dengan CPU host. Bahkan, rekomendasi terbaik adalah tetap menggunakan CPU tunggal dalam konfigurasi tamu Anda kecuali jika Anda secara khusus menguji / men-debug perangkat lunak multithreaded di tamu Anda dan membutuhkan lingkungan SMP.

Sunting: Jawaban ini khusus untuk virtualisasi desktop, bukan virtualisasi server.

afrazier
sumber
jadi, maksud Anda 1 prosesor, dengan satu inti?
reidLinden
Iya. Apakah VMware workstation memungkinkan untuk menetapkan nilai-nilai itu secara mandiri sekarang? Saya belum menggunakannya sejak ver 6, dan itu hanya # CPU. Jika Anda akan melakukan multi-core / multi-CPU di tamu Anda, saya ragu banyak hal mana yang Anda skala hal kecuali pertimbangan lisensi (# "soket" vs # "inti") ikut bermain. misalnya XP Home hanya memungkinkan 1 soket, tetapi hingga 4 core, sedangkan XP Pro memungkinkan untuk 2 soket.
Afrazier
ya, saya tampaknya memiliki opsi untuk memilih "# prosesor" dan "# core" secara mandiri ... Mesin Host saya memiliki 1 prosesor dengan 8 core, pada windows7 Professional, dan guestOS saya (utama) adalah windows server 2003. ..
reidLinden
0

Paling-paling saya berikan core OS 2 tamu saya. Tidak masalah jika Anda melakukan masing-masing 1 prosesor 2 core atau 2 prosesor 1 core. Pengaturan procesor adalah untuk alasan kompatibilitas. Prosesor / inti tidak skala dengan baik untuk OS tamu karena penjadwalan proses inti / prosesor. 2 core tampaknya menjadi sweet spot.

Metril
sumber
Anda ingin menghindari memiliki satu prosesor dan satu inti untuk VM karena jika operasi apa pun yang tidak diharapkan oleh OS host untuk memblokir blok di host, seluruh VM diblokir.
David Schwartz
0

Ada sedikit perbedaan pada titik ini. Dalam beberapa kasus, lisensi perangkat lunak mungkin tergantung pada core atau CPU.

Divirtualisasi: 1 cpu, 1 core: 2783 sc, 2705 mc 1 cpu, 2 core: 2758 sc, 4271 mc 1 cpu, 3 core: 2783 sc, 5234 mc 1 cpu, 4 core: 2769 sc, 5793 mc Jadi, setidaknya dalam pengujian saya, sepertinya ada manfaat untuk mengatur jumlah virtual core Anda agar sesuai dengan core fisik Anda. Mungkin aku salah. Saya ingin berdiskusi.

Ini hanya dalam patokan yang menggunakan semua core. Sebagian besar aplikasi tidak mengukur kinerja secara linier dengan jumlah inti karena mereka tidak menggunakan core tambahan.

Ada juga beberapa level overhead dengan menambahkan lebih banyak core. Untuk itu, singkatnya, tambahkan saja jumlah core yang dibutuhkan aplikasi Anda pada level yang Anda butuhkan. Hanya karena Anda memiliki 4 core di host Anda tidak berarti setiap VM harus mendapatkan 4 core.

Di sejumlah lingkungan yang saya kelola kami memiliki CPU 10 inti ganda dengan total 40 utas logis dan pengontrol domain saya masih hanya mendapatkan dua inti.

Curtis
sumber
-2

Saya cukup terkejut bahwa pertanyaan yang sering diajukan ini belum sepenuhnya dijawab sekarang. CPU host Anda harus mendukung beberapa teknologi virtualisasi, misalnya Intel VTx. Itu memungkinkan Anda untuk "menyalurkan" seluruh daya CPU ke sistem operasi tamu Anda. Kalau tidak, akan ada penurunan kecepatan yang sangat besar karena emulasi CPU. Jika Anda memiliki CPU dengan hyperthreading, Anda akan melihat 8 prosesor untuk quad-core CPU di manajer perangkat mesin host Anda (hyperthreading menggandakan jumlah core Anda). Dalam hal ini, Anda dapat menetapkan 1 prosesor dengan 4 core untuk os tamu Anda. Selama Anda tidak memiliki prosesor fisik lain di sistem Anda, jangan tetapkan lebih dari 1 prosesor ke mesin virtual Anda. Anda dapat menetapkan lebih banyak atau lebih sedikit inti untuk os tamu Anda, tergantung pada kebutuhan Anda, tetapi Anda tidak boleh t menetapkan nilai yang lebih tinggi dari core hyperthreading Anda. Tetapi perhatikan, bahwa host Anda juga membutuhkan daya CPU. Saya biasanya mengatur setengah jumlah core hyperthreading dan setengah jumlah memori saya, misalnya 8192 MB ketika Anda memiliki 16 Gig RAM. Ini biasanya merupakan pengaturan yang baik, tetapi tidak jika Anda ingin menjalankan lebih dari satu mesin virtual sekaligus.

martinjohannes93
sumber