Когда мы запускаем систему без отрисовки (все части работают кроме конечного копирования на экран) процессор сьеден на 15 %. Когда мы запускаем систему без драйвера (данные читаются из файла) и отрисовка работает - процессор сьеден на 2-4 %. Когда мы запускаем все систему с драйвером и отрисовкой - процессор сьеден на 40%, и количество page faults - 13К/сек.
По моему надо продумать систему работы драйвера с памятью. Не нагружает ли он пулы ядра? Оперативки-то вобще хватает?
Сначала используйте Intel Vtune и счетчики Perfomance самой системы.
Далее подумайте- сумма двух предыдущих нагузок около 20%, но когда они раздельно работают. Однозначно выделяется драйвер. При подключении видео вероятно происходит отъедание Paged пулов ядра на нужды этого видео, а туда еще что-то от вас спроецировано. Если вы проецировали на NonPaged пулы, то вероятно вы довели систему до такого расширения этого пула, что для других процессов не хватает памяти и они свопируются постоянно. Вот и начинается борьба. И не только вашего драйвера и видео, но и всей системы. Отсода и 40%, предыдущие 20% плюс 20% связанных с перегрузкой подсистемы памяти.
Возникает вопрос про page faults- откуда они лезут? Собственно они и стали наверно причиной загрузки процессора. По сравнению с другими случаями этот page faults значительно выше? Если да, то вот и ищите подсистему, которая это устроила. По всей вероятности вам не хватает Paged Pool или разросся Non Paged. Драйвер и видеоподсистема перегружают пулы.