Poor 'move' performance in 4.0+ engines?
Posted: Mon Feb 08, 2010 12:12 am
I have an application that has functionality to scroll text across the bottom of the screen...something like the news scrolls you see on cable news networks.
I accomplish this with a field and the move command. Of late I have been working with windows 7 machines that have very fast dual core processors and dedicated GPU's. I have had a problem though where my scrolling text has become very jerky. It is not moving nearly as smooth as some of my existing installations which are on lesser machines.
At first I was thinking it was a difference in the new OS and possibly graphics drivers, but I'm not so sure now...
In trying to figure out what the heck has happened, I think I'm coming to the conclusion that the 4.0 and beyond rev engines' 'move' command is not working nearly as efficiently as previous rev builds. Since I have not updated some of my existing installations yet, they are still using a version of my software that was built with pre-4.0 rev engines. My testing would indicate that this is the culprit. (I have existing installations on both XP and Vista. It seems that the Vista machines with builds using the 3.5 engine have much smoother 'move' action than the Vista machines with 4.0 engine builds)
I'm seeing such a disparity that I am surprised that folks that may be programming games or other applications that involve moving objects have not noticed a deterioration in the smoothness of their moving objects in rev 4.0.
I'm trying to quantify/document the poorer performance to file a bug report. Maybe since my fields are rather large, the poorer 'move' performance is magnified as compared to others that may be 'move'ing smaller objects.
I take note that the architecture of a standalone in 4.0 rev has significantly changed relative to earlier rev builds.
Can anyone help confirm or deny the existence of jerky object movement in 4.0 engines vs. previous rev builds?
Thanks!
EDIT: A final PS: In testing, I have coded a small routine with a repeat loop that contains a 'wait with messages' in it to control the scroll speed; it increments the position of the field's location to create movement. This routine moves the field across the screen absolutely smoothly without jerkiness vastly beyond what I can accomplish with a simple 'move' command. I'm semi-appalled that I can code 'manual' movement in a handler and end up with performance that so vastly outperforms a single move statement. I would've thought that the engine doing the movement would/should be better than anything I can code manually in a handler, but this is not the case...
I accomplish this with a field and the move command. Of late I have been working with windows 7 machines that have very fast dual core processors and dedicated GPU's. I have had a problem though where my scrolling text has become very jerky. It is not moving nearly as smooth as some of my existing installations which are on lesser machines.
At first I was thinking it was a difference in the new OS and possibly graphics drivers, but I'm not so sure now...
In trying to figure out what the heck has happened, I think I'm coming to the conclusion that the 4.0 and beyond rev engines' 'move' command is not working nearly as efficiently as previous rev builds. Since I have not updated some of my existing installations yet, they are still using a version of my software that was built with pre-4.0 rev engines. My testing would indicate that this is the culprit. (I have existing installations on both XP and Vista. It seems that the Vista machines with builds using the 3.5 engine have much smoother 'move' action than the Vista machines with 4.0 engine builds)
I'm seeing such a disparity that I am surprised that folks that may be programming games or other applications that involve moving objects have not noticed a deterioration in the smoothness of their moving objects in rev 4.0.
I'm trying to quantify/document the poorer performance to file a bug report. Maybe since my fields are rather large, the poorer 'move' performance is magnified as compared to others that may be 'move'ing smaller objects.
I take note that the architecture of a standalone in 4.0 rev has significantly changed relative to earlier rev builds.
Can anyone help confirm or deny the existence of jerky object movement in 4.0 engines vs. previous rev builds?
Thanks!
EDIT: A final PS: In testing, I have coded a small routine with a repeat loop that contains a 'wait with messages' in it to control the scroll speed; it increments the position of the field's location to create movement. This routine moves the field across the screen absolutely smoothly without jerkiness vastly beyond what I can accomplish with a simple 'move' command. I'm semi-appalled that I can code 'manual' movement in a handler and end up with performance that so vastly outperforms a single move statement. I would've thought that the engine doing the movement would/should be better than anything I can code manually in a handler, but this is not the case...