CRIPS

From Dirty Cache Wiki
Revision as of 14:37, 23 September 2021 by Bart (talk | contribs)
Jump to navigation Jump to search

Definition

CRIPS means SPECIntRate per Core (but reversed).

It is based on SPECrate® 2017 Integer [1] of a server divided by the physical number of cores.

Purpose

A metric that allow us to compare server CPU performance based on throughput of a server but converted back to the system's specific CPU core.

I defined it to compare server and processing power.and as a foundation for server sizings. Converting SPECRate integer to a per-core gives us a foundation to do further calculations.

Older benchmarks

Before SPEC CPU 2017 there was SPEC CPU 2006 (now obsolete). To convert from SPEC CPU 2006 to SPEC CPU 2017, we divide the baseline number by 10 (based on empirical evidence).

Background

Why SPECrate Integer?

To compare database performance we usually look at throughput (transactions per second). As databases are highly multi-threaded, we look at the server performance rather than a single CPU's speed. To apply sizing calculations to different servers with different number of cores, we convert it to a per-core number.

Why not TPC-C, TPC-H, TPC-E?

In theory TPC would be a much better benchmark but the amount of listed servers and CPU types is quite limited. SPEC is the next-best and has nearly all server CPUs available since 2006.

Limitations

No benchmark is perfect so be aware of the limitations:

  • Statistical errors (i.e. averages over long intervals)
  • True database transactional performance vs. a CPU benchmark
  • Configuration details and optimizations (applying best practices, using the right hardware, etc)
  • Environmental variations