I can recommend Digikam, if you have a lot of photos to deal with it is fantastic.
It is free, fast and covers almost every need.
After naming a few faces it will find matching ones.
It is a mature piece of software so give it a try.
Find it at digiKam