I replaced this code with pre-existing code in Parrot which could handle objects as keys.
Net results: I lowered the iterations attempted to 100,000.
Note: this is not entirely fair: it is entirely likely that this code is unoptimized. But what is fair is to note that the original results are not terribly representative either.