Различия между clBLAS и ViennaCL?

Глядя на библиотеки OpenCL, я пытаюсь получить полное представление о каждой из них. В частности, одна библиотека - это clBLAS. Их веб-сайт утверждает, что он реализует методы уровня 1,2 и 3 BLAS. Это замечательно, но ViennaCL также имеет подпрограммы BLAS, решатели линейной алгебры, поддерживает бэкэнды OpenCL и CUDA и является только заголовком. В настоящий момент мне кажется, что нет причины использовать clBLAS вместо ViennaCL, но мне было интересно, есть ли у кого-нибудь причины, по которым можно использовать clBLAS вместо ViennaCL?

Хотя это и похоже, это должно быть продолжением предыдущего вопроса, сравнивая VexCL, Thrust и Boost.Compute.

1 ответ

Решение

clBlas реализован AMD, поэтому можно надеяться, что он будет быстрее на оборудовании AMD. Это, как правило, единственное преимущество реализации поставщика BLAS. К сожалению, здесь, похоже, это не так.

В этом выступлении авторы ViennaCL сообщают, что благодаря своей структуре автонастройки они могут либо опередить clBLAS, либо показать аналогичную производительность.

Другие вопросы по тегам