Skip to main content

๐Ÿš€ Getting Started

Welcome to the CodSpeed documentation!

Here you will find everything you need to get started and benchmark your projects continuously with CodSpeed.

What is CodSpeed?โ€‹

CodSpeed is a continuous benchmarking platform that allows you to track and compare the performance of your codebase during development.

It uses a smart runtime engine to measure the performance of your code in an accurate and reproducible way without creating a huge runtime overhead, unlike traditional benchmarks. CodSpeed produces detailed performance reports, helping you improve your codebase performance, directly within your repository provider(Pull Requests comments, Merge checks, ...).

What can be measured?โ€‹

CodSpeed can measure the performance of different types of code, thanks to its instruments:

  • The core of CodSpeed is the CPU instrument. It measures the performance of algorithms, data processing, mathematical operations, ... Extensive data is collected during the execution of the code, which is used to create consistent performance measurement and detailed flame-graphs of the code.
  • The Databases instruments measure the performance of database queries. It allows you to track and compare the performance of your database queries during development.

How it worksโ€‹

Overview of CodSpeed's architectureOverview of CodSpeed's architecture

The core of the performance measurement is done directly within your CI environment through the CodSpeed Action. Allowing you to stay the sole owner of your data and to keep your codebase private.

Once the performance data is generated, only the benchmark results are sent to the CodSpeed servers to be analyzed.

Then, performance reports are generated and published directly within your repository provider.

How long does it take to install?โ€‹

If you're already benchmarking your codebase, you can plug your existing benchmarks into CodSpeed in less than 5 minutes since CodSpeed benchmark's API is compatible with the most popular benchmarking frameworks(pytest-benchmark, bencher, criterion.rs, vitest, tinybench, benchmark.js).

If you don't have any benchmarks yet, you can get started by creating benchmarks. We provide an intuitive benchmarking API that allows you to create your first benchmarks in a few minutes.