Для оптимального использования пропускной способности PCI Express при
17 Окт 2013 - 21:45 Случайный_Гость
Для оптимального использования пропускной способности PCI Express при записи в видео память требуется поддержка режима Write Combining, то есть возможность объединять результаты нескольких циклов записи, сформированных процессором, в пакеты для отправки по PCI Express. Чем больше пакет — тем меньший процент времени работы шины уходит на передачу заголовков пакетов и тем выше производительность.
Необходимое (но не достаточное) условие включения режима Write Combining состоит в том, чтобы диапазон доступа к видео памяти
был подключен в адресное пространство через Prefetchable диапазон моста PCI Express, а печаль наша о том, что в ряде платформ
он подключен через Non-Prefetchable, поэтому получаем статус Uncacheable, запрещающий все виды оптимизации. В этом неоптимальность firmware. Но здесь хотя бы все понятно с точки зрения PCI PnP.
А вот на ряде платформ для включения оптимизации мало переопределить статус региона на Prefetchable и перенастроить
MTRR, надо перенести диапазон доступа к видео памяти выше 4GB, иначе скорость не возрастает. Вот этот факт в рамках классических принципов PCI PnP не объясняется. То есть решение (перенос выше 4GB) найдено, а почему оно помогает, пока не знаем.
Для оптимального использования пропускной способности PCI Express при записи в видео память требуется поддержка режима Write Combining, то есть возможность объединять результаты нескольких циклов записи, сформированных процессором, в пакеты для отправки по PCI Express. Чем больше пакет — тем меньший процент времени работы шины уходит на передачу заголовков пакетов и тем выше производительность.
Необходимое (но не достаточное) условие включения режима Write Combining состоит в том, чтобы диапазон доступа к видео памяти
был подключен в адресное пространство через Prefetchable диапазон моста PCI Express, а печаль наша о том, что в ряде платформ
он подключен через Non-Prefetchable, поэтому получаем статус Uncacheable, запрещающий все виды оптимизации. В этом неоптимальность firmware. Но здесь хотя бы все понятно с точки зрения PCI PnP.
А вот на ряде платформ для включения оптимизации мало переопределить статус региона на Prefetchable и перенастроить
MTRR, надо перенести диапазон доступа к видео памяти выше 4GB, иначе скорость не возрастает. Вот этот факт в рамках классических принципов PCI PnP не объясняется. То есть решение (перенос выше 4GB) найдено, а почему оно помогает, пока не знаем.