Skip to main content

100Hz и nVidia в Linux

Имеем: Debian 5.0.1 с ядром 2.6.29-2-amd64 + nVidia GeForce 8800GT с последними драйверами с сайта производителя (180.51) + 22″ ЭЛТ монитор hp p1230, отлично работающий в разрешении 1600*1200@100Hz. Проблема: невозможность выставить в NVIDIA X Server Settings частоту, большую 85Гц.

01В положении Auto так же получаем 85Гц.

Лезем во всеми любимый /etc/X11/xorg.conf, в секцию Monitor

Section “Monitor”
Identifier     “Monitor0”
VendorName     “Unknown”
ModelName      “Unknown”
HorizSync       28.0 – 33.0
VertRefresh     43.0 – 72.0
Option         “DPMS”
EndSection

Обнаруживаем, что сие абсолютно не соответствует нашему монитору. Гуглим частоты вертикальной и горизонтальной синхронизации под конкретную модель, подставляем их вместо имеющихся, заодно прописываем модель монитора (для удобства и красоты):

Section “Monitor”
Identifier     “Monitor0”
VendorName     “hp”
ModelName      “hp p1230”
HorizSync       30.0 – 140.0
VertRefresh     50.0 – 160.0
Option         “DPMS”
EndSection

Перезапускаем Х-сервер (или комп, хе-хе), обнаруживаем желанные 100Гц в настройках:

02

Применяем – видим, что добились желаемого. Но, увы, при перезапуске иксов или компьютера снова получаем рябь в глазах и 85Гц. Чтобы этого не повторилось, делаем следующее- в консоли набираем:

gtf <x> <y> <@>

где x- разрешение по горизонтали, y- по вертикали и @ – частота в герцах.

Например, для стандартного 19″ 100Гц монитора получим

:~$ gtf 1280 1024 100

# 1280×1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz
Modeline “1280x1024_100.00”  190.96  1280 1376 1520 1760  1024 1025 1028 1085  -HSync +Vsync

в моем случае:

:~$ gtf 1600 1200 100

# 1600×1200 @ 100.00 Hz (GTF) hsync: 127.10 kHz; pclk: 280.64 MHz
Modeline “1600x1200_100.00”  280.64  1600 1728 1904 2208  1200 1201 1204 1271  -HSync +Vsync

Получившуюся строчку “Modeline” мы и запишем в секцию “Monitor”:

Section “Monitor”
Identifier     “Monitor0”
VendorName     “hp”
ModelName      “hp p1230”
HorizSync       30.0 – 140.0
VertRefresh     50.0 – 160.0
ModeLine       “1600x1200_100.00” 280.64 1600 1728 1904 2208 1200 1201 1204 1271 -hsync +vsync
Option         “DPMS”
EndSection

Но и это не всё (: Теперь смотрим на секцию “Screen”:

Section “Screen”
Identifier     “Screen0”
Device         “Device0”
Monitor        “Monitor0”
DefaultDepth    24
SubSection “Display”
Depth       24
EndSubSection
EndSection

Если она выглядит именно так, меняем ее на следующее:

Section “Screen”
Identifier     “Screen0”
Device         “Device0”
Monitor        “Monitor0”
DefaultDepth    24
Option         “TwinView” “0”
Option         “TwinViewXineramaInfoOrder” “CRT-0”
Option         “metamodes” “1600x1200_100.00 +0+0; 1600×1200 +0+0”
SubSection “Display”
Depth       24
EndSubSection
EndSection

В “metamodes” вписываем, естественно, свои собственные значения. То есть для 1280*1024@100Гц это будет “1280x1024_100.00 +0+0; 1280×1024 +0+0”
и аналогично для других разрешений и частот. Для наглядности – весь мой xorg.conf целиком.

2 Комментарии “100Hz и nVidia в Linux

Оставить комментарий

Авторизация через: 

Your email address will not be published. Required fields are marked *