docs: Document maxperf Docker image variants from #1017 #1024
No reviewers
Labels
No labels
Bug
Cherry-picking
Database
Dependencies
Dependencies/Renovate
Difficulty
Easy
Difficulty
Hard
Difficulty
Medium
Documentation
Enhancement
Good first issue
Help wanted
Inherited
Matrix/Administration
Matrix/Appservices
Matrix/Auth
Matrix/Client
Matrix/Core
Matrix/Federation
Matrix/Hydra
Matrix/MSC
Matrix/Media
Meta
Meta/CI
Meta/Packaging
Priority
Blocking
Priority
High
Priority
Low
Security
Status/Blocked
Status
Confirmed
Status
Duplicate
Status
Invalid
Status
Needs Investigation
To-Merge
Wont fix
old/ci/cd
old/rust
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
continuwuation/continuwuity!1024
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "tom/max-perf-docs"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Add documentation for the new performance-optimised Docker images with "-maxperf" suffix.
These use the release-max-perf build profile with LTO and target haswell CPU architecture on amd64 for optimal performance.
Also restructure the static prebuilt binary section in generic deployment docs for better clarity and fix various UK English spelling issues.
Preview here:
@ -33,1 +23,3 @@
for performance.
#### Performance-optimised builds
For x86_64 systems with CPUs from the last ~15 years, use the `-haswell-` optimised binaries for best performance. These binaries enable hardware-accelerated CRC32 checksumming in RocksDB, which significantly improves database performance. The haswell instruction set provides an excellent balance of compatibility and speed.
I don't know about removing the hard-wrapping in this file?
@ -34,1 +25,4 @@
For x86_64 systems with CPUs from the last ~15 years, use the `-haswell-` optimised binaries for best performance. These binaries enable hardware-accelerated CRC32 checksumming in RocksDB, which significantly improves database performance. The haswell instruction set provides an excellent balance of compatibility and speed.
If you're using Docker instead, equivalent performance-optimised images are available with the `-maxperf` suffix (e.g. `forgejo.ellis.link/continuwuation/continuwuity:latest-maxperf`). These images use the `release-max-perf` build profile with [link-time optimisation (LTO)](https://doc.rust-lang.org/cargo/reference/profiles.html#lto) and, for amd64, target the haswell CPU architecture.
FYI I think we're already doing cross-language LTO in the docker images, not sure what maxperf is actually changing with fat LTO? Or the other option in the build profiles (side note release-high-perf sets panic = abort which really shouldn't be run in prod)
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.