This project provides a benchmark suite for evaluating different memory copy strategies under varying conditions.
- Linux OS
- Compiler: GCC or Clang with C17 support (successfully tested on C99)
- Build system:
make - Hardware: It should run on most machines after adjusting
-march=raptorlakeand-mtune=raptorlakeinside Makefiles. This benchmark was done for 2 platforms: raptor lake and sapphire rapids, as I wanted to test AVX512 and other extensions. You can use the [Intel Software Development Emulator], if you just want to see if they work.
implementations/: Contains differentmemcpyimplementationstests/: Includes benchmarking tests for performance measurement and self-test
To build memcpy-bench use make in the main directory or do it separately in subdirectories.
To run memcpy-bench use make run in the main directory or use make or make build and then make run (main benchmark) or make runt (self_tests) tests/ or navigate to subdirectories and do it separately.