-
Notifications
You must be signed in to change notification settings - Fork 90
Open
Labels
C-performanceThis relates to performanceThis relates to performance
Description
Description
I suggest adding PGO (+ BOLT) support to the project. According to my local tests, I have reached with sky-bench -q1000000 -r20
the following results (local runs on Apple Macbook M1 Pro):
Without PGO (default release build):
===========RESULTS===========
SET 140810.697866/sec
UPDATE 146618.948096/sec
GET 137469.544488/sec
=============================
With PGO:
===========RESULTS===========
SET 153383.657977/sec
UPDATE 156045.351506/sec
GET 159065.787814/sec
=============================
Results are a little bit unstable but the PGO version is always more performant than non-PGO. BOLT (LLVM BOLT) also could help here but I haven't tested it yet.
Suggested solutions
- Optimize provided to the users' binaries with PGO and BOLT (if any)
- Write a note in the project about optimizing Skytable with PGO to gain even more performance
More PGO-related benchmark results (including many databases like Redis, PostgreSQL, ClickHouse) are available here - https://github.com/zamazan4ik/awesome-pgo .
foxtranfoxtran
Metadata
Metadata
Assignees
Labels
C-performanceThis relates to performanceThis relates to performance