Vista, Win7, Sever2008, etc & 2D flicker problem on GeForce

Обсуждение проблем видеокарт, драйверов и всего, что с ними связано.

Модераторы: max-sever, iStalker, andser

Ответить
indb
Новичок
Сообщения: 2
Зарегистрирован: 17.11.2010 9:35
Контактная информация:

Vista, Win7, Sever2008, etc & 2D flicker problem on GeForce

Сообщение indb » 17.11.2010 10:22

Здравствуйте!

Я являюсь обладателем довольно старенькой на сегодняшний день видеокарты - MSI GeForce 8600 GTS, но все остальное железо у меня более-менее свежее (мать от ASUStek+CPU AMD Phenom II x6 1055T+8Gb RAM DDR3). С момента выхода ОС Vista я заметил один глюк в системе рендеринга 2D графики. Я имею ввиду то как отрисовываются стандартные элементы управления и их составляющие - строки состояния, лэйблы, узлы дерева и их картинки. Все они заметно мерцают при своей перерисовке. На Vista & Win7 ОС я всегда использую стандартный классический вид, безо всяких theme patches и Aero фич, в общем, как на Windows 2000. У меня включено полное аппаратное ускорение, установлены свежие драйвер и DirectX, система полностью пропатчена с Windows Update.

Ни на одной из прежних ОСей, включая XP, Server 2003, даже на FreeBSD и других unix-оподбных интерфейс не отрисовывается так медленно, что можно заметить подобное мерцание, даже на таких мамонтах вроде Riva 128 или Riva TNT. Насколько я в курсе в новых ОСях произошли серьезные изменения в отношении модели драйверов и механизма рендеринга изображения (чертов Aero!) и честно говоря, я очень надеялся, что после того как этот глюк появился в Vista его исправят в Win7/Server2008(R2), но судя по всему воз и ныне там.

Воспроизвести этот баг очень легко: отключите все Aero примочки и переключитесь в классический вид ОС затем откройте любое стандартное приложение, вроде оснастки управления системой (Компьютер(Computer)-ПКМ->Управление(Manage)) или менеджера устройств и поводите мышью на узлами дерева и их картинками. У меня при движении мышью над элементами управления четко заметно мерцание при перерисовке тех узлов, где была мышь. Если данный пример вас не убедил, откройте настройки foobar2000 и перейдите на вкладку, где отображается большим шрифтом надпись с полным временем, которое плеер затратил на воспроизведение музыки - надпись периодически перерисовывается и постоянно мерцает, даже мышью водить не нужно. В VMWare Workstation (6, 7) картинки в строке состояния, которые отображают дисковую или сетевую активность тоже мерцают при перерисовке, когда отображают соответствующую активность.

Ни один из этих "спец.эффектов" не наблюдается в XP или 2003 Server и, возможно (этот момент я еще раз перепроверю), когда в win7/Server2008 отстуствует какой-либо драйвер, кроме стандартного VGA, на этих же самых приложениях.

Вот я и думаю, что это может быть: глюк в ОС, в моей видеокарте, в дровах? Я, конечно, понимаю, что моя видюшка уже пожилая, но в игры я не играю, так что мне без надобности даже все ее навороты. И тем не менее, скажите это у всех так или я один такой, у которого наблюдается подобное. Может, ради того, чтобы народ переползал на Aero Microsoft где-то залочила двойную буферизацию и ее можно включить каким-нибудь твикером или с помощью параметра в реестре?

Не покупать же мне ради отрисовки кнопочек связку из двух GeForce 580GTX...

Спасибо!

GergXX
Участник
Сообщения: 137
Зарегистрирован: 10.11.2009 22:02
Контактная информация:

Re: Vista, Win7, Sever2008, etc & 2D flicker problem on GeForce

Сообщение GergXX » 17.11.2010 22:11

indb писал(а):скажите это у всех так
да, ибо "рабочий стол" при этом считается через GDI то бишь процом.
Сие есть тяжелое наследие царского режима и оставлено для обратной совместимости.
indb писал(а):но в игры я не играю
и чего тогда экономить ресурсы видюхи?(на самомом деле в нынешнем виде Аэро и играм не мешает)
да и классический вид у vista/7 в сравнении с ХР-шным какой-то небрежный чтоль.
лично я на этот вопрос давно плюнул, привык.

з.ы. небольшой эксперимент:
1. открываем taskman,выбираем закладку "производительность", хватаем taskman за заголовок
2. быстро-быстро,петлями, кольцами и т.д. таскаем его по экрану
3. смотрим на график загрузки ЦП
4. включаем Aero
5. повторяем п. 2-3
6. чувствуем разницу.

DrEvil
Администратор Judge Dredd
Сообщения: 17062
Зарегистрирован: 17.01.2003 11:52
Контактная информация:

Re: Vista, Win7, Sever2008, etc & 2D flicker problem on GeForce

Сообщение DrEvil » 18.11.2010 0:46

indb
В http://www.thg.ru/graphic/index.html есть серия статей (три штуки), под названием «Проблемы 2D-ускорения в Windows». Вкратце: если под XP и ранее интерфейс отрисовывался с ускорением вывода примитивов, то в Vista/7 оно не работает, как по причинам забивания в драйверах вендоров, так и по ограничениям самой системы. При использовании DWM (Aero) проблема обычно незаметна лишь потому, что ускорение используется для вывода на экран всей картинки (composition) целиком, вместо дерганья железа на обновлении каждого примитива, это главные затраты процессорного времени. А так и при Aero 2D-ускорения по большому счёту нет — только если само приложение заюзает интерфейсы вроде Direct2D (Office 2010, IE 9 и т.п.).

indb
Новичок
Сообщения: 2
Зарегистрирован: 17.11.2010 9:35
Контактная информация:

Re: Vista, Win7, Sever2008, etc & 2D flicker problem on GeForce

Сообщение indb » 18.11.2010 11:14

2 GergXX
мне не жалко ресурсов на Aero, мне он просто не нравится своей неэргономичностью в расходовании пространства монитора на всякую бесполезную фигню, которую я предпочитаю занимать, например, парой-другой лишних строк кода в каком-нибудь редакторе или парой-другой десятков строк пикселей обрабатываемого изображения.
Согласен, что сделан 2D интерфейс крайне небрежно, по сравнению с XP и другими аналогичными ОС и в большей степени здесь виновником выступает шрифт Segoe, который удается отключить далеко не для всех программ и стандартных окон. В частности в Event Manager'e это не прокатывает. Я тоже пробовал приучать себя к темам в XP и даже долго сидел на Silver, потом пробовал Aero, как в простой, так и в полной версии, но каждый раз возращаюсь к классике и нахожу, что производительность, как машины так и моя собственная, максимальны именно на старом интерфейсе. Даже на работе прописал его в групповых политиках как интерфейс по умолчанию, никто из 90 юзверей не жалуется.
Есть такая мудрая мысль, что к хорошему привыкаешь быстро, а раз здесь приходится себя заставлять юзать это, значит и ничего хорошего в этом нет.

Из всех фич интерфейса я включаю только отрасывание тени значками на столе и непрозразрачный прямоугольник при выделении, все остальное в баню, поэтому как бы интенсивно я ни крутил окно taskmanager'a двигающаяся рамка окна мой 6-и ядрный проц сильно не загрузит.

2 DrEvil
Спасибо за статью, обязательно ознакомлюсь.

В очередной раз убеждаюсь, что Microsoft уже давно не торт и делает все, что удобно только им и пользователям имбицилам, но не профессионалам, которым приходиться обслуживать их системы по 10 и более лет.

Спасибо всем откликнувшимся!

Ответить