@iangilman gechols mentioned a problem in the recent commits that makes tiled images load tiles from every level, 0 - 8, causing a performance hit. I started investigating the issue and found that the problem is in tilesource.getClosestLevel(). The change to allow non-square tiles broke it. On line 335 of tilesource.js, there is a condition checking tilesPerSide.x and tilesPerSide.y and breaking the loop when the compare value exceeds the shortest side of the tiledImage. This differs from the old behavior because it used to compare the value against the longest side. Simply changing the || to an && fixes the problem for us, but without a better understanding of the purpose of getClosestLevel, I don't know if that is the proper fix.