Di tempat saya bekerja, kami menjalankan PC yang relatif kuat menggunakan Distribusi Debian Linux. Namun untuk program tertentu yang perlu kita instal akan lebih baik untuk memiliki CentOS dan ini akan menjadi alat kerja utama kita. Mengubah OS untuk semua komputer di tempat kerja kami adalah suatu kemungkinan, tetapi kami mencoba untuk memutuskan apakah menggunakan VirtualBox adalah pilihan yang lebih baik untuk kesederhanaan.
Ini semua bergantung pada poin berikut. Program yang perlu kita jalankan adalah simulator yang merupakan tugas yang sangat intensif prosesor yang dapat dengan mudah berjalan hingga satu jam atau lebih setiap kali simulasi diluncurkan. Kita perlu memutuskan apakah penurunan kinerja saat menggunakan Virtual Box cukup besar untuk mendapatkan perubahan OS kita.
Jadi pertanyaan saya adalah apakah ada orang yang dapat memberi tahu saya dengan pasti kinerja apa yang dihasilkan dari menjalankan tugas intensif prosesor dalam kotak virtual dibandingkan menjalankannya pada PC asli?
Terima kasih.
sumber
Tidak ada satu jawaban yang baik untuk ini. Itu sangat tergantung pada bagaimana Anda menggunakan VM dan program mana.
Misalnya menggunakan VMWare (tipe 2 hypervisor) dan program terikat CPU murni menghasilkan kecepatan CPU hampir penuh. Jika saya menggunakan hypervisor yang sama sebuah program dengan banyak panggilan sistem saya akan mendapatkan perlambatan yang serius.
Dan hal-hal juga berubah ketika Anda menggunakan hypervisor tipe 1 (tanpa tamu) OS. Dan bahkan di antara mereka Anda memiliki banyak variasi. Misalnya Xen dengan 5 (IIRC dari akhir pekan lalu FOSDEM bicara pada mode Xen) yang didukungnya. Dari HW gunakan untuk para virtualised.
Untuk rekap: Seperti yang diminta, dapat bervariasi dari hampir tidak ada pelambatan hingga sangat lambat.
Sekarang jika saya fokus pada VirtualBox, itu adalah hypervisor tipe 2. Program terikat CPU murni harus baik-baik saja.
sumber
Sebenarnya, sepertinya Docker mungkin menjadi pilihan yang lebih baik untuk apa yang Anda lakukan. Docker menyediakan wadah, yang merupakan kotak pasir terisolasi yang berjalan di atas kernel yang sama. System call / IO overhead adalah nol, karena proses dalam-wadah Anda tidak berbeda dengan yang ada di host.
Karena Anda sudah menjalankan Linux, Docker akan menjadi cara yang bagus untuk menyediakan lingkungan CentOS tanpa harus menginstal ulang semua mesin Anda.
Juga, periksa utilitas saya, Scuba yang membuatnya mudah untuk menjalankan hal-hal seperti membangun di dalam wadah Docker. Alih-alih menjalankan
make
Anda akan lariscuba make
. Itu saja!sumber