Skip to content

Conversation

@SergioMartin86
Copy link

Here I added a cache for read-only (.dat, images, sounds) files to only be loaded into memory once and re-read from there. This reduces the number of I/O accesses to only once per file.

This optimization is not really necessary for normal SDLPop usage as the frequency of I/O access is pretty low. However, it's crucial for the Jaffar bot (and perhaps any other SDLPop based projects) that the I/O accesses are reduced to the minimum possible. In particular, when the bot advances to the new level, it requires re-loading the sprites once per state. Since millions of states advance to the next level at the same time, this breaks the I/O system and crashes the bot. This fix helps in alleviating the pressure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant