Comments (4)
This has mainly been discussed here: #99
The behavior you observe is due to the introduction of watching IO PSI in the kernel which is global across all drives. You could try turning the kernel PSI feature off: Add psi=0
to your kernel command line (https://facebookmicrosites.github.io/psi/docs/overview). It may be possible that your kernel defaults to on.
This change actually included PSI support which fixed desktop stalls for most users: 200b19c
It was introduced because shader compilation is not actually a CPU-only thing, it also involves a lot of inefficient IO (it's actually not much IO but it is pretty random in the driver caches and thus inefficient, especially on btrfs).
from fossilize.
Yes, Fossilize has to go out of its way to not make other stuff go slow on the system, especially anything related to IO since we can quickly swarm IO caches when 10+ threads hammer out shader caches with non-ideal access patterns.
from fossilize.
@HansKristian-Work It may be possible that the dirty pages watcher is a bit too aggressive: If copying large files, dirty data is expected. Maybe it should watch PSI only, and if there is no PSI feature available, it should fall back to a less aggressive dirty pages watcher? Or just make that less aggressive in general?
Personally, I don't care if it pauses when running in the background. It's probably the foreground mode when people would care about it. That said, it works perfectly fine for me in background mode since that change back then - no issues whatsoever. Not sure if the Steam client already uses the control channel to actually switch to aggressive mode when running in foreground. But then again, when such a control option is implemented but Steam doesn't use it, this is probably a Steam bug, not a Fossilize bug.
from fossilize.
since we can quickly swarm IO caches when 10+ threads hammer out shader caches with non-ideal access patterns
That's actually the point here even when copying data on another drive... Fossilize needs to get out of the way of other software using the page cache - no matter if that's a different device.
from fossilize.
Related Issues (20)
- Shader compilation freezes the system
- Disable VK_AMD_shader_fragment_mask if descriptor buffers are used in replayer
- .xsessions-errors full of warnings
- Steam seems to never finish shader pre-compiling in the background for A Hat in Time HOT 8
- default log level in journalctl
- Compiling Vulkan shaders with less than 50% of free memory leads to OOM situation and system freeze HOT 4
- CPU instability when compiling shaders. HOT 15
- Build of -m32 fossilize terminating with errors
- Launching Steam immediately caused `fossilize_replay` to consume all available memory HOT 9
- fossilize_replay causing OOM (but only in Deep Rock Galatic) HOT 4
- [steam] fossilize_replay stops processes and fails to resume them HOT 4
- Use after free when compiling GPL pipelines HOT 2
- Setting fossilize environment for steam games HOT 2
- 100 GB shadercache folder
- Extremely long Vulkan Shaders processing just with Nvidia GPU HOT 2
- Fossilize_replay vulkan bug, arch proton
- `fossilize-disasm --target isa` crash
- Launching Steam freezes my system because of fossilize_replay taking whole memory HOT 1
- Why is this CPU bound? HOT 1
- Missing cstdint include HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fossilize.