OpenHMPP в GCC - PullRequest
       28

OpenHMPP в GCC

0 голосов
/ 30 января 2012

Суть вопроса такова:

Знаете ли вы какие-либо проекты, направленные на обеспечение поддержки OpenHMPP в GCC? Я также мог бы жить с доступными коммерческими компиляторами, но это очень маловероятно, потому что я предпочитаю Linux, и я хотел бы, чтобы компилятор также поддерживал архитектуры не-x86.

И предыстория:

Я знаю, что люди из OpenCL и CUDA будут ругать меня, но здесь я поделюсь своим опытом / мнением: я занимался некоторыми игрушечными проектами, чтобы войти во многие базовые процессы с использованием CUDA и OpenCL. Я чувствую, что это беспорядок в настройке этих сред разработки (особенно в Linux и особенно, если у вас есть малейшая ошибка в вашей системе). Даже когда вы их настраиваете, запускать их где-либо, кроме вашей среды разработки, непросто. Наконец (и, возможно, самое главное), эти языки очень многословны и утомительны. Я чувствую, что они - сборщик многоядерной обработки. Сравните их с OpenMP, и вы увидите, какими они могут быть на самом деле.

В этот момент на сцену выходит OpenHMPP . Он использует #pragma операторы, такие как OpenMP, и это очень хороший шаг в правильном направлении. Тем не менее, очень трудно найти компиляторы для него. У CAPS Enterprize и Pathscale есть поддержка OpenHMPP, но они очень дороги (4000 евро за CAPS, я не смог найти цену для Pathscale). И поправьте меня, если я ошибаюсь, но CAPS, кажется, поддерживает C, а не C ++.

Итак, мы возвращаемся к сути. Было бы мечтой иметь поддержку OpenHMPP в GCC. Знаете ли вы какие-либо проекты с открытым исходным кодом или какие-либо доступные альтернативы? Возможно даже, знаете ли вы об альтернативах OpenHMPP, которые легче найти поддержку.

1 Ответ

1 голос
/ 07 февраля 2012

Если я вас правильно понимаю, вы ищете способы упростить доступ к ускорительным устройствам, которые могут быть как графическими процессорами, так и многоядерными процессорами.В этой области сейчас много научной работы, в результате чего появилось много публикаций, описывающих такие структуры, однако на самом деле доступны лишь немногие.Фактически, причины, о которых вы говорите, являются основой моего исследования, которое также далеко не завершено или находится в состоянии, используемом кем-либо еще ...

Единственное, что я знаю, это близко к тому, что выискать (используя #pragmas для доступа к ускорителям), будет MGP из пакета Virtual OpenCL .Все остальные решения более навязчивы, поскольку требуют использования их API.У меня еще не было более пристального взгляда на AMP для C ++ , но было бы интересно, если бы он ускорился.

...