bash.im ithappens.me zadolba.li
7500

Монстр игростроя

13 октября 2011, 08:00

Работает у нас в отделе самописная программка. Работает давно, на довольно древнем железе. Задача программы — рисовать на экране красивую картинку с цифрами и графиками вида «в Багдаде все спокойно». Заведено на неё множество датчиков пожарной и обычной сигнализаций, температуры в помещениях и т. д. Все эти графики софтинка выводит средствами OpenGL, дабы далеко не новый компьютер сильно не тормозил.

Работала программа и не глючила. Но тут накрылся старый монитор — помер от глубокой старости. Поставили новый. Началось! Программа мало того что стала загружать процессор на 100%, так ещё и связь с датчиками стала рваться. В общем, видно было, что компьютеру явно не хватает скорости соблюдать протоколы связи.

Причина тормозов нашлась быстро: старенькая Riva TNT2 аппаратно ускорять разрешения выше 1024×768 не умеет, а при установке нового монитора разрешение переключили в родные 1920×1200. Теоретически программа понимает разрешения вплоть до 2048×1536 и разные соотношения сторон мониторов, но, запрашивая аппаратное ускорение, не проверяет результат, полагая, что уж двумерную графику ускорять не откажется даже старушка TNT2.

Пришлось менять видеокарточку на GeForce Ti 4200 (по тем временам недешёвую). Софтинку нарекли «монстром игростроя».