We had to stick to Corona 2744 because it was the last one to support XCode 6.4. Recently we got a green light to upgrade to the newest XCode and so we did, updating corona to 3067.
After the upgrade, we saw a rather large performance deterioration regarding version 2744. I didn't expect it to be Corona, though it were the new version of libraries we used or just the change to XCode 8.
During gameplay, we heavily rely on physics, every half of a second we take a screenshot [not write it to disk, kept in memory], and we load another chunk of level definition. Not sure if it's connected, but every few seconds [or often] there's a few ms hiccup. It's clearly visible, especially on iPhone 6 plus. This makes the gameplay stuttering and we just decided to move back to 2744.
Today, however, I have finished preparing the Android release and again, tried updating to the latest Corona. I was quite amazed to see the exact behavior. I was using my Galaxy S8 for testing - every few seconds or often there was a clear hiccup.
I have decided to try to substitute the new libcorona.so file with the one coming from version 2744. To no surprise - everything works perfectly fluid even on our old devices.
I am not going to go through all of the versions one by one now to determine when it happened because I don't have time for this now, but maybe you would know what's wrong. There's a lot of performance to gain there.
We are trying to remove some of the functionalities we think could cause this, and that we can actually remove. I am quite certain it's connected to the loading of chunks, but we will see.