Представитель компании NVidia Девид Кирк и профессор UIUC Wen-mei Hwu, выпустили книгу «Программирование Процессоров с Массовым Параллелизмом», которая должна помочь программистам разобраться с принципами использования процессоров с массовым параллелизмом. В книге приводятся примеры с использованием CUDA, но кроме самой CUDA, внимание уделяется и общим проблемам, возникающим при решении прикладных задач.
В этой книжке ничего особенного. с содержанием до 75 стр можно познакомится здесь.
Упомянут опенцл, но в общем довольно скучно. Практически это все есть в нв мануалах. Лично что бы я хотел почитать, так это о таких вещах как
- работа с памятью
- шаблонное, обобщенное и метапрограммирование в куда
Боресков памяти уделил некоторое внимание, но шаблонов от него не дождешься, поскольку он строгий сищьник (без плюсов).
Ну почему же не дождешься - мне например понравились примеры использования шаблонов в CUDA, обсуждавшиеся здесь.
Просто мне не нравится когда строится что-то вроде STL.
Шаблон IMHO - это замена copy-paste кода и в ряде случаев он очень хорош, просто не надо этим злоупотреблять
steps3d > Ну почему же не дождешься - мне например понравились примеры использования > шаблонов в CUDA, обсуждавшиеся здесь.
Мне тоже:)
> Просто мне не нравится когда строится что-то вроде STL.
Правильно, нужно лучше чем стл, обобщеннее. Сейчас есть идеи получше чем указатели на функции или функторы, которые когда-то использовал Степанов, чтоб передавать функции в функции как аргументы.
> Шаблон IMHO - это замена copy-paste кода и в ряде случаев он очень хорош, > просто не надо этим злоупотреблять
Это больше чем замена копипаста, это философия. Конкретно для паралельного программирования это означает возможность замены паралельного кода для простых объектов на последовательный, но для сложных объектов, например можно обращаться не к элементам вектора, а к вектору как целому.
В конечном счете, это означает упрощение программирования.
Книжку Борескова при желании можно в интернете найти в формате djvu.
Как-то на первый взгляд не впечатлило - создается ощущение поверхностности. Как от Тихомировских "трудов"
Klocska
Ты не прав. Для начинающих самое то.
Полезна как справочник по командам компилятора или по устройству памяти, кроме того есть собствненные нетривиальные результаты с примерами кода.
Конечно, у книжки есть и недостатки. Ну, вступление там, с дежурными графиками роста производительности и т.п, но самое главное конечно не это, а то, что не упомянуты вообще собственные достоинства куда, особенно как язык программирования, и его возможности c++ кода, причем на девайсе.
Поэтому меня уже не удивляет, что находятся прогеры, которые шапочно ознакомившиеся с кудой по подобным книгам, берутся утверждать, что опенцл лучше.
В общем эту книжку нужно капитально переписать с включением всех уже известных отнюдь не из мануалов нв с++ возможностей языка и расширить таким образом страниц до 600 минимум.