Before you ever do anything to your ini file(s), be sure to back up the original file(s).
(You can find the file(s) in your "Documents/My Games/Skyrim" user folder.)
NOTICE: It is assumed that you are somewhat familiar with editing INI files as well as what these tweaks do. If you are unfamiliar with anything on this page (or haven't seen anything like this before) then do not proceed. This is intended for advanced users who are familiar with modding.
The skyrim.ini file can be (albeit debatable) tweaked to enhance performance. The real difference would most likely be noticed by people who have multiple script heavy mods. If multiple script-heavy mods are loaded, the player may experience lag in game mechanics (hits registering late) along with other strange and random symptoms. This is all due to the scripting system (papyrus) becoming clogged with scripts to process.
There are two camps when the topic of editing the skyrim.ini file for Skyrim come up. One says it is ok and the other says it will bring armageddon. The truth is that the tweaks are very specific for the computer the game is on as well as the specific mod load. So, it is impossible to copy another person's tweaks and apply them to your game and have everything running smooth. However, certain guide-lines can be followed when tweaking your INI files.
Firstly, if you don't know what your doing, simply don't do it. That should be a given.
Next, if you have already played with settings in your INI file and can't remember what you changed, then 1) take memory pills because your memory sucks and 2) use the default settings supplied below. (These settings all go under the [Papyrus] header in the skyrim.ini file. If any lines below are not already in your ini file, you can safely add them.)
(The following configurations have been kindly supplied by Chesko from his Frostfall website as well as suggestions and modifications from the Spartan community.)
DEFAULT INI SETTINGS:
[Papyrus]
fUpdateBudgetMS=1.2
fExtraTaskletBudgetMS=1.2
fPostLoadUpdateTimeMS=500.0
iMinMemoryPageSize=128
iMaxMemoryPageSize=512
iMaxAllocatedMemoryBytes=76800
Try first to use the above default settings to see if that helps stabilize your game. If that doesn't help you any, then you may try the below settings.
INCREASED TIME ALLOTTED FOR UPDATE BUDGETS:
*GhostAgent recommends using this setting.
[Papyrus]
fUpdateBudgetMS=20.0
fExtraTaskletBudgetMS=20.0
fPostLoadUpdateTimeMS=500.0
iMinMemoryPageSize=128
iMaxMemoryPageSize=512
iMaxAllocatedMemoryBytes=76800
This method seems to be useful for people running multiple script-heavy mods. It copies the default settings, however it gives extra time to the "Update Budget" values.
INCREASED CPU AND INCREASED TIME ALLOTTED:
This third method seems to help some while causing freezes for others.
(Use at your own discretion.)
[Papyrus]
fUpdateBudgetMS=1000.0
fExtraTaskletBudgetMS=1000.0
fPostLoadUpdateTimeMS=2000.0
iMinMemoryPageSize=256
iMaxMemoryPageSize=512
iMaxAllocatedMemoryBytes=153600
The above method increases the amount of CPU and Memory given to the script system. But again, others have reported that this "clogged" their scripting system and caused lag/freezes. It doesn't seem to be too advised. Still, it does seem to help others.
TWEAKS FOR ADVANCED SYSTEM CONFIGURATIONS:
There is another method which comes recommended by our SoT Spartan, ElkAntlers. He prefers to use
"EWIs High SkyrimPrefs and inis v01b" by ewi65 (found on Nexus) for higher preforming gaming rigs.
The settings are as follow:
[Papyrus]
fUpdateBudgetMS=1.4
fExtraTaskletBudgetMS=1.4
fPostLoadUpdateTimeMS=1000.0
iMinMemoryPageSize=128
iMaxMemoryPageSize=512
iMaxAllocatedMemoryBytes=76800
ElkAntlers also suggests that if you use use many heavily scripted mods, to change the fPostLoadUpdateTime to 2000. (It should read as: fPostLoadUpdateTimeMS=2000.0)
If you are experiencing crashes, sometimes checking the papyrus log can be helpful in determining the cause of the crash. Do note however that the papyrus log is not a crash log. It simply shows you what the game was processing a bit before the crash occurred. The last item on the log is not a definite cause of the crash.
Logging:
To enable logging, enter this in your papyrus section:
(Just add the following lines under the [Papyrus] header if you already have added lines there.)
[Papyrus]
bEnableLogging=1
bEnableTrace=1
bLoadDebugInformation=1