Benchmarks¶
This section summarizes the stress test reports captured in docs/reports and provides the raw logs for reference.
How to run¶
Windows¶
@echo off
"%1/sample/Release/sample_benchmark_coroutine_mem_pool.exe" 10000 1000 200 >> "%2"
"%1/sample/Release/sample_benchmark_coroutine_mem_pool.exe" 1000 1000 2048 >> "%2"
echo\ >> "%2"
"%1/sample/Release/sample_benchmark_coroutine.exe" 10000 1000 200 >> "%2"
"%1/sample/Release/sample_benchmark_coroutine.exe" 1000 1000 2048 >> "%2"
echo\ >> "%2"
"%1/sample/Release/sample_benchmark_coroutine_malloc.exe" 10000 1000 200 >> "%2"
"%1/sample/Release/sample_benchmark_coroutine_malloc.exe" 1000 1000 2048 >> "%2"
echo\ >> "%2"
"%1/sample/Release/sample_benchmark_task_mem_pool.exe" 10000 1000 200 >> "%2"
"%1/sample/Release/sample_benchmark_task_mem_pool.exe" 1000 1000 2048 >> "%2"
echo\ >> "%2"
"%1/sample/Release/sample_benchmark_task.exe" 10000 1000 200 >> "%2"
"%1/sample/Release/sample_benchmark_task.exe" 1000 1000 2048 >> "%2"
echo\ >> "%2"
"%1/sample/Release/sample_benchmark_task_malloc.exe" 10000 1000 200 >> "%2"
"%1/sample/Release/sample_benchmark_task_malloc.exe" 1000 1000 2048 >> "%2"
echo\ >> "%2"
Linux¶
#!/bin/sh
if [ $# -lt 2 ]; then
echo "usage: $0 <build dir> <report file>";
exit -1;
fi
"$1"/sample/sample_benchmark_coroutine_mem_pool 10000 1000 200 >> "$2";
"$1"/sample/sample_benchmark_coroutine_mem_pool 1000 1000 2048 >> "$2";
echo "" >> "$2";
"$1"/sample/sample_benchmark_coroutine 10000 1000 200 >> "$2";
"$1"/sample/sample_benchmark_coroutine 1000 1000 2048 >> "$2";
echo "" >> "$2";
"$1"/sample/sample_benchmark_coroutine_malloc 10000 1000 200 >> "$2";
"$1"/sample/sample_benchmark_coroutine_malloc 1000 1000 2048 >> "$2";
echo "" >> "$2";
"$1"/sample/sample_benchmark_task_mem_pool 10000 1000 200 >> "$2";
"$1"/sample/sample_benchmark_task_mem_pool 1000 1000 2048 >> "$2";
echo "" >> "$2";
"$1"/sample/sample_benchmark_task 10000 1000 200 >> "$2";
"$1"/sample/sample_benchmark_task 1000 1000 2048 >> "$2";
echo "" >> "$2";
"$1"/sample/sample_benchmark_task_malloc 10000 1000 200 >> "$2";
"$1"/sample/sample_benchmark_task_malloc 1000 1000 2048 >> "$2";
echo "" >> "$2";
Summary¶
- Each report measures allocate/create/switch/remove cycles for coroutine contexts and tasks with different stack allocators.
- Use the raw logs below for precise numbers and environment details.