Disk Cache Enabler
Use OS file cache for less disk access.
Short:
This plugin makes Starfield use OS’ file cache, which leads to less disk access over time. Especially good for HDD. Less freezing, Less sound drop.
Long:
On Windows, we use “CreateFile()“. When you access a file or a device, and this function gives you some options to play for specific purposes.
The game “Starfield” which uses “Creation Engine” has a dedicated binary reader like many other game engines. This binary reader part reads files from filesystems.
Unlike other major game engines, Starfield uses the following flags for CreateFile(): FILE_FLAG_OVERLAPPED, FILE_FLAG_NO_BUFFERING, and FILE_FLAG_SEQUENTIAL_SCAN.
Okay. However, there is a problem with “FILE_FLAG_NO_BUFFERING”. This flag tells the OS not to leave file on memory after it is read.
Workloads in Games are pretty predictable. Like character animation, footstep sounds, textures or anything soon will eventually be used again and will not change. Without the file cache, the system must read from disks whenever needed, which results in a considerable performance impact on slow drives like HDD.
Additional notes:
If Starfield is installed on SSD, this plugin may improves I/O-related performance but not much. Less disk I/O, better performance.
How to install
1. Get SFSE (https://www.starfieldmodhub.com/starfield-script-extender-sfse/)
2. Unzip “Data” to Starfield installation.
3. Launch Starfield with SFSE so the plugin can be loaded.
—- Below for developers
Source code note:
ISC license.
Requirements:
CMake
C++ Compiler: Clang, GCC, MSVC-CL. Anything you like.