Replies: 6 (Who?), Viewed: 3893 times.
Mad Poster
Original Poster
#1 Old 24th Feb 2015 at 4:39 AM Last edited by nitromon : 24th Feb 2015 at 9:18 AM.
Default Increasing Cache, Reducing/Eliminating Error 12
I'm not sure if anyone has done this yet. I read around the web and some people have tried, but couldn't get it to work. The trick is to modify the correct default.ini file. There seems to be some benefits, most notable is the reduction/elimination of error 12, but I would like more data if anyone would join me in this test.

Synopsis:
We are going to increase the SimCompositorCache.package and the CompositorCache.package file and see if it will benefit the game.

Modification: (Please make a backup before any modification)
You must modify the default.ini file in your latest installed EP/SP (whichever is on your loading screen). I don't own any SP, so I'm only assuming this part. My latest EP is ITF, so I will modify the default.ini in Program Files\Electronic Arts\The Sims 3 Into the Future\Game\Bin. In order to test the change, the game must be played on an EA world. Custom world saves their cache in the world cache folder (which can be modified in the same way, but for the purpose of the test I only tested EA main world.)

File:
[CAS]
CompositorCacheSize = 104857600 <-- This is the objects cache. It is currently 100MB in comparison to the custom world objects cache which is 500MB. The reason, I'm guessing, is EA uses a standard size for their world while a custom world can be a lot bigger so they set it 5x larger. However, it is good to set this size to at least the same as a custom world cache at 500MB, especially if you've made several modifications to your homeworld. In my Bridgeport (with extensive modification), this size has reached 463MB, so it can definitely use more.

SimCompositorCacheSize = 524288000 <-- This is the sims cache. It is currently set at 500MB. I'm guessing this is saving several things from script to even texture details. I have only tested it at 1GB and it fills up quickly to the 1GB limit. Any modification we make here is only setting the "max" size, the game will only use up to the limit we set.

WorldCompositorCacheSize = 524288000 <-- same as compositorcachesize except for custom worlds, for this test we will not touch it.
SimWorldCompositorCacheSize = 524288000 <-- same as simcompositorcachesize except for custom worlds, for this test we will not touch it.

Change to:
[CAS]
CompositorCacheSize = 524288000 (Match the world cache object cache)
SimCompositorCacheSize = 524288000 (Increase by 100MB (104857600) at a time to find sweet spot)

Both are set to 1 GB each. The compositorcache has never reached that high, at most 500MB, but it shouldn't affect the test since the number we're setting is the max cap. The simcompositorcache will definitely reach the 1GB mark, which means it might be able to use more than 1 GB. Increase by 100MB at a time (refer to the bottom of this post) After making this change, save the file. You do not need to delete the cache, we simply raise the max cap and the game will continue to fill the cache. Open the window explorer and observe the two caches while you play, if they're increasing it means it is working.


Results:
Gameplay: There seem to be some increase in gameplay, but I cannot confirm. If anyone testing this, I would really appreciate your data. The compositorcache should make object rendering faster. I have noticed that the Bridgeport shells tend to load faster, etc... but I'm not definitely sure. The simcompositorcache will reduce the number of low-res sim shells, loads the sims much faster. Can't confirm.

Saving/Error 12: This is where majority of the benefit lies. I tested this run on Bridgeport during a blizzard winter storm. In the original setting, I can play around 1 day, at most 2... if I push it to 3 days without saving, it pretty much will use 3.2-4GB of RAM and thus unable to save with Error 12. I just ran the game now with 1GB cache for both and the game never exceeded 3GB. And the most surprising thing is, the memory usage dropped when I saved rather than increased to about 2.3GB. On average, it is hovering around 2.5GB. This pretty much eliminates Error 12 on my game.

I would appreciate anyone else who would want to help test this. If this test is true, it will greatly benefit pretty much anyone who plays TS3, but especially those with many CC/mods and/or running on older systems that may not have a lot of RAM but can spare the HDD space. For people with a lot of RAM, this can be combined with the RAMdisk Thread for maximum efficiency.

EDIT:
After some more testing, increasing these files should actually be decreasing performance. I didn't notice earlier b/c I have my cache on a RAMdisk. The theory is, instead of filling up your RAM and then using the cache for the overspill, it just caches to the HDD first. If you can run TS3 at 4GB (around 3.2-4GB), then with 1GB setting above, the game runs at 2.5GB RAM, wasting about 700MB of RAM and using your HDD instead.

However, increasing the cache will stabilize the game, especially for those using a lot of cc/mods, to prevent error 12. Thus the trade off... decrease in performance but reduce/eliminate error 12.

