Jump to content
  • 0
enkephalin07

memory patches and limitations

Question

Performance monitoring shows that my CTDs, ILS and freezes occur when RAM usage spikes over 2GB and VRAM over 1G. The problem is that both are well within available resources. With SKSE's memory patch, TESV should be able to manage up to 4GB of memory. The ENB guide here recommends setting VideoMemorySize to VRAM+RAM-2GB, but I've left it to autodetect and it settles on 4GB -- put together, this is still less than available resources and far less than anything TESV has demanded.

 

But does the guide take into account SKSE's memory patch? Does ENB take over memory management completely, do SKSE and ENB divide memory management, or do they conflict with each other?

 

My system specs don't explain why this memory usage would be a burden to TESV, so there has to be a problem with the way memory is handled. Minidumps indicate TESV is trying to access memory beyond the stack limit, so there's some memory allocation errors going on.

Share this post


Link to post
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Skyrim Memory Patch 3.0 is the name of the memory patch that is integrated within SKSE that you use.

 

There is no conflict between SKSE and ENB over memory. The Memory Patch was integrated into SKSE since SKSE already injects code into Skyrim game executable, and the patch needed to be injected into it as well. It modifies the TESV.exe on the fly so to speak to have the patch which is injected using code withing skse_steam_loader.dll which is activated by the skse.ini file settings noted on the Skyrim Script Extender wiki page. Running SKSE will then inject the memory patch within the steam loading part and will be able to call a larger stack of memory and not crash.

 

ENB fixes the problem of texture loading over 3.1gb by creating a separate process to share the load. It is injected through DirectX, so no conflict. Completely different memory problem.

 

Your issue is the memory patch is set up right. You need to create or add the skse.ini as shown on the wiki page. When it is working, Memory Blocks Log will indicate 512 and 256 instead of 256 and 256. Most likely your skse.ini is a text document, in which case you need to remove the txt file extension.

Edit: Okay, the other guess is maybe somehow the patch is failing to inject. Most have reported adding the -forcesteamloader argument to SKSE fixes that.

Share this post


Link to post
Share on other sites
  • 0

Ok, the memory patch 3.0 or whatever you want to call it might not even be working. Download and install Memory Blocks Log. Purposely cause the game to CTD/IIS/freeze In the overwriteskseplugins folder with be a log

Then copy/paste it into spoilers  

 

EDIT: Also can you provide your skse settings

[spoiler]
Text
[/spoiler]

Share this post


Link to post
Share on other sites
  • 0

I'm not using 3.0 (is anyone still using that?) I'm talking about the mem patch integrated into SKSE 1.7.1, using the preset ini. Memory Logs Block looks like it works with it, though.

 

Before trying this, I set ENB's VRAM down to 2GB, my actual VRAM, set your ini's MaxOnly to false, and recorded until the game and SPM's stat display froze.

 

 

 

logging of blocks enabledlogging all valuesTimer disabledBlock1 Block2256MB  256MB85  83  80  83  87  80  81  81  91  101  112  113  114  114  125  126  126  136  146  156  166  176  186  197  197  207  217  227  237  247  257  267  277  287  297  307  317  327  338  338  348  359  3510  3511  3512  3513  3514  3515  3516  3517  3518  3519  3520  3520  3621  3622  3623  3624  3625  3626  3627  3628  3629  3630  3631  3632  3633  3634  3634  3735  3735  387  3835  387  3835  387  3837  3837  3937  4038  4038  4138  4238  4338  4438  4538  4638  4738  4838  4938  5038  5138  5238  5338  5438  5539  5539  5639  5739  5839  5939  6039  6140  6140  6240  6340  6440  6540  6640  6740  6840  6941  6941  7041  7141  727  7241  727  7242  727  728  7242  7242  7342  7442  7543  7543  7643  778  7743  778  7743  7743  788  7843  788  7843  788  7843  7843  7943  8043  8144  8144  8244  8344  8444  8544  8645  8645  8745  8845  8945  9046  9046  9146  9246  9346  9447  9448  9448  9549  9549  9650  9650  9751  9751  9852  9852  9952  10052  10152  10252  10352  10452  10552  10652  1078  1078  10858  10858  10958  11058  11158  11259  11259  11359  11459  11560  11560  11660  11760  11860  11961  11961  12061  12161  12262  12263  12263  12363  12463  12563  12663  12763  12864  12864  12964  13064  13164  13265  13264  13265  13264  13265  13265  13371  13365  13381  13382  13382  13498  13498  13599  13599  13699  13799  13899  13999  14099  14199  14299  14399  14499  14599  14699  14799  14899  14999  15099  15199  15299  15399  15499  15599  15699  15799  15899  15999  160120  160120  16199  161115  16199  161115  16199  161115  16199  161109  16199  161115  16199  161109  16199  161100  161101  161102  161103  161104  161105  161106  161107  161108  161109  161114  161109  161110  161111  161112  161113  161114  161114  162115  162116  162115  162116  162115  162116  162115  162116  162115  162116  162117  162118  162123  162118  162124  162118  162119  162120  162121  162122  162128  162122  162123  162128  162123  162124  162125  162126  162127  162128  162129  162130  162131  162132  162138  162132  162133  162134  162139  162134  162139  162134  162135  162136  162141  162136  162141  162136  162137  162138  162139  162140  162146  162140  162141  162140  162141  162140  162141  162141  163142  163143  163146  163143  163149  163143  163146  163143  163149  163143  163146  163143  163149  163143  163149  163143  163154  163143  163144  163145  163146  163152  163146  163147  163147  164148  164149  164150  164151  164152  164153  164154  164155  164156  164157  164157  165158  165159  165160  165161  165162  165163  165168  165163  165164  165165  165166  165167  165168  165169  165169  166170  166171  166172  166173  166174  166173  166174  166173  166174  166173  166174  166173  166174  166173  166174  166175  166174  166175  166174  166175  166174  166175  166174  166175  166176  166177  166182  166177  166182  166177  166182  166177  166178  166177  166178  166179  166179  167179  168180  168180  169181  169180  169181  169181  170182  170182  171183  171184  171185  171185  172186  172187  172187  173188  173188  174189  174189  175190  175190  176191  176192  176193  176194  176195  176196  176197  176198  176199  176200  176201  176202  176203  176204  176205  176206  176207  176208  176209  176210  176211  176212  176213  176214  176215  176216  176217  176218  176219  176220  176220  177221  177220  177221  177222  177223  177224  177225  177226  177227  177228  177229  177230  177231  177230  177231  177232  177233  177234  177235  177235  178236  178237  178236  178237  178236  178237  178236  178237  178236  178237  178238  178239  178240  178241  178242  178242  179243  179244  179245  179246  179245  179246  179247  179246  179247  179246  179247  179246  179247  179246  179247  179246  179247  179246  179247  179246  179247  179247  180248  180249  180250  180251  180251  181252  181251  181252  181253  181253  182254  182255  182255  181255  182255  183255  184255  185255  186

 

 

 

