Мне нужна помощь в понимании концепции ядер на графическом процессоре и ядрах в CPU для выполнения параллельных вычислений.GPU против CPU? Количество ядер/потоков в GPU для ускорения вычисления программы?
Когда дело доходит до ядер в CPU, это кажется довольно простым. У меня супер интенсивный цикл «для», который повторяется четыре раза. У меня четыре ядра в процессоре Intel i5 2.26GHz. Я даю один цикл каждому ядру. Каждая из четырех петель не зависит от другой. Boom. У меня теперь есть четыре потока и 100% загрузка процессора (вместо 25% использования процессора только с одним ядром). Мой цикл «for» теперь работает почти в четыре раза быстрее, чем это было бы, если бы я не распараллеливал его. Кстати, для цикла «for» я использовал автоматическую распараллеливание, доступную в Microsoft Visual Studio 2012, как в этом онлайн-примере :(http://msdn.microsoft.com/en-us/library/hh872235.aspx).
В отличие от этого, я даже не знаю количество ядер в графическом процессоре моего ноутбука (Intel Graphics Media Accelerator HD или Intel HD Graphics с общей памятью 1696 МБ), которые я могу использовать для параллельных вычислений. Я даже не знаю правильного способа сравнения GPU с CPU. Когда я вижу «12 @ 500 МГц» рядом с описанием моей видеокарты, интересно, означает ли это, что графическая карта имеет 12 ядер для распараллеливания, которые могут работать как 4 ядра в CPU, за исключением того, что ядра GPU работают на частоте 500 МГц [медленная ] вместо 2,26 ГГц [быстро]? Является ли использование графического процессора сопоставимым с использованием ЦП в диспетчере задач Windows? Я полный новичок, пытающийся использовать библиотеку C++ в visual studio 2012, если это имеет значение. Когда я пишу фактическое программное обеспечение GPU, код распараллеливания выглядит следующим образом :(http://msdn.microsoft.com/en-us/library/hh265137.aspx).
Итак, не могли бы вы заполнить некоторые пробелы или ошибки в моих знаниях или помочь мне сравнить их? Мне не нужен супер-сложный ответ, такой простой, как «Вы не можете сравнивать ядро процессора с ядром GPU из-за пустой пустоты» или «ядро GPU на самом деле не является ядром, как ядро процессора», очень ценим.
Если вы собираетесь приложить усилия, чтобы уменьшить мой вопрос, по крайней мере оставить предложение, объясняющее, почему вы думаете, что это плохо. Этот вопрос довольно открытый, и вы можете обращаться к нему с разных точек зрения. – 2013-04-22 03:03:19
Кроме того, я знаю, что моя видеокарта, стандартная с ноутбуком, - это кусок дерьма. Это не «дискретная графическая карта», способная работать с. Ради этого вопроса, пожалуйста, притворись, что это «законная» карта, которая хорошо работает для выполнения вычислений программ. –
2013-04-22 04:16:31