питонисту?
У меня была база из миллиона записей. Каждая запись это многомерная матрица.
При каждом запросе надо было делать скалярное умножение входящей матрицы на каждую из миллиона и выводить все у кого результат наиболее близок.
Операция процессорозависимая, соответственно, нужны потоки/процессы.
А чтобы весь этот миллион не грузить в каждом процессе - его грузил в shrmem, а дальше уже форкался и все дочерние работали с одним массивом в памяти.
Экономия, как говорится, на лице.
С вставкой/удалением конечно пришлось повозиться.
Интересно, какому такому сервису понадобилось перемножать матрицы
Элементарно. Поиск по лицам. Матрицы - это результат работы нейронки. Чем ближе к нулю(или единице) результат умножения и свёртки - тем больше совпадает морда лица.
Конечно же numpy.
Обсуждают сегодня