• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!

YYC-no speed increase

ophelius

Member
After compiling and testing versions of my game in both VM and YYC, I found 0 speed increase. I measured an average of 2500 fps in both cases after a couple minutes of play in each.
My measurement is this code in alarm[10]:
GML:
GameFPS = floor(fps_real);
GameFPSTotal+=GameFPS;
GameFPSCount+=1;
GameFPSAverage = floor(GameFPSTotal / GameFPSCount);
alarm[10] = 20
which calls itself every 20 frames. After a couple minutes of gameplay, the GameFPSAverage variable locks onto a near-fix value.
So what's the issue, what's the point of YYC, does it give speed boosts in only some cases? Is my fps measurement incorrect?
 

8BitWarrior

Member
The YYC can give massive speed boosts for processing of CPU logic, but will have little to no effect on GPU rendering.

So, say for example, if your game had an advanced AI pathfinding system or custom physics system, you'd likely see a 2x-3x (or more) increase in performance.

But if you are drawing tons of things to your screen and saturating the GPU with shaders and the like, you won't see much (if any) difference.

Edit:
Try setting your game's framerate speed to 9999 (just for testing) and see if the results are still the same.
 

ophelius

Member
The YYC can give massive speed boosts for processing of CPU logic, but will have little to no effect on GPU rendering.

So, say for example, if your game had an advanced AI pathfinding system or custom physics system, you'd likely see a 2x-3x (or more) increase in performance.

But if you are drawing tons of things to your screen and saturating the GPU with shaders and the like, you won't see much (if any) difference.

Edit:
Try setting your game's framerate speed to 9999 (just for testing) and see if the results are still the same.
Thank you, it's most likely due to the low cpu logic then, there's no complicated nested loops taking up lots of CPU time.
I already uninstalled VS so can't test. I mean, since I'm getting 2500 in VM anyway, that's plenty for most systems.
 

TsukaYuriko

☄️
Forum Staff
Moderator
Just to make sure: When you say "compiling", you mean exporting your game to .exe and running it from there? Even running it from within the IDE would be fine, as long as it's not in debug mode, as debug mode force-disables YYC.
 

ophelius

Member
Just to make sure: When you say "compiling", you mean exporting your game to .exe and running it from there? Even running it from within the IDE would be fine, as long as it's not in debug mode, as debug mode force-disables YYC.
Yes, exporting to .exe was what I did for both cases
 

kburkhart84

Firehammer Games
I think you now understand the situation then. The YYC export is not going to make things faster since the bottleneck is not in the code/CPU. That said, I would have left VS installed so if you do need the YYC you will have it handy. You might add something more intensive to your project, or on a different project.
 

ophelius

Member
I think you now understand the situation then. The YYC export is not going to make things faster since the bottleneck is not in the code/CPU. That said, I would have left VS installed so if you do need the YYC you will have it handy. You might add something more intensive to your project, or on a different project.
Thank you, the project is done so there's no need for it, and for future projects if I can use extra CPU speed I'll re-install it. Visual Studio is such a bloated piece of software that is best uninstalled if not used. I wish GM just included the necessary VS files needed to compile in YYC, but I'm sure it's a licensing thing. Have you ever looked at the Add/Remove Programs in windows after installing Visual Studio? There's like 30-40 added programs, all these SQL tools and other junk you probably don't need. This was after installing only the most basic recommended options as instructed from a YoYo tutorial.
 

kburkhart84

Firehammer Games
Those details don't really bother me personally. Space is not at a premium like it was years ago...and it doesn't have to be constantly running so it doesn't take up system resources. To each his own I guess.
 
Top