Для разнообразия выступлю сам в качестве инициатора дискуссии о новой фиче.
В общем дело такое, после многочисленных жалоб на то, что программа ну ОООООЧЕНЬ медленно индексирует в перый раз, я потратил кучу времени на исследования способов ускорения. И на данный момент практически единственный способ ЗАМЕТНО ускорить этот процесс, который мне удалось реально опробовать на практике - это использование видеокарты для распознавания лиц.
У меня сейчас есть работающий прототип программы с использованием технологии CUDA, который работает намного быстрее. Отдельно сам процесс распознавания ускоряется на моем рабочем компьютере от 5 раз (если на фотке одно лицо) до 10 раз и более (если лиц много). Если же измерять весь процесс обработки фотографии полностью, то тут еще очень сильно вносит влияние скорости работы с диском. По моим прикидкам, у меня при считывании фоток с NAS по сети ускорение всего процесса обрабокти фотки с распознаванием идет в 3-4 раза, на SSD будет еще быстрее.
Но, я бы не стал обращаться к вам за вашим мнением, если бы всё было хорошо и не было бы подводных камней. Они, конечно же, есть.
- Работает только на видеокартах NVIDIA, причем возможно не на всех - это еще надо будет тестировать
- На macOS не будет работать в принципе. С Linux-ом сейчас пока вожусь, там свои сложности, пока рано говорить.
- И самое главное, требуются библиотеки CUDA, причем не любые, а определенной версии, с которой собирается программа. Рассчитывать, что они есть у всех, и тем более, заставлять сами скачивать - это не вариант. Нужно их поставлять с собой видимо. А тут начинается самое интересно. Точно пока не смотрел, но там получается ОКОЛО ГИГАБАЙТА библиотек. Одна CuDNN (основная для нейросетей) - пол гига, а там еще штуки четыре нужно.
В общем, я призадумался, что тут делать. Делать размер дистрибутива более гигабайта? Делать отдельный огромный дистрибутив? А нужно ли это кому-то вообще?
В общем, буду рад, если подключитесь к дискуссии. Вам это нужно? Готовы терпеть такой размер дистрибутива для экономии нескольких часов при первичном индексировании?