for life a 55g or a 40g breeder would work, I personally like to give my fish extra room, it seems to make them more active and you can decorate the tank alot more to make it look better. This is the reason I have a 6" Elongatus in a 75g by itself. Another benefit of this is that water conditions dont fluctuate as much so for delicate fish like Piraya, Elongatus and Manuelii larger tanks make them easier to keep happy and water quality higher
A spilo will get to be about 10". they are great fish and should be allowed to swim around. You could keep him in a 20 long for quite a while but when he gets bigger 7-8" he should be in at least a 55g.