So, the best way is to find that "sweet spot." This sweet spot would differ depending on how much RAM, CC, and mods you have. For people who can run the game at 4GB, error 12 occurs around 3.2-3.4GB, so you want to modify the cache file so that at maximum memory usage (most sims on a lot, blizzard condition), it uses approx 3.2GB or lower. I recommend increasing the cache size by 100MB at a time, to reach the sweet spot.
Advertisement
Instructor
#2 Old 24th Feb 2015 at 6:04 AM
Quote:
Originally Posted by nitromon
Modification: (Please make a backup before any modification)
You must modify the default.ini file in your latest installed EP/SP (whichever is on your loading screen). I don't own any SP, so I'm only assuming this part. My latest EP is ITF, so I will modify the default.ini in Program Files\Electronic Arts\The Sims 3 Into the Future\Game\Bin. In order to test the change, the game must be played on an EA world. Custom world saves their cache in the world cache folder (which can be modified in the same way, but for the purpose of the test I only tested EA main world.)


Why it's only the latest one? I didn't have ITF installed (though I have the game) so my latest EP would be IP, but I have Movie Stuff installed, so which one do I need to modified? The EP IP or SP Movie one?
Mad Poster
Original Poster
#3 Old 24th Feb 2015 at 6:17 AM
Quote:
Originally Posted by PapaEmy
Why it's only the latest one? I didn't have ITF installed (though I have the game) so my latest EP would be IP, but I have Movie Stuff installed, so which one do I need to modified? The EP IP or SP Movie one?


I don't know.

I don't own any SPs.

What does your loading screen say? Does the move stuff directory have a game/bin/default.ini? Try one, if the cache size didn't increase, then it is the wrong one.
Instructor
#4 Old 24th Feb 2015 at 1:26 PM
Quote:
Originally Posted by nitromon
What does your loading screen say? Does the move stuff directory have a game/bin/default.ini? Try one, if the cache size didn't increase, then it is the wrong one.


My loading screen say is "Movie Stuff", and yes it does have one, every EP and SP does have one each, that's why I asked caused I'm a bit confused, I will try later on today, I'm just still trying to understand how does it works, because my game is patched to 1.67 already, and with the latest patch installed, shouldn't we be testing the one that are located in the BG instead?





Because the CompatVersion and WorldBuilderCompatibilityVersion are newer on the Base Game.

I know that theoretically this trick would decreased the game performance, but I think if this is to be added as an optional to the usage of RAMDisk, I think it would actually increased the game performance.., but in the expense of buying another additional RAM..
Mad Poster
Original Poster
#5 Old 24th Feb 2015 at 9:19 PM
Quote:
Originally Posted by PapaEmy
because my game is patched to 1.67 already, and with the latest patch installed, shouldn't we be testing the one that are located in the BG instead?


Theoretically yes, but *shrug*. I think this is what stumped most people trying to change the cache size. They keep saying they changed it, but nothing happens. I did the same thing, I tested it on the BG and nothing happens, so I decided to change the ITF one instead.


Quote:
I know that theoretically this trick would decreased the game performance, but I think if this is to be added as an optional to the usage of RAMDisk, I think it would actually increased the game performance.., but in the expense of buying another additional RAM..


I think this is the part where more data is needed, hopefully more people will test this too. People on RAMdisk will definitely benefit more from this, however RAMdisk is not as fast as direct RAM access, especially for those like me using "hdd emulation." Also, it increases how many times it caches, not just how long it caches, so having more read/write access is slower than simply not read/write at all. I think changing the cache size is only necessary for people who are having Error 12. I set my sweet spot at 700MB for the simcompositor, this way my game will never reach beyond 3.2GB. When setting it at 1GB, I did notice some slight stuttering in the game.
Mad Poster
#6 Old 1st Jan 2017 at 1:59 PM
I know it's been a while, but do we have any idea what the other values do? I could make a guess at what [Script]/HeapSize, [Resources]/CacheBudget, and [FrameDatabase]/BlockSize do, but I bet it's best to leave them alone instead of going on an adventure of mad experimentation.

insert signature here
( Join my dumb Discord server if you're into the whole procrastination thing. But like, maybe tomorrow. )
Mad Poster
Original Poster
#7 Old 2nd Jan 2017 at 12:43 AM
No, I stopped testing this a long time ago. The only modification I made to my game is making the basegame cache the same size as worldcache. That's about it.

Sanity is overrated.

Nitromon is a type of Pokemon encountered in the Pokemon Nitrome Version series.

There. Mystery solved.
Back to top