Данная библиотека содержит функцию L1Distance, вычисляющую расстояние между векторами разных типов. В отличии от наивной реализации, библиотека использует SSE и работает существенно быстрее. Для сравнения можно посмотреть результаты бенчмарка.
Типичное использование - замена кусков кода вроде:
for (int i = 0; i < len; i++)
dist += std::abs(a[i] - b[i]);
на существенно более эффективный вызов L1Distance(a, b, len)
.
Работает для типов i8, ui8, i32, ui32, float, double.