LINUX.ORG.RU
ФорумTalks

grep + CUDA = …

 ,


0

1

Представлен вариант утилиты Grep и связанной с ним реализации регулярных выражений, отличающихся задействованием CUDA для распараллеливания операций и их выноса на плечи GPU. Код утилиты и библиотеки регулярных выражений распространяется под лицензией MIT.

В зависимости от особенностей обрабатываемых данных CUDA grep демонстрирует в 2-10 раз более высокую производительность по сравнению с обычным grep. По сравнению с движком регулярных выражений Perl заявлено о достижении ускорения в 68 раз, но, судя по всему, подобный результат получен из-за ошибок (/^$line$/ вместо /^$re$/) и неверной логики организации циклов (перечитывание файла данных для каждого регулярного выражения) в тестовом файле (представленный на GitHub тестовый файл вообще неработоспособен, но возможно при тестировании использовался исправленный на уровне синтаксиса вариант, но сохранивший логические ошибки).

http://opennet.ru/opennews/art.shtml?num=37076

★★★★★

А как это «ускорение» вкючается? Накладываем патч и запускать с ключом --cuda? Хочется сделать кнопку TURBO и повесить на неё алиас grep=«grep --cuda».

CYB3R ★★★★★
()

CUDA

результат получен из-за ошибок и неверной логики организации циклов

представленный на GitHub тестовый файл вообще неработоспособен

Похоже какой-то первокур свой троечный курсач выложил.

kranky ★★★★★
()

Демонстрирует в 2-10 раз более высокую производительность по сравнению с обычным grep.

В принципе нормальный результат для обработки строк. Правда OpenCL на подобных задачах работает почему-то медленнее SIMP (SSE2).

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от mikhalich

Если ищешь тупо подстроку, то да, упрётся в I/O, а если достаточно сложную регулярку, то в процессор. Вот работу с регулярками и оптимизировали.

iley
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.