From the beginning I didn't pay much attention to speed. Of course, I didn't want TmStorage to be slow but I always avoided complexity to prevent hard-to-find bugs from appearing. The end result is a fast storage - at least I think so.
Number of data streams
At the start of development I said to miself that when TmStorage contains one million data streams it must be reasonably fast. Well, I was surprised when I saw that it was very fast at that numbers. Although I havent really measured the times but it doesn't even seem to be slower. I'm very pleased to see that I far exceeded my expectations. I will fill it up with ten million data streams one day.
Size limitations
From the beginning I choosen uint to store sizes to save space. Adding that sizes in TmStorage are expressed in number of blocks (usually 512 bytes per block), not bytes, max storage size and data stream lengths where 2TB for 512 block size. But then I changed it to use long values and raised the limits up into the heavens.