'==' is alreadly overloaded for threads, therefore overload.pm is already loaded. As a result, adding ""-overloading doesn't cost anything extra.
As to performance, my tests show that overloading only costs a few percent. However, generating a 'default' string from an object (e.g. 'threads=SCALAR(0xABCDABCD)') is HUGELY expensive. Therefore, I found that for ops like "... $thr ..." and $hash{$thr} there is a greater than 500% speed improvement overall with ""-overloading.
However, while the performance increase is really nice, I like the usabily aspects more.
Remember: There's always one more bug.