BrandPost: Optimizing Redis’ Default Compiler Flags

April 24, 2023

Redis assumes the default GCC compiler on supported operating system distributions for reasons of portability and ease of use. The build compiler flags, present since the early stages of the project, remained quite conservative across the years, with -O2 as the default optimization level. These flags have worked well. They provide consistent results and good performance without significantly increasing the compilation time or code size of Redis server binaries. Nobody wants to spend a lot of time on compilation.

However, could we do a bit better? (We are optimization specialists. We always ask this question.)

In this post, we describe our analysis of the impact on Redis performance by changing compiler versions (GCC 9.4, GCC 11, and Clang-14) and compiler flag optimizations. We evaluated the performance impact of compilers and flags using performance automation, as we discussed in Introducing the Redis/Intel Benchmarks Specification for Performance Testing, Profiling, and Analysis. As a result of this work, we updated the default Redis compiler flags because they ensure better performance.

To read this article in full, please click here

InfoWorld 

Article Categories:
Uncategorized

Leave a Reply

Your email address will not be published. Required fields are marked *

Generated by Feedzy