Я пытаюсь написать приложение для отображения нескольких видеопотоков, все обновления со скоростью 25 или 30 изображений в секунду.Изображения передаются в элементы управления WPF с использованием Direct3D и некоторого взаимодействия, чтобы избежать использования элемента управления Winforms.По мере добавления большего количества видеопотоков частота кадров каждого элемента управления падает, а процессор на моей машине достигает только около 50%.
Используя Microsoft WPF Performance Suite - инструмент Perforator, может показаться, что, когда частота кадров в видеопотоках начинает падать, уровень добавления грязных прямоугольников выравнивается, как будто достиг максимума для видеокарта.Приложение не выполняет рендеринг программного обеспечения, поэтому может показаться, что общая производительность ограничена способностью графической карты обновлять Dirty Rectangles.
Следовательно, есть параметр или параметр производительности, который можно использовать дляопределить лучшую видеокарту для покупки, чтобы максимизировать производительность для моего приложения?Или это, или есть набор настроек видеокарт, которые повысят производительность?В настоящее время работает с ATI FirePro V4800, который с радостью запустит 16 потоков видео H264 с разрешением 4CIF, но ищет возможность работы до 32.