If there was a timestamp on these, I'd be able to match it up with what I'm looking at in in SPM. Approximately at the freeze time, RAM had been >2GB for a few seconds, and VRAM spiked up to ~1.1GB. GPU also spiked, but not to its maximum.

 

EDIT: Wtf, I tried setting Scrap Heap to 512 and got an identical result. If the first block is supposed to be Initial Alloc, it's not even close to the 768 it's set for. Now I know this ini is getting read, because SKSE didn't start generating minidumps until I added the line for it. So what sorcery must be done to get SKSE to perform to promise?

Edited by enkephalin07

Share this post


Link to post
Share on other sites
  • 0

Haha the memory tweaks in skse are not working...
This is why your game is crash happy because the memory patch 3.0 isn't working
What's your skse ini
What's your enblocal ini

This is the 2nd case this week that had that same issue
 
Block1 should be at 512 with the fix applied.
 
 
 
EDIT: I was typing on my phone so I fixed the grammar and spelling

Edited by hishutup

Share this post


Link to post
Share on other sites
  • 0

Um, any source I've seen has states that memory patch 3.0 is deprecated since its function has been integrated into SKSE. As of 1.7.1, it's not even disabled by default anymore, it's configured in the ini in the installation zip. I haven't changed the memory settings:

[Display]iTintTextureResolution=2048 [General]ClearInvalidRegistrations=1 [Memory]DefaultHeapInitialAllocMB=768ScrapHeapSizeMB=256 [Debug]WriteMinidumps=1

I know TintTextureResolution works and WriteMinidumps works, so what between them isn't working?

Edited by enkephalin07

Share this post


Link to post
Share on other sites
  • 0

Do you have skse.ini as a mod in mod organizer

That may cause an issue but I am unsure

 

If you do have it in a mod organizer mod try putting it into

<skyrim install>Dataskse folder

 

 

 

Thank you double you for explaining it better than I could

But if you increase either block1 greater than 768 or block2 greater than 256

It causes skyrim to crash on startup if in enblocal

Expandmemoryx64 is enabled

 

I found this to be a common issue with me.

Or am I just crazy?

Share this post


Link to post
Share on other sites
  • 0

Edit: Okay, the other guess is maybe somehow the patch is failing to inject. Most have reported adding the -forcesteamloader argument to SKSE fixes that.

Ah, that was it. I don't use Steam, so I don't even let their service start. Frrk, if the devs had documented anything, I would've found this ages ago.

 

Where it usually hangs, I get this:

 

255  185260  185255  185271  185275  185275  186275  187291  187 

Some pauses, but it continues. Thanks, DoubleYou.

Share this post


Link to post
Share on other sites
  • 0

I'm afraid this really isn't working anymore. I'm back to getting irregular CTD's, under-utilized memory resources and persistent disk activity causing constant freezes in cells that should already be loaded. Now I'm seeing textures that loaded fine before rendered as solid blue. How do I make Skyrim use the full RAM/VRAM available and quit over-taxing my HD? How do I end these CTD's?

 

 

Edit: My mistake; the CTD and missing textures were from .bsa's getting deselected after updates. I'll open a different thread for the performance issue.

Edited by enkephalin07

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.