Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add: ultramarine-system-configs #37

Merged
merged 16 commits into from
Oct 7, 2024
Merged

Conversation

korewaChino
Copy link
Member

Adds a new system-configs package which contains all the major system tweaks, also moves the networking tweaks from ultramarine-release to this package.

The configs do the following:

  • Compress systemd journal and limit size to 200M
  • systemd-tmpfiles config to automatically clean up /tmp and /var/tmp
  • logrotate config to rotate log files and compress them daily, with weekly backlog rotation
  • Enable the tcp_bbr kernel module by Google and enable BBR congestion control as a sysctl knob
  • Enables TCP Fast Open to reduce networking latency
  • MTU Probing moved from ultramarine-release

@korewaChino korewaChino requested a review from lleyton August 3, 2024 05:23
Copy link
Contributor

@lleyton lleyton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hm, looks good so far, but I'd love to see benchmarks/QA

additionally, we shouldn't land these for 40, but 41

also, maybe we should break this into both core and desktop defaults packages

@korewaChino
Copy link
Member Author

korewaChino commented Aug 3, 2024

hm, looks good so far, but I'd love to see benchmarks/QA

For BBR, this should be enough I think https://medium.com/google-cloud/tcp-bbr-magic-dust-for-network-performance-57a5f1ccf437, Hopefully BBRv2 or v3 has improved network quality in cases of flaky networking conditions though, According to APNIC BBRv1 may not be beneficial over the standard Cubic implementation when you have lots of packet loss in a flaky networking environment since BBR considers that congestion instead of just the network itself being lossy

Actually, for TFO I'm starting to reconsider it now that it allows for tracking users (since it uses cookies)...

More testing and data needed.

The FS cleanup configs should good to go though, I have moved them to the desktop subpackage specifically so we can simply just add them to the comps list and have the networking/core perf configs optional

@korewaChino
Copy link
Member Author

Should I make subpackages by type of tweaks or should I go with a core and a desktop subpackage?

@korewaChino
Copy link
Member Author

And for MTU probing, it has already been added since UM40, and this fixes some applications that transmit really big packets (i.e modded Minecraft clients/servers, Ubisoft Connect authentication). Fixes basically all Ubisoft Connect games, I tested with UNO specifically but should apply for other games that use it too.

@madonuko madonuko changed the base branch from um40 to um41 August 11, 2024 07:03
@korewaChino korewaChino requested a review from lleyton October 5, 2024 16:20
@korewaChino korewaChino added the enhancement New feature or request label Oct 7, 2024
This reverts commit c8363d9.
@korewaChino
Copy link
Member Author

Here's networking benchmark results for the sysctl flags
image

This reverts commit b61af9a.
@korewaChino
Copy link
Member Author

Going for BBR + Cake here since it's the most balanced one out of all of them, leads to slightly better QoS

@korewaChino korewaChino dismissed lleyton’s stale review October 7, 2024 13:25

Desktop apps are very noisy so it makes sense to keep less of them

@korewaChino korewaChino merged commit 4414f6f into um41 Oct 7, 2024
5 checks passed
@korewaChino korewaChino deleted the pr/ultramarine-sysconfig branch October 7, 2024 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants