- Rust 30.6%
- Makefile 30.4%
- Python 28.8%
- Shell 7.8%
- C++ 2.4%
| .forgejo/workflows | ||
| freebsd | ||
| netbsd | ||
| openbsd | ||
| NIGHTLY.md | ||
| README.md | ||
| UPDATING.md | ||
continuwuity-bsd
Build tools for releasing BSD packages for the continuwuity Matrix homeserver.
Why aren't these in the ports trees?
Working on it.
How do I run the continuwuity main branch?
A FreeBSD-only package is built every night from main and distributed in a pkg-compatible repository. See NIGHTLY for instructions on setting it up.
Do I download the generic or haswell package?
TLDR: probably haswell, then generic if you encounter bizarre crashes running continuwuity.
generic is supported by every x86-64 processor, making it a good choice for compatibility with CPUs older than 2013 or so.
haswell (which, despite the name, includes AMD Bulldozer-and-later processors) is supported by most modern processors and offers a range of performance optimizations that continuwuity's database engine takes advantage of.1 If your processor was released after 2013, haswell is likely the best option.
If you want to squeeze as much performance out of continuwuity as possible, you may clone this repo and perform a build native to your specific processor. Instructions to come.
What about ARM?
For aarch64 on FreeBSD, there's a generic package which targets Armv8.0-A (most single-board computers, like Raspberry Pis), and a neoverse-n1 package for Neoverse N1 chips used by providers like Ampere, Hetzner, Azure, and AWS.
If you have an ARM-based cloud VM, you can probably use neoverse-n1.
-
in addition to the other SIMD optimizations included in Haswell and Bulldozer, RocksDB benefits greatly from the CLMUL instruction set, which enables fast CRC calculations. ↩︎