You can try using multiple sprites to draw each tile, rather than using one sprite to draw each tile, in order to further increase execution speed, at the cost of memory.
This can be accomplished by either using separate sprites for each tile, or, optimally, by using separate sprites for each frame in the sprite sheet.