NVIDIA (Türkçe)
Bu makale, resmi NVIDIA ekran kartı sürücülerini kapsamaktadır. Topluluk tarafından geliştirilen açık kaynaklı sürücü için Nouveau sayfasına bakın. Hibrit grafiklere sahip bir dizüstü bilgisayarınız varsa NVIDIA Optimus (Türkçe) sayfasına da göz atabilirsiniz.
Kurulum
İlk olarak, aşağıdaki komutla elde ettiğiniz model/resmi ada karşılık gelen kartınızın mimari ailesini (örn. NV110, NVC0 vb.) nouveau wiki'sinin kod adları sayfasında bulun:
$ lspci -k -d ::03xx
Ardından kartınız için uygun olan sürücüyü yükleyin:
| GPU Ailesi | Sürücü | Durum |
|---|---|---|
| Blackwell (GBXXX) ve daha yenisi |
linux çekirdeği için nvidia-open linux-lts çekirdeği için nvidia-open-lts Diğer tüm çekirdekler için nvidia-open-dkms |
Üretici tarafından önerilen Güncel, destekleniyor1 |
|
Turing (NV160/TUXXX) ile Ada Lovelace (NV190/ADXXX) arası |
Her iki sürücü tarafından da desteklenir:
|
|
|
Maxwell (NV110/GMXXX) ile Volta (NV140/GV100) arası |
nvidia-580xx-dkmsAUR | Eski (Legacy), destekleniyor |
| Kepler (NVE0/GKXXX) | nvidia-470xx-dkmsAUR | Eski (Legacy), desteklenmiyor3,4 |
| Fermi (NVC0/GF1XX) | nvidia-390xx-dkmsAUR | |
| Tesla (NV50/G80-90-GT2XX) | nvidia-340xx-dkmsAUR | |
| Curie (NV40/G70) ve daha eskisi | Artık paketlenmiyor | |
- Eğer bu paketler çalışmazsa (genellikle yeni çıkan donanımlardan dolayı), nvidia-open-betaAUR paketi destek sunan daha yeni bir sürüme sahip olabilir.
- NVIDIA'nın GSP aygıt yazılımının (firmware), Turing GPU'larda ideal olmayan güç yönetiminden, Ampere GPU içeren bazı dizüstü bilgisayarlarda tamamen çalışmamaya kadar çeşitli sorunlara yol açtığı bilinmektedir. Bu durumdan etkileniyorsanız, tescilli sürücüyü (örn. nvidia-580xx-dkmsAUR) modül parametresi olarak
NVreg_EnableGpuFirmware=0ayarıyla kullanın. -
11. Nesil ve daha yeni Intel işlemciye sahip sistemlerde, Indirect Branch Tracking (Dolaylı Dal İzleme) uyumsuzluğu nedeniyle Linux 5.18 (veya daha yeni) çekirdeklerde düzgün çalışmayabilir. Önyükleyiciden
ibt=offçekirdek parametresini ayarlayarak bunu devre dışı bırakabilirsiniz. Unutmayın, bu güvenlik özelliği bir dizi istismar tekniğini hafifletmekten sorumludur. - NVIDIA artık bu kartları aktif olarak desteklememektedir ve sürücüleri mevcut Xorg sürümünü resmi olarak desteklemeyebilir. nouveau sürücüsünü kullanmak daha kolay olabilir; ancak NVIDIA'nın eski sürücüleri hala mevcuttur ve daha iyi 3D performansı/kararlılığı sağlayabilir.
- Note
- dkms kurulumu yaparken Dinamik Çekirdek Modülü Desteği Kurulumu bölümünü okuyun.
- DKMS varyantları belirli bir çekirdeğe bağlı değildir; başlık dosyaları (headers) kurulu olan her çekirdek için NVIDIA çekirdek modülünü otomatik olarak yeniden derler.
32-bit uygulama desteği için, multilib deposundan ilgili lib32 paketini de yükleyin (örn. lib32-nvidia-utils).
nvidia-utils paketi, sistemi yeniden başlattığınızda nouveau modülünü otomatik olarak kara listeye alan (blacklist) bir dosya içerir. İsteğe bağlı olarak, /etc/mkinitcpio.conf dosyasındaki HOOKS dizisinden kms ifadesini kaldırabilir ve initramfs'i yeniden oluşturabilirsiniz. Bu işlem, initramfs'in nouveau modülünü içermesini engelleyerek çekirdeğin erken önyükleme (early boot) sırasında bu modülü yükleyemeyeceğinden emin olmanızı sağlar.
- Wayland kullanıcıları, #DRM çekirdek modu ayarı (KMS) bölümünü uygulamadan önce sistemlerini yeniden başlatmamalıdır; aksi takdirde siyah bir ekranla karşılaşabilirler. Ardından #Wayland yapılandırması bölümüyle devam edebilirler.
- Xorg kullanıcıları doğrudan #Xorg yapılandırması bölümüne geçebilirler.
Özel çekirdek (Custom kernel)
Çekirdeğinizin CONFIG_DRM_SIMPLEDRM=y ayarına sahip olduğundan emin olun. Eğer CONFIG_DEBUG_INFO_BTF kullanıyorsanız, (çekirdek 5.16'dan beri) PKGBUILD dosyasında şunlar gereklidir:
install -Dt "$builddir/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids
Çekirdeğiniz CONFIG_NOVA_CORE etkinleştirilerek derlendiyse, yeni açık kaynaklı NVIDIA GPU sürücüsü olan Nova'nın yüklenmesini engellemeniz gerekebilir. nvidia-utils bu sürücüyü varsayılan olarak kara listeye ekler. Bunu systemd-analyze çalıştırarak kontrol edebilirsiniz. Sürücünün farklı bir sürümünü yüklediyseniz, nova_core ve nova_drm modüllerini manuel olarak kara listeye almanız gerekebilir.
DRM çekirdek modu ayarı (KMS)
Wayland birleştiricilerinin (compositors) düzgün çalışabilmesi için Çekirdek modu ayarı (KMS) gereklidir. Çift GPU'lu kurulumlarda, NVIDIA harici GPU'ları üzerinde yerel Wayland işleme (rendering) yapılabilmesi için de KMS şarttır. NVIDIA, DRM'yi (Direct Rendering Manager) etkinleştirmeden otomatik KMS geç yüklemesini desteklemez. nvidia-utils 560.35.03-5 sürümünden itibaren DRM varsayılan olarak etkinleştirilmiştir.
DRM'nin gerçekten etkin olup olmadığını doğrulamak için aşağıdaki komutu çalıştırın:
# cat /sys/module/nvidia_drm/parameters/modeset
Bu komut artık N değil, Y çıktısını döndürmelidir.
Sürümü 560'tan eski olan sürücüler için, nvidia_drm modülüne manuel olarak modeset=1 çekirdek modülü parametresini atayın.
Resmi olarak desteklenen çekirdekler simpledrm özelliğini etkinleştirirken; NVIDIA sürücüsü, kendi fbdev özelliği devre dışı bırakıldığında (veya 545'ten eski sürücü sürümlerinde bu özellik bulunmadığında) efifb veya vesafb sürücülerine ihtiyaç duyar. Sorun yaşarsanız olası bir geçici çözüm için BBS#307164 başlığına göz atın.
Erken yükleme (Early loading)
Temel işlevsellik için sadece çekirdek parametresini eklemek yeterli olacaktır. Sürücünün mümkün olan en erken aşamada yüklendiğinden emin olmak istiyorsanız veya başlangıçta sorunlar fark ediyorsanız (örneğin nvidia çekirdek modülünün ekran yöneticisinden sonra yüklenmesi gibi), initramfs imajına nvidia, nvidia_modeset, nvidia_uvm ve nvidia_drm modüllerini ekleyebilirsiniz. İnitramfs üretecinizi nasıl yapılandıracağınızı öğrenmek için Kernel module#Early module loading sayfasına bakın.
Donanım hızlandırmalı video çözme (Hardware accelerated video decoding)
VDPAU ile donanım hızlandırmalı video çözme, GeForce 8 serisi ve daha yeni kartlarda desteklenmektedir. NVDEC ile donanım hızlandırmalı video çözme ise Fermi (~400 serisi) ve daha yeni kartlarda desteklenir. Ayrıntılar için Donanım video hızlandırma sayfasına bakın.
NVENC ile donanım hızlandırmalı video kodlama
NVENC, nvidia_uvm modülünün yüklenmesini ve /dev altında ilgili aygıt düğümlerinin (device nodes) oluşturulmasını gerektirir.
En güncel sürücü paketi, aygıt düğümlerini otomatik olarak oluşturan bir udev kuralı sağlar; bu nedenle ek bir işlem yapılmasına gerek yoktur.
Eski bir sürücü (örn. nvidia-340xx-dkmsAUR) kullanıyorsanız, aygıt düğümlerini manuel olarak oluşturmanız gerekir. nvidia-modprobe aracını çağırmak bunları otomatik olarak oluşturur. Bunun otomatik olarak çalışması için /etc/udev/rules.d/70-nvidia.rules dosyasını oluşturabilirsiniz:
/etc/udev/rules.d/70-nvidia.rules
ACTION=="add", DEVPATH=="/bus/pci/drivers/nvidia", RUN+="/usr/bin/nvidia-modprobe -c 0 -u"
Wayland yapılandırması
Xwayland ile ilgili olarak Wayland (Türkçe)#Xwayland sayfasına göz atın.
Daha fazla yapılandırma seçeneği için, ilgili Wayland birleştiricisinin (compositor) wiki sayfalarına veya belgelerine bakın.
linux-drm-syncobj-v1 protokolü aracılığıyla Explicit Sync (Açık Eşitleme) özelliğini desteklemeyen bir Wayland birleştiricisi kullanıldığında; NVIDIA sürücüsü hem yerel Wayland hem de Xwayland uygulamalarında titreme, karelerin sıra dışı yüklenmesi ve benzeri büyük sorunlara yol açabilir.Temel destek
nvidia_drm modülü için dikkate alınması gereken iki çekirdek parametresi vardır: modeset ve fbdev. nvidia-utils paketi kullanıldığında her iki parametre de varsayılan olarak etkinleştirilmiştir. NVIDIA ayrıca gelecek bir sürümde bunları varsayılan olarak etkinleştirmeyi planlamaktadır.
modeset
Tüm Wayland yapılandırmalarının düzgün çalışması için modeset özelliğinin etkinleştirilmesi zorunludur.
modeset parametresinin manuel olarak etkinleştirilmesi gereken desteklenmeyen eski sürücüler için #DRM çekirdek modu ayarı (KMS) bölümüne ve daha fazla bilgi için Wayland (Türkçe)#Gereksinimler sayfasına bakın.
fbdev
NVIDIA'nın resmi olarak desteklenen sürücü sürümleri bir framebuffer sağlar. Artık desteklenmeyen eski (legacy) sürücü sürümleri için, bazı Wayland yapılandırmalarının çalışması adına nvidia_drm modülüne ait fbdev çekirdek modülü parametresinin etkinleştirilmesi gerekebilir.
Bu durum özellikle Linux 6.11 ve sonraki sürümlerde kesin bir zorunluluktur; ancak bunun amaçlanan bir davranış mı yoksa bir hata mı olduğu şu an için net değildir. Daha fazla ayrıntı için [1] adresine bakın.
NVIDIA framebuffer özelliğinin gerçekten etkin olup olmadığını doğrulamak için aşağıdaki komutu çalıştırın:
# cat /sys/module/nvidia_drm/parameters/fbdev
Framebuffer etkinse komut Y çıktısını döndürecektir.
Askıya alma (Suspend) desteği
Wayland üzerinde askıya alma (suspend) işlemi, varsayılan ayarlardan Xorg'a kıyasla daha fazla olumsuz etkilenebilir. Ayrıntılar için NVIDIA/İpuçları ve ipuçları#Askıya almadan sonra video belleğini koruma bölümüne bakın.
GDM kullanıyorsanız GDM (Türkçe)#Wayland ve tescilli NVIDIA sürücüsü bölümüne de göz atın.
nvidia-application-profiles-rc.d
Bazı Wayland birleştiricileri, GLVidHeapReuseRatio uygulama profili anahtarı kendi süreç adlarına (process name) karşı uygulanmadığı takdirde varsayılan olarak büyük miktarda VRAM tüketir. Örneğin, niri kullanıcıları aşağıdaki yapılandırmayla boşta VRAM tüketimini yaklaşık ~2.5GiB kadar azaltabilirler:
/etc/nvidia/nvidia-application-profiles-rc.d/50-limit-free-buffer-pool-in-wayland-compositors.json
{
"rules": [
{
"pattern": {
"feature": "procname",
"matches": "niri"
},
"profile": "Limit free buffer pool on Wayland compositors"
}
],
"profiles": [
{
"name": "Limit free buffer pool on Wayland compositors",
"settings": [
{
"key": "GLVidHeapReuseRatio",
"value": 0
}
]
}
]
}
Xorg yapılandırması
Tescilli resmi NVIDIA grafik kartı sürücüsü, herhangi bir Xorg sunucu yapılandırma dosyasına ihtiyaç duymaz. Xorg sunucusunun bir yapılandırma dosyası olmadan düzgün çalışıp çalışmayacağını görmek için Xorg'u başlatabilirsiniz. Ancak, çeşitli ayarları düzenlemek için bir yapılandırma dosyası oluşturulması gerekebilir (/etc/X11/xorg.conf yerine /etc/X11/xorg.conf.d/20-nvidia.conf dosyasını tercih edin). Bu yapılandırma, NVIDIA'nın Xorg yapılandırma aracı tarafından otomatik üretilebilir veya manuel olarak oluşturulabilir. Manuel olarak oluşturulduğunda minimalist bir yapılandırma olabileceği gibi (Xorg sunucusuna yalnızca temel seçenekleri aktaracak şekilde), Xorg'un otomatik algılanan veya önceden yapılandırılmış seçeneklerini devre dışı bırakabilecek bir dizi ayarı da içerebilir.
Otomatik yapılandırma
NVIDIA paketi, bir Xorg sunucu yapılandırma dosyası (xorg.conf) oluşturmak için otomatik bir yapılandırma aracı içerir ve şu komutla çalıştırılabilir:
# nvidia-xconfig
Bu komut mevcut donanıma göre /etc/X11/xorg.conf yapılandırmasını otomatik olarak algılayıp oluşturacak (veya zaten mevcutsa düzenleyecek)tir.
Varsayılan renk derinliğinizin (depth), yatay senkronizasyonun (horizontal sync), dikey yenilemenin (vertical refresh) ve çözünürlüklerinizin kabul edilebilir olduğundan emin olmak için /etc/X11/xorg.conf dosyanızı tekrar kontrol edin.
nvidia-settings
nvidia-settings aracı, CLI (komut satırı) veya GUI (grafik arayüz) kullanarak birçok seçeneği yapılandırmanıza olanak tanır. nvidia-settings komutunu herhangi bir seçenek olmadan çalıştırmak GUI'yi başlatır; CLI seçenekleri için nvidia-settings(1) kılavuz sayfasına bakın.
CLI/GUI'yi root olmayan normal bir kullanıcı olarak çalıştırabilir ve nvidia-settings Yapılandırması sekmesi altındaki Mevcut Yapılandırmayı Kaydet seçeneğini kullanarak ayarları ~/.nvidia-settings-rc dosyasına kaydedebilirsiniz.
Mevcut kullanıcı için ~/.nvidia-settings-rc dosyasını yüklemek için:
$ nvidia-settings --load-config-only
Bu komutu her açılışta çalıştırmak için Otomatik Başlatma sayfasına bakın.
nvidia-settings değişikliklerini kaydettikten sonra başlangıçta açılmayabilir veya çökebilir. Oluşturulan ~/.nvidia-settings-rc ve/veya Xorg dosyalarını düzenlemek veya silmek normal başlangıcı geri getirecektir.Manuel yapılandırma (Manual configuration)
Yapılandırma dosyanızı düzenleyerek, otomatik olarak veya nvidia-settings ile etkinleştirilemeyen birkaç ince ayar gerçekleştirebilirsiniz. Herhangi bir değişikliğin uygulanması için Xorg sunucusunun yeniden başlatılması gerekecektir.
Ek ayrıntılar ve seçenekler için NVIDIA Hızlandırılmış Linux Grafik Sürücüsü Beni Oku ve Kurulum Kılavuzu'na bakın.
Minimalist yapılandırma
20-nvidia.conf dosyasındaki (veya kullanımı artık önerilmeyen xorg.conf içindeki) temel bir yapılandırma bloğu şu şekilde görünecektir:
/etc/X11/xorg.conf.d/20-nvidia.conf
Section "Device"
Identifier "NVIDIA Card"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 1050 Ti"
EndSection
Başlangıçta logoyu devre dışı bırakma
Eski bir sürücü (nvidia-340xx-dkmsAUR) kullanıyorsanız, X başlangıcında görüntülenen NVIDIA logo ekranını devre dışı bırakmak isteyebilirsiniz. Bunun için Device bölümünün altına "NoLogo" seçeneğini ekleyin:
Option "NoLogo" "1"
Monitör algılamayı geçersiz kılma (Override)
Device bölümünün altındaki "ConnectedMonitor" seçeneği, X sunucusu başlatıldığında monitör algılama sürecini manuel olarak geçersiz kılmaya yarar; bu da başlangıçta önemli ölçüde zaman kazandırabilir. Mevcut seçenekler şunlardır: analog bağlantılar için "CRT", dijital monitörler için "DFP" ve televizyonlar için "TV".
Aşağıdaki ifade, NVIDIA sürücüsünü başlangıç kontrollerini atlamaya ve monitörü doğrudan DFP (Dijital) olarak tanımaya zorlar:
Option "ConnectedMonitor" "DFP"
Parlaklık kontrolünü etkinleştirme
Çekirdek parametrelerine aşağıdakini ekleyin:
nvidia.NVreg_RegistryDwords=EnableBrightnessControl=1
Alternatif olarak, Device bölümünün altına aşağıdaki satırı ekleyin:
Option "RegistryDwords" "EnableBrightnessControl=1"
Bu seçeneğe rağmen parlaklık kontrolü hala çalışmıyorsa, nvidia-bl-dkmsAUR paketini yüklemeyi deneyin.
/sys/class/backlight/nvidia_backlight/ arayüzü sağlayacaktır; ancak sisteminiz arka ışık kontrol değişikliklerini /sys/class/backlight/acpi_video0/ üzerinde gerçekleştirmeye devam edebilir. Bu durumdaki bir çözüm, inotifywait ile örneğin acpi_video0/brightness üzerindeki değişiklikleri izlemek ve bunları uygun şekilde nvidia_backlight/brightness dosyasına çevirip yazmaktır. Bkz. Arka Işık#sysfs değiştirildi ancak parlaklık değişmedi.SLI Etkinleştirme
NVIDIA sürücüsünün BENİ OKU dosyasından alınmıştır: *Bu seçenek, desteklenen yapılandırmalarda SLI işlemeyi kontrol eder.* "Desteklenen yapılandırma", SLI Sertifikalı bir Anakart ve 2 veya 3 adet SLI Sertifikalı GeForce GPU ile donatılmış bir bilgisayardır.
lspci kullanarak ilk GPU'nun PCI Veriyolu Kimliğini (Bus ID) bulun:
# lspci -d ::03xx
00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (rev 09) 03:00.0 VGA compatible controller: NVIDIA Corporation GK107 [GeForce GTX 650] (rev a1) 04:00.0 VGA compatible controller: NVIDIA Corporation GK107 [GeForce GTX 650] (rev a1) 08:00.0 3D controller: NVIDIA Corporation GM108GLM [Quadro K620M / Quadro M500M] (rev a2)
Device bölümünün altına BusID değerini (önceki örnekteki verilere göre 3) ekleyin:
BusID "PCI:3:0:0"
"PCI:<BusID>:0:0" şeklinde belirtilmelidir.Screen bölümünün altına istediğiniz SLI işleme modu değerini ekleyin:
Option "SLI" "AA"
Aşağıdaki tablo mevcut işleme modlarını göstermektedir:
| Değer | Davranış |
|---|---|
| 0, no, off, false, Single | Görüntü işlenirken yalnızca tek bir GPU kullanır. |
| 1, yes, on, true, Auto | SLI'ı etkinleştirir ve sürücünün uygun işleme modunu otomatik olarak seçmesine izin verir. |
| AFR | SLI'ı etkinleştirir ve alternatif kare işleme (alternate frame rendering) modunu kullanır. |
| SFR | SLI'ı etkinleştirir ve bölünmüş kare işleme (split frame rendering) modunu kullanır. |
| AA | SLI'ı etkinleştirir ve SLI kenar yumuşatmayı (antialiasing) kullanır. Görsel kaliteyi artırmak için bunu tam ekran kenar yumuşatma ile birlikte kullanın. |
Alternatif olarak, bu değişiklikleri tek bir komutla xorg.conf dosyasına işlemek için nvidia-xconfig aracını kullanabilirsiniz:
# nvidia-xconfig --busid=PCI:3:0:0 --sli=AA
SLI modunun etkinleştirildiğini bir kabuk üzerinden doğrulamak için:
$ nvidia-settings -q all | grep SLIMode
Attribute 'SLIMode' (arch:0.0): AA
'SLIMode' is a string attribute.
'SLIMode' is a read-only attribute.
'SLIMode' can use the following target types: X Screen.
Eğer bu yapılandırma çalışmazsa, nvidia-settings tarafından sağlanan PCI Bus ID'yi kullanmanız gerekebilir:
$ nvidia-settings -q all | grep -i pcibus
Attribute 'PCIBus' (host:0[gpu:0]): 101. 'PCIBus' is an integer attribute. 'PCIBus' is a read-only attribute. 'PCIBus' can use the following target types: GPU, SDI Input Device. Attribute 'PCIBus' (host:0[gpu:1]): 23. 'PCIBus' is an integer attribute. 'PCIBus' is a read-only attribute. 'PCIBus' can use the following target types: GPU, SDI Input Device.
Ve xorg.d yapılandırmanızdaki PrimaryGPU seçeneğini yorum satırı haline getirin (devre dışı bırakın):
/usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf
...
Section "OutputClass"
...
# Option "PrimaryGPU" "yes"
...
Bu yapılandırmanın kullanılması, grafiksel önyükleme sorunlarını da çözebilir.
Çoklu monitör (Multiple monitors)
Daha genel bilgiler için Multihead sayfasına bakın.
nvidia-settings Kullanımı
nvidia-settings aracı birden fazla monitörü yapılandırabilir.
Komut satırı (CLI) üzerinden yapılandırma için, öncelikle şu komutu çalıştırarak mevcut CurrentMetaMode değerini alın:
$ nvidia-settings -q CurrentMetaMode
Attribute 'CurrentMetaMode' (hostnmae:0.0): id=50, switchable=no, source=nv-control :: DPY-1: 2880x1620 @2880x1620 +0+0 {ViewPortIn=2880x1620, ViewPortOut=2880x1620+0+0}
:: işaretinden sonraki tüm kısmı özniteliğin sonuna kadar kopyalayın (bu örnekte: DPY-1: 2880x1620 @2880x1620 +0+0 {ViewPortIn=2880x1620, ViewPortOut=2880x1620+0+0}) ve nvidia-settings --assign "CurrentMetaMode=meta_modunuz" komutunu kullanarak ekranlarınızı yeniden yapılandırın.
ConnectedMonitor
Sürücü ikinci bir monitörü düzgün şekilde algılamazsa, ConnectedMonitor seçeneği ile onu algılamaya zorlayabilirsiniz.
/etc/X11/xorg.conf
Section "Monitor"
Identifier "Monitor1"
VendorName "Panasonic"
ModelName "Panasonic MICRON 2100Ex"
HorizSync 30.0 - 121.0 # bu monitörün EDID bilgisi hatalı olduğundan Option "UseEDIDFreqs" "false" yapılmıştır
VertRefresh 50.0 - 160.0
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor2"
VendorName "Gateway"
ModelName "GatewayVX1120"
HorizSync 30.0 - 121.0
VertRefresh 50.0 - 160.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
Option "NoLogo"
Option "UseEDIDFreqs" "false"
Option "ConnectedMonitor" "CRT,CRT"
VendorName "NVIDIA Corporation"
BoardName "GeForce 6200 LE"
BusID "PCI:3:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Device2"
Driver "nvidia"
Option "NoLogo"
Option "UseEDIDFreqs" "false"
Option "ConnectedMonitor" "CRT,CRT"
VendorName "NVIDIA Corporation"
BoardName "GeForce 6200 LE"
BusID "PCI:3:0:0"
Screen 1
EndSection
Screen parametresi ile çoğaltılmış cihaz yapısı, X sunucusunun TwinView olmadan tek bir kartta iki monitör kullanmasını sağlama yöntemidir. Unutmayın ki nvidia-settings aracı, eklediğiniz tüm ConnectedMonitor seçeneklerini temizleyecektir.
TwinView
İki ayrı ekran yerine tek bir büyük ekran istiyorsanız, TwinView bağımsız değişkenini 1 olarak ayarlayın. Kompozisyon (compositing) efektleri kullanmak istiyorsanız bu seçenek tercih edilmelidir. TwinView yalnızca kart bazında çalışır; yani sürece dahil olan tüm monitörlerin aynı karta bağlı olması gerekir.
Option "TwinView" "1"
Örnek yapılandırma:
/etc/X11/xorg.conf.d/10-monitor.conf
Section "ServerLayout"
Identifier "TwinLayout"
Screen 0 "metaScreen" 0 0
EndSection
Section "Monitor"
Identifier "Monitor0"
Option "Enable" "true"
EndSection
Section "Monitor"
Identifier "Monitor1"
Option "Enable" "true"
EndSection
Section "Device"
Identifier "Card0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
#Aşağıdaki seçeneklerin her biri hakkında daha fazla bilgi için aşağıdaki bağlantıya bakın.
Option "HorizSync" "DFP-0: 28-33; DFP-1: 28-33"
Option "VertRefresh" "DFP-0: 43-73; DFP-1: 43-73"
Option "MetaModes" "1920x1080, 1920x1080"
Option "ConnectedMonitor" "DFP-0, DFP-1"
Option "MetaModeOrientation" "DFP-1 LeftOf DFP-0"
EndSection
Section "Screen"
Identifier "metaScreen"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "True"
SubSection "Display"
Limits "1920x1080"
EndSubSection
EndSection
Ayrıntılı bilgi için: Cihaz seçimi bilgileri.
SLI yeteneğine sahip birden fazla kartınız varsa, ayrı kartlara bağlı birden fazla monitörü çalıştırmak mümkündür (örneğin: SLI modunda iki kart ve her birine bağlı birer monitör). "MetaModes" seçeneği, SLI Mosaic modu ile birlikte bunu gerçekleştirmeyi sağlar. Aşağıda, bahsedilen örnek için çalışan ve GNOME ortamını sorunsuz bir şekilde çalıştıran bir yapılandırma yer almaktadır:
/etc/X11/xorg.conf.d/10-monitor.conf
Section "Device"
Identifier "Card A"
Driver "nvidia"
BusID "PCI:1:00:0"
EndSection
Section "Device"
Identifier "Card B"
Driver "nvidia"
BusID "PCI:2:00:0"
EndSection
Section "Monitor"
Identifier "Right Monitor"
EndSection
Section "Monitor"
Identifier "Left Monitor"
EndSection
Section "Screen"
Identifier "Right Screen"
Device "Card A"
Monitor "Right Monitor"
DefaultDepth 24
Option "SLI" "Mosaic"
Option "Stereo" "0"
Option "BaseMosaic" "True"
Option "MetaModes" "GPU-0.DFP-0: 1920x1200+4480+0, GPU-1.DFP-0:1920x1200+0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Left Screen"
Device "Card B"
Monitor "Left Monitor"
DefaultDepth 24
Option "SLI" "Mosaic"
Option "Stereo" "0"
Option "BaseMosaic" "True"
Option "MetaModes" "GPU-0.DFP-0: 1920x1200+4480+0, GPU-1.DFP-0:1920x1200+0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Default"
Screen 0 "Right Screen" 0 0
Option "Xinerama" "0"
EndSection
TwinView kullanırken Dikey Senkronizasyon (V-Sync)
TwinView ve dikey senkronizasyon (nvidia-settings içindeki Sync to VBlank seçeneği) kullanıyorsanız, özdeş iki monitörünüz olmadığı sürece yalnızca tek bir ekranın düzgün şekilde senkronize edildiğini fark edeceksiniz. Her ne kadar nvidia-settings hangi ekranın senkronize edileceğini değiştirmek için bir seçenek (Sync to this display device seçeneği) sunsa da, bu her zaman çalışmaz. Çözüm, başlangıçta ilgili ortam değişkenlerini eklemektir, örneğin /etc/profile dosyasına şunları ekleyin:
export __GL_SYNC_TO_VBLANK=1 export __GL_SYNC_DISPLAY_DEVICE=DFP-0 export VDPAU_NVIDIA_SYNC_DISPLAY_DEVICE=DFP-0
DFP-0 değerini tercih ettiğiniz ekranla değiştirebilirsiniz (DFP-0 genellikle DVI bağlantı noktasıdır ve CRT-0 ise VGA bağlantı noktasıdır). Ekranınızın tanımlayıcısını nvidia-settings içindeki X Server XVideoSettings bölümünden bulabilirsiniz.
TwinView kullanarak Oyun Oynama
TwinView kullanırken tam ekran oyun oynamak istediğinizde, oyunların iki ekranı tek bir büyük ekran olarak algıladığını fark edeceksiniz. Bu teknik olarak doğru olsa da (sanal X ekranı gerçekten de ekranlarınızın birleşik boyutundadır), muhtemelen aynı anda her iki ekranda birden oynamak istemezsiniz.
SDL 1.2 için bu davranışı düzeltmek adına şunu deneyin:
export SDL_VIDEO_FULLSCREEN_HEAD=1
OpenGL için, xorg.conf dosyanızın Device bölümüne uygun Metamodları ekleyin ve X sunucusunu yeniden başlatın:
Option "Metamodes" "1680x1050,1680x1050; 1280x1024,1280x1024; 1680x1050,NULL; 1280x1024,NULL;"
Bahsedilenlerle birlikte veya tek başına işe yarayabilecek bir diğer yöntem ise oyunları ayrı bir X sunucusunda başlatmaktır.
Mosaic modu
Mosaic modu, kompozisyon aktifken birden fazla grafik kartı üzerinde 2'den fazla monitör kullanmanın tek yoludur. Pencere yöneticiniz her bir monitör arasındaki farkı algılayabilir veya algılayamayabilir. Mosaic modu, geçerli bir SLI yapılandırması gerektirir. SLI olmadan Temel (Base) mod kullanılsa bile, GPU'ların hala SLI yeteneğine/uyumluluğuna sahip olması gerekir.
Base Mosaic
Base Mosaic modu, Geforce 8000 serisi veya daha yüksek GPU'lara sahip herhangi bir donanım setinde çalışır. nvidia-setting GUI arayüzünden etkinleştirilemez. Ya nvidia-xconfig komut satırı programını kullanmalı ya da xorg.conf dosyasını el ile düzenlemelisiniz. Metamodlar belirtilmelidir. Aşağıda, her biri 1920x1024 çözünürlükte çalışan ve iki karta ikişer adet DFP bağlı olan 2x2 düzenindeki dört adet DFP için bir örnek verilmiştir:
# nvidia-xconfig --base-mosaic --metamodes="GPU-0.DFP-0: 1920x1024+0+0, GPU-0.DFP-1: 1920x1024+1920+0, GPU-1.DFP-0: 1920x1024+0+1024, GPU-1.DFP-1: 1920x1024+1920+1024"
SLI Mosaic
Bir SLI yapılandırmanız varsa ve her bir GPU bir Quadro FX 5800, Quadro Fermi veya daha yenisiyse, SLI Mosaic modunu kullanabilirsiniz. Bu mod, nvidia-settings GUI içinden veya komut satırından şu şekilde etkinleştirilebilir:
# nvidia-xconfig --sli=Mosaic --metamodes="GPU-0.DFP-0: 1920x1024+0+0, GPU-0.DFP-1: 1920x1024+1920+0, GPU-1.DFP-0: 1920x1024+0+1024, GPU-1.DFP-1: 1920x1024+1920+1024"
NVswitch
AWS üzerindeki H100x8 gibi NVswitch barındıran sistemler için aşağıdakiler gereklidir:
- nvidia-fabricmanager kurulmalıdır
- Fabric manager için gerekli olan eşleşen çekirdek modülü kurulmalıdır
Fabricmanager kurulmadığında, pytorch herhangi bir GPU bulunamadığını raporlayacaktır.
Fabric manager'ı kurmak için:
- NVIDIA'nın resmi adresteki arşivini indirin.
- 555.42.02 sürümü sorunsuz çalışmaktadır.
- Kurulu dosya yolunu düzeltmek için sbin/fm_run_package_installer.sh içindeki kurulum betiğini (script) düzenleyin.
Eşleşen çekirdek sürücüsünü edinmek için:
- nvidia-beta-dkms ve nvidia-utils-beta için AUR depolarını klonlayın (git clone).
- PKGBUILD dosyasını 555.42.02 sürümünü kullanacak şekilde değiştirin.
- Paketleri derleyin ve kurun.
- Sistemi yeniden başlatın.
Son olarak, systemctl enable nvidia-fabricmanager ve systemctl start nvidia-fabricmanager komutlarını çalıştırın; ardından pytorch düzgün bir şekilde çalışacaktır.
İpuçları ve ipuçları
Bkz. NVIDIA/İpuçları ve ipuçları.
Sorun Giderme
Bkz. NVIDIA/Sorun Giderme.