Hi,
Since it said that search engines treat subdomains as different stand-alone sites,
** Search engines could treat subdomains as different stand alone sites. Usually they don't. A good example when they do that is the blogspot subdomains - and that is because those are in fact separate stand alone sites.
In your case however, since it's about users, similar with blogspot somehow - google can treat them at som point as separate websites.
whats best for the main site? to show multiple search results with profiles in subdomains or subdirectories?
** My personal opinion is that from a user point of view you should go with the subdomains as you do right now - it make sense, it's easy for them to use those urls, to link to them and so on.
You could lose some link equity for the main domain if some or all subdomain will be at some point treated as separate domains but if you put everything on a scale, it will balance as advantages on the subdomain approach anyway.
What if i use both? meaning in search results i use search directory url for each profile while same time each profile owns a subdomains as well? and if so which one should be the canonical?
** To be honest I do see the point / advantages in doing that.
One other advantage is that if you go with subdomains and google will count them as separate websites, if one of your user is ding something stupid (trying to rank with it and start building gambling and porn links to that sub domain you will be safe with the root domain and the other users won't be affected.
Hope it helps.
Edited to underline the word could