# What is FrameworkBenchmark and how to contribute

**URL:** <https://swi-prolog.discourse.group/t/what-is-frameworkbenchmark-and-how-to-contribute/4193>\
**Category:** Discussion\
**Tags:** how-to\
**Created:** [July 24, 2021, 12:01am UTC](https://swi-prolog.discourse.group/t/what-is-frameworkbenchmark-and-how-to-contribute/4193 "2021-07-24T00:01:08Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![\_vka](https://avatars.discourse-cdn.com/v4/letter/_/96bed5/32.png) [@\_vka](https://swi-prolog.discourse.group/u/_vka)\
**Post date:** [July 24, 2021, 12:01am UTC](https://swi-prolog.discourse.group/t/what-is-frameworkbenchmark-and-how-to-contribute/4193/1 "2021-07-24T00:01:08Z")

</div>

## What is FramrworkBenchmark?

This is a performance comparison of many web application frameworks executing fundamental tasks such as JSON serialization, database access, and server-side template composition. Each framework is operating in a realistic production configuration.

## How many frameworks are present?

The benchmarking happens in rounds that sit few months apart. The latest Round 20 was completed in February 2021 and covered 247 different frameworks. SWI-Prolog was one of the submissions. See details here: [TechEmpower Framework Benchmarks](https://www.techempower.com/benchmarks/#section=data-r20&hw=ph&test=json)

## What are the different tests?

The test specifications can be found here: [Project Information Framework Tests Overview · TechEmpower/FrameworkBenchmarks Wiki · GitHub](https://github.com/TechEmpower/FrameworkBenchmarks/wiki/Project-Information-Framework-Tests-Overview)

## Which database backend case I choose?

There are PostgreSQL and MySQL backends. I remember the time there was MongoDB but I am not sure I see that anymore.

## Do I have to wait few months till I see how my submission fares?

No, fortunately, you don’t. There are continuous intermediate benchmarks starting every few days, the progress of which can be tracked here: [https://tfb-status.techempower.com/](https://tfb-status.techempower.com/)

## How do I contribute?

- Fork the complete repository: [GitHub - TechEmpower/FrameworkBenchmarks: Source for the TechEmpower Framework Benchmarks project](https://github.com/TechEmpower/FrameworkBenchmarks)

- Verify the submission (requires docker) by executing: `./tfb --mode verify --test swi-prolog`

- Make changes to the code under: `frameworks/Prolog/SWI-Prolog`. The mode here is “shared ownership”, nobody really owns the submission so feel free to take over.

- Run some benchmarks: `./tfb --mode benchmark --test swi-prolog`

- Commit, and create a pull request.
