Ваша лучшая ставка - использовать модуль python multiprocessing
. Превратите это в проблему уменьшения карты, используя рабочий пул для запуска stringdist.levenshtein_norm
над всем в titles
, и каждая функция возвращает (dist,ent)
в виде кортежа. Затем возьмите min()
, который даст вам как минимальный балл, так и запись.
Если вы работаете в системе с 96 ядрами, вы увидите ускорение ≈96x.
Если вы работаете в системе с 1 ядром, вы не увидите ускорения.
Вы также можете сделать это быстрее, переписав stringdist.levenshtein_norm
для работы на GPU или в машинном коде.