Проблема такая. Разрабатываем программу для управления некоторым процессом и отображением информации о его ходе.
Программа работала под Squeeze вроде нормально.Но для более качественного управления процессом начальник потребовал использовать реальное время. Нашли патч, чтобы добавить в ядро Real Time, собрали ядро, но на мониторе не смогли установить нормальное разрешение, 1600x1200. Попробовали Debian 7 Wheezy, там есть ядро с буквами "rt". С ним как-то через ... файл xorg.conf удалось установить в иксах разрешение монитора 1600x1200. Но обнаружилось, что программа стала ужасно сильно тормозить.Причём оказалось, что основной "тормоз" приходится на вывод растрового изображения через функцию glDrawPixels. Стал проверять с более простой программой. Если под Debian 6 она выводит изображение со скоростью примерно 20 кадров в секунду (и при этом top показывает, что она занимает примерно 50% процессорного времени), то под Debian 7 скорость вывода составляет 1-2 кадра в секунду. И top показывает, что больше 70% процессора занимает Xorg.
Процессор
Код: Выделить всё
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Duo CPU L7500 @ 1.60GHz
stepping : 11
Проверил на ноутбуке ASUS X200MA с процессором Intel Celeron Dual-Core 2 x 2.16 ГГц аналогичная картина (чуть лучше): 2-3 кадра в секунду (top не смотрел)
Проверяли утилитой glxgears. Под Debian 6 показывает в районе 800 FPS, под Debian 7 -- примерно 60 FPS.
На ноутбуке также 60 FPS (там стоит Jessie). На моём рабочем компьютере (с Wheezy) 1300 FPS.
В каком направлении решать эту проблему? Как обеспечить "нормальный" вывод растровой картинки на экран с масштабированием?