---
draft: true
description: View the current benchmarks of Tauri for binary size, memory usage, and other metrics.
---
# Benchmarks
import Chart, { fetchData } from '@theme/BenchmarkChart'
export var data = fetchData()
All benchmarks run on GitHub Actions using the `ubuntu-latest` matrix. Various metrics are measured by the following applications:
| Tauri | Wry | Electron |
| :-------------------- | :-------------------- | :----------------------- |
| [tauri_cpu_intensive] | [wry_cpu_intensive] | [electron_cpu_intensive] |
| [tauri_hello_world] | [wry_hello_world] | [electron_hello_world] |
| [tauri_3mb_transfer] | [wry_custom_protocol] | [electron_3mb_transfer] |
[tauri_cpu_intensive]: https://github.com/tauri-apps/tauri/tree/dev/tooling/bench/tests/cpu_intensive
[tauri_hello_world]: https://github.com/tauri-apps/tauri/tree/dev/tooling/bench/tests/helloworld
[tauri_3mb_transfer]: https://github.com/tauri-apps/tauri/tree/dev/tooling/bench/tests/files_transfer
[wry_cpu_intensive]: https://github.com/tauri-apps/wry/tree/dev/bench/tests/src/cpu_intensive.rs
[wry_hello_world]: https://github.com/tauri-apps/wry/tree/dev/bench/tests/src/hello_world.rs
[wry_custom_protocol]: https://github.com/tauri-apps/wry/tree/dev/bench/tests/src/custom_protocol.rs
[electron_cpu_intensive]: https://github.com/tauri-apps/benchmark_electron/tree/dev/apps/cpu_intensive
[electron_hello_world]: https://github.com/tauri-apps/benchmark_electron/tree/dev/apps/hello_world
[electron_3mb_transfer]: https://github.com/tauri-apps/benchmark_electron/tree/dev/apps/file_transfer
:::note
The CPU intensive benchmark measures how much time it takes to calculate all the prime numbers under a certain value without blocking the UI and reporting how many have been found so far using web workers.
:::
## Execution Time
How much time in total it takes to initialize the application and wait for the `DOMContentLoaded` event. This uses [hyperfine](https://github.com/sharkdp/hyperfine) under the hood and runs 3 warm-up sequence first, then 10 sequences to calculate the average execution time.
## Binary Size
All binaries are compiled in release mode.
## Memory Usage
Uses [mprof](https://pypi.org/project/memory-profiler/) to get the max memory usage during execution. Smaller is better.
## Thread Count
How many threads the application uses. Smaller is better.
## Syscall Count
How many total syscalls are performed when executing a given application. Smaller is better.
## Dependencies