Adakah ide apakah Anda dapat menjalankan Windows VM melalui IronHide untuk akselerasi kartu grafis? Saya ingin bermain game / menonton bluray dll menggunakan kartu video saya.
virtualbox
nvidia-optimus
bumblebee
mwjackson
sumber
sumber
Jawaban:
Mungkin penjelasan antara grafik dalam tamu virtual dan host O / S yang sebenarnya akan membantu di sini.
Pertama-tama dasar-dasarnya:
Segala sesuatu dalam tamu virtual adalah abstraksi - artinya ini adalah bahwa setiap perangkat dan driver dalam tamu virtual O / S tidak tergantung pada perangkat host & driver yang sebenarnya.
Untuk memberi Anda contoh sederhana. Mouse dilihat sebagai perangkat tertentu - kernel linux melihat perangkat ini dan memungkinkan sistem operasi tamu untuk menggunakan perangkat itu. "Perangkat virtual" ini dipetakan ke perangkat fisik nyata oleh alat virtualisasi - VirtualBox, VMWare, Xen dll. Dengan demikian sistem operasi tamu tidak perlu memahami apa itu mouse fisik, ia hanya melihat apa yang telah dipetakan oleh alat virtualisasi itu. . Nilai dari pendekatan ini adalah Anda dapat memindahkan tamu virtual ke Host yang berbeda - ini akan beroperasi dengan cara yang sama karena tidak ada ketergantungan langsung pada Host itu sendiri.
Untuk menunjukkan ini dalam praktiknya Anda dapat berjalan
lsusb
di host dan guest - di host saya O / SI memiliki perangkat USB berikut:Di O / SI oneiric tamu saya dapat melihat perangkat USB berikut - ini berbeda dari host:
Setiap tamu O / S apakah windows atau linux hanya akan melihat perangkat tamu virtual ini.
Gambar host vs gambar tamu
Sama untuk grafis.
Grafik host saya adalah:
Pada guest oneiric O / S saya dapat melihat kartu grafis berikut - Anda dapat melihatnya tidak sama dengan host:
Demikian juga - Tamu Windows O / S hanya akan melihat perangkat tamu virtual serupa.
Di dunia keruh VirtualBox, Penambahan Tamu yang dapat Anda instal secara manual (atau di 11.10 - joki melihat dan merekomendasikan Anda menginstalnya) menginstal modul kernel tambahan (atau driver perangkat untuk Tamu Windows) untuk memungkinkan O / S peningkatan akses tamu ke grafis O / S host Anda. Sekali lagi ini bukan pemetaan langsung - tetapi memungkinkan grafik 3D dipercepat untuk dilihat.
Jika aplikasi di dalam mesin virtual Anda menggunakan fitur 3D melalui antarmuka pemrograman OpenGL (atau untuk tamu Windows O / S - panggilan DirectX-nya), alih-alih mengemulasi mereka dalam perangkat lunak (yang akan lambat), VirtualBox akan berusaha menggunakan host Anda Perangkat keras 3D.
Sekali lagi saya tekankan, tamu O / S tidak melihat kartu grafis Anda yang sebenarnya, hanya melewati panggilan OpenGL (atau DirectX) dari Tamu langsung ke perangkat keras Host untuk diproses.
Dalam pengaturan VirtualBox Anda harus mengubah memori kartu video dan pengaturan kartu grafis 3D. O / S tamu Anda akan melihat "Kartu Akselerasi 3D" dengan RAM 128Mb. Tidak masalah jika kartu grafis host Anda lebih baik dari ini - tamu O / S Anda hanya akan melihat kartu grafis virtual abstrak yang "sederhana" ini.
Karena Anda menyebutkan bahwa Anda menggunakan Windows Guest O / S - kotak centang 2D berlaku untuk Anda karena pass-through yang sama dari panggilan antarmuka pemrograman dilakukan.
Bumblebee / IronHide adalah mekanisme switching grafis atau grafis - Anda menggunakan grafis terintegrasi atau grafis NVidia / ATI berkapasitas lebih tinggi tetapi tidak keduanya sekaligus pada saat bersamaan.
Karena kemampuan OpenGL (atau DirectX) dari grafik yang lebih tinggi yang dapat dipindahtangankan itu lebih besar daripada chip terintegrasi, Anda akan melihat kinerja grafis yang relatif ditingkatkan dengan aplikasi intensif grafis Guest O / S. Namun peningkatan ini tidak sedramatis menjalankan aplikasi yang sama secara asli pada host karena masih bekerja dalam batasan perangkat grafis tamu virtual 128MB.
sumber
sumber
Sebuah jawaban di atas https://askubuntu.com/a/85138/38052 menjelaskan bagaimana segala sesuatu yang dilihat tamu O / S adalah semacam abstraksi. Walaupun ini dulu sepenuhnya benar, saya percaya segala sesuatunya berubah dan itu mungkin tidak sepenuhnya benar lagi.
Beberapa prosesor yang lebih baru juga mendukung virtualisasi I / O MMU. Teknologi ini disebut Intel VT-d untuk versi Intel dan AMD-Vi untuk versi AMD. Mengutip artikel wikipedia di virtualisasi x86:
Ini kedengarannya cukup menarik, tetapi saya sudah bisa melihat beberapa masalah. Pertama, di laptop Optimus, Intel IGP selalu menampilkan hasil akhir di layar. Tidak jelas bagi saya bagaimana Guest O / S dan Host O / S akan mendorong IGP. Satu pemikiran adalah bahwa jika memungkinkan untuk menjalankan Host tanpa grafik saat tamu berjalan, ini dapat dilakukan untuk bekerja, tetapi tidak jelas bagi saya bagaimana seseorang akan melakukan hal ini.
sumber
OK, saya penasaran, jadi saya mencoba ini.
QEMU, dan sekarang VirtualBox, mendukung pass-through perangkat PCI ke mesin tamu. Itu berarti jika Anda memiliki kartu grafis kedua, Anda dapat meneruskannya ke tamu windows di host linux dan mendapatkan kinerja 3D (permainan) penuh dalam lingkungan windows yang tervirtualisasi. Itu terjadi untuk rig desktop dengan dua kartu grafis. Manajer perangkat akan menampilkan "NVIDIA GTX ... apa pun" alih-alih mengatakan "Virualbox Graphics Adapter".
Optimus selalu lebih rumit. Saya menguji ini pada ASUS UX501. Saya bisa meneruskan chip NVidia ke jendela tamu dan itu menunjukkan di manajer perangkat sebagai "Pengendali Video 3D." Tetapi saya tidak dapat menginstal driver windows untuk mendukungnya. Sepertinya kehadiran grafis intel adalah sebuah prereq.
Sarang benar untuk curiga. Sepertinya chip nvidia bukan "adaptor layar" seperti yang mendorong monitor, tetapi hanya akselerator untuk chip intel terintegrasi. Mereka tampaknya tidak berfungsi sebagai dua perangkat yang terpisah secara independen.
sumber