Я только начинаю изучать C++ AMP, и у меня есть несколько примеров, которые я создал с помощью VS 2012 RC, но я обнаружил, что производительность графического процессора ниже, чем у процессора. Например, примеры Кейт Грегори:http://ampbook.codeplex.com/releases/view/90595(имеет отношение к ее будущей книгеhttp://www.gregcons.com/cppamp/). Они были продемонстрированы ею на лекции, которую я смотрел, где она добилась ~5-кратного повышения производительности для примера из главы 4 с помощью графического процессора своего ноутбука (Кажется, она сказала, что это 6650 )по сравнению с процессором (не знаю, какой у нее процессор ). Я пробовал протестировать пример сам и на нескольких системных конфигурациях (, как показано ниже ). Я всегда обнаруживал, что ЦП работает быстрее. Я также проверил другие примеры и нашел то же самое. Я делаю что-то неправильно? Есть ли причина более медленной, чем ожидалось, производительности? У кого-нибудь есть пример, который определенно показывает, что GPU работает быстрее?
Пример результатов :результаты проекта главы 4: 1,15 мс ЦП, 2,57 мс ГП, 2,55 мс ГП с тайлированием.
Изменить:
Дох, я думаю, что только что нашел причину, по которой -значения размера матриц, которые она использовала в лекции, были другими. В образце на веб-сайте используется M=N=W=64. Если я использую 64, 512 и 256, как она делала в лекции, то я получаю соответствующее ~5-кратное увеличение производительности.