glxgears показал 25091 frames in 5.0 seconds = 5018.131 FPS, но это же не показатель производительности системы. На драйвере 173 она все равно работает быстрее.
А то!
От версии драйвера многое зависит:
http://lna.org.ru/forum/index.php/topic,49.msg3177.html#msg3177http://ubuntuforums.org/showpost.php?p=3892858&postcount=47По своему 100.14.19 помню с такими же впечатлениями после перехода на 173.
После обновления можно скрипт подсунуть, написанный на коленке:
#!/bin/sh
yes | cp -R /usr/share/hwdatabase/videoaliases /usr/share/hwdatabase/videoaliases.bak
find /usr/share/hwdatabase/videoaliases/ -type l \( -not -name "nvidia-173*.xinf" \)| while read lnk; do `rm -f $lnk`; done
Скрипт кривой, в смысле некрасивый, но должен работать (ну не shell-кодер... :( ).
Не катайте его на живой системе, попробуйте скажем в virtualbox.
Первая строка создаёт резервную копию каталога перезаписывая без подтверждения файлы/линки.
Вторая, содержимое:
# ls -l /usr/share/hwdatabase/videoaliases/
итого 24
-rw-r--r-- 1 root root 20867 Авг 5 2011 fglrx.xinf
lrwxrwxrwx 1 root root 37 Июн 5 17:06 nvidia-173.14.31.xinf -> /usr/lib/nvidia_173.14.31/nvidia.xinf
lrwxrwxrwx 1 root root 37 Июн 20 07:19 nvidia-173.14.35.xinf -> /usr/lib/nvidia_173.14.35/nvidia.xinf
lrwxrwxrwx 1 root root 34 Авг 23 21:38 nvidia-295.20.xinf -> /usr/lib/nvidia_295.20/nvidia.xinf
lrwxrwxrwx 1 root root 34 Авг 23 21:38 nvidia-295.59.xinf -> /usr/lib/nvidia_295.59/nvidia.xinf
lrwxrwxrwx 1 root root 34 Авг 23 21:38 nvidia-304.37.xinf -> /usr/lib/nvidia_304.37/nvidia.xinf
lrwxrwxrwx 1 root root 36 Авг 23 21:38 nvidia-96.43.20.xinf -> /usr/lib/nvidia_96.43.20/nvidia.xinf
превращает в:
# ls -l /usr/share/hwdatabase/videoaliases/итого 24
-rw-r--r-- 1 root root 20867 Авг 5 2011 fglrx.xinf
lrwxrwxrwx 1 root root 37 Июн 5 17:06 nvidia-173.14.31.xinf -> /usr/lib/nvidia_173.14.31/nvidia.xinf
lrwxrwxrwx 1 root root 37 Июн 20 07:19 nvidia-173.14.35.xinf -> /usr/lib/nvidia_173.14.35/nvidia.xinf
удаляя из каталога по инверсии выбора: всё что _не_.
Сюда же можно telinit подоткнуть для рестарта. И т.д.
Оно бы хорошо получая на выходе, сделать как-то более красиво:
cd /usr/share/hwdatabase/videoaliases/; find . -type l \( -not -name "nvidia-173*.xinf" \)
./nvidia-295.59.xinf
./nvidia-304.37.xinf
./nvidia-96.43.20.xinf
./nvidia-295.20.xinf
оставляя *173* и fglrx* вне поля зрения, подхватить всё что вылетело на выходе и куда-то перенести для резерва. Но кто захочет мож допишет лучше и стукнет. Если захочет.
Просьба камнями сильно не бросаться.
ЗЫж
Архивирование можно сделать и по-другому:
# cd /usr/share/hwdatabase/videoaliases
# find . -type l \( -not -name "nvidia-173*.xinf" \)| while read lnk; do `7z a not-173.7z $lnk &>/dev/null`; done
Архив будет создаваться в текущем каталоге.
Архивируются только: _не_ "nvidia-173*.xinf" симлинки.
# ls -l
итого 28
-rw-r--r-- 1 root root 20867 Авг 5 2011 fglrx.xinf
-rw-r--r-- 1 root root 356 Авг 24 05:52 not-173.7z
lrwxrwxrwx 1 root root 37 Июн 5 17:06 nvidia-173.14.31.xinf -> /usr/lib/nvidia_173.14.31/nvidia.xinf
lrwxrwxrwx 1 root root 37 Июн 20 07:19 nvidia-173.14.35.xinf -> /usr/lib/nvidia_173.14.35/nvidia.xinf
lrwxrwxrwx 1 root root 34 Авг 24 05:22 nvidia-295.20.xinf -> /usr/lib/nvidia_295.20/nvidia.xinf
lrwxrwxrwx 1 root root 34 Авг 24 05:22 nvidia-295.59.xinf -> /usr/lib/nvidia_295.59/nvidia.xinf
lrwxrwxrwx 1 root root 34 Авг 24 05:22 nvidia-304.37.xinf -> /usr/lib/nvidia_304.37/nvidia.xinf
lrwxrwxrwx 1 root root 36 Авг 24 05:22 nvidia-96.43.20.xinf -> /usr/lib/nvidia_96.43.20/nvidia.xinf
# 7z l not-173.7z
...
Listing archive: not-173.7z
...
Path = not-173.7z
Type = 7z
...
Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
2012-08-24 05:22:56 ....A 34 35 nvidia-295.59.xinf
2012-08-24 05:22:56 ....A 34 35 nvidia-304.37.xinf
2012-08-24 05:22:56 ....A 36 37 nvidia-96.43.20.xinf
2012-08-24 05:22:56 ....A 34 35 nvidia-295.20.xinf
------------------- ----- ------------ ------------ ------------------------
138 142 4 files, 0 folders
После того как эти `_не_ 173` заархивированы, их можно удалить командой приведённой выше.
Но в принципе можно архивировать выборкой все симлинки, а удалять вторым скриптом только ненужное инверсией по маске. Тогда скрипт архивирования сократится до:
# find . -type l | while read lnk; do `7z a nv-symlinks.7z $lnk &>/dev/null`; done
Понятно, что этой строке должна предшествовать строка
cd /usr/share/hwdatabase/videoaliases
поскольку предыдущая ищет симлинки в текущем каталоге.
Станет универсальнее и два файл-скрипта можно разделить на два сценария:
для "оставления" 96.xx.xx или 173.xx.xx
Распаковать архив, при необходимости, можно так:
# 7z x ./archiv.tgz -o/path # без пробела!
Путь после ключа `-o` указывает куда будет происходить распаковка.
В контексте вышесказанного, распаковка должна выполняться с правами root.
В общих случаях формат архива может быть любым из доступных [man 7z; секция Description].
Это всё не рекомендации, это идея. А делать или не делать, дело вкуса...
Никто ж не заставляет...
ЗЗЫж
Единственный геморрой со скриптом/ами возникает с вопросом:
Какой драйвер для какой видеокарты? Какой оставить?
Здесь придётся лезть в
/usr/share/doc/nvidia_glx_{version}/README.txt
и в районе секции
Acknowledgements
что чуть дальше середины файла, искать свою видеокарту.
Поиск лучше начинать с README.txt для меньшей версии драйвера (через less по find).
Если ваша видеокарта поддерживается всеми тремя версиями драйверов, что уж совсем невероятно, попробуйте их все три, прогнав в самых различных задачах включая бенчмарки и оставьте лучший по результату.
Посмотреть, что за железяка
# hwinfo --gfxcard|grep Model:
# hwinfo --gfxcard|grep Device:
или
# lshw
секция дисплей.
Здесь сложностей никаких: не стоит бояться самого себя.
:)
(Нехорошая идея дописывания всего этого, делалась для того, чтобы не превращать "записки на коленках" в разбросанную по всему форуму помойку
Целью записок ставилась, оптимизация системы под себя. Что понятно, это мизерная её часть.).