Uma pesquisa por um arquivo com base em parte de um nome levaria menos de um segundo usando:
locate part-of-name
Observação não use * antes ou depois da string de pesquisa part-of-name .
Há uma etapa preliminar necessária para incluir arquivos adicionados hoje e excluir arquivos excluídos hoje. sudo updatedb deve ser executado nesta situação.
Eu posso criar facilmente uma solução GUI usando zenity que chama o comando locate da área de trabalho.
Como são necessários cerca de 1 segundo para encontrar os arquivos correspondentes com 2 milhões de nomes de arquivos no Ubuntu e duas partições do Windows 10 em meu sistema, um indicador de progresso é desnecessário.

Feito