2012-10-11 2 views
2

Я пытаюсь измерить PCIe пропускной способности на ATI FirePro 8750. АМД пример приложения PCIeBandwidth в SDK измеряет пропускную способность трансфертов из:PCIe Пропускная способность на ATI FirePro

  1. хоста к устройству, используя clEnqueueReadBuffer().
  2. Устройство для размещения, используя clEnqueueWriteBuffer().

В моей системе (Windows 7, Intel Core2Duo 32 бит) выход приходит так:

Selected Platform Vendor : Advanced Micro Devices, Inc. 
Device 0 : ATI RV770 
Host to device : 0.412435 GB/s 
Device to host : 0.792844 GB/s 

Эта конкретная карта 2 Гб DRAM и максимальная тактовая частота составляет 750 МГц

1- Почему ширина полосы частот различна в каждом направлении?

2- Почему Bandwdith такой маленький?

Также я понимаю, что это сообщение происходит через DMA, поэтому на пропускную способность не может влиять процессор.

+0

Какой процессор вы используете? Процессор часто может столкнуться с недостатком передачи PCIe, если он достаточно плох. – KLee1

+0

Передача происходит через DMA, (буферы всегда закреплены перед этой передачей), как это имеет значение, является ли процессор плохим или хорошим – gpuguy

+0

Ваш GPU находится на перекрестке x16 .. правильно? – Thomas

ответ

0

Этот paper из исследовательских лабораторий Microsoft дает некоторые сведения о том, почему существует асимметричная пропускная способность передачи данных PCIe между GPU-CPU. В документе описываются показатели производительности для полосы пропускания данных FPGA - GPU по PCIe. Он также включает показатели от пропускной способности передачи данных CPU-GPU по сравнению с PCIe.

Цитируя соответствующий раздел

«следует также отметить, что сами по себе также переводы GPU-CPU показывают некоторую степень асимметричного поведения. В случае передачи графического процессора в CPU , где GPU инициирует запись основной записи шины, графический процессор достигает максимума 6.18 GByte/Sec. В противоположном направлении от процессора к графическому процессору графический процессор инициирует чтение основной шины, и результирующая ширина полосы пропускания падает до 5,61 GByte/Sec. В наших наблюдениях обычно бывает, что записи master более эффективны, чем чтение шины, для любой реализации PCIe из-за служебных данных протокола и относительной сложности реализации . Хотя возможное решение этой асимметрии было бы для обработки CPU в направлении GPU с использованием начального начального начального уровня CPU , этот аппаратный комплекс не доступен в архитектуре ПК в целом. '

Ответ на второй вопрос о пропускной способности может быть обусловлен единицами размера передачи данных. См. Рис. 2,3,4 и 5. Я также видел такие графики на первой конференции AMD Fusion. Объяснение заключается в том, что передача данных PCIe имеет накладные расходы из-за протокола и задержки устройства. Накладные расходы более значительны для небольших размеров переноса и становятся менее значимыми для больших размеров.

Какие рычаги вы должны контролировать или улучшать производительность?

Получение правого комбинированного чипа/материнской платы и графического процессора является рычагом H/W. Чипы с максимальным количеством дорожек PCIe лучше. Используя более высокий стандарт PCIe, PCIe 3.0 лучше, чем PCIe 2.0. Все компоненты должны поддерживать более высокие стандарты.

Как программист, контролирующий размер передачи данных, является очень важным рычагом.

Размеры передачи 128 КБ - 256 Кбайт составляют примерно 50% максимальной пропускной способности. Передача 1M - 2M байт превышает 90% максимальной пропускной способности.

Смежные вопросы