taskwarrior/performance/run_perf
Felix Schurk 8dd29e0a8a
Change to out-of source build, Update build instructions (#3271)
* update build instructions

Usage of "modern" CMake syntax and using specific out of source build.
Further add example on how to build in parallel, build a specific target
and how to change the compiler.

This closes #3236.
2024-02-25 12:27:52 -05:00

53 lines
1.4 KiB
Bash
Executable file

#! /bin/bash
echo 'Performance: setup'
rm -f ./pending.data ./completed.data ./undo.data ./backlog.data perf.rc
if [[ -e data/pending.data && -e data/completed.data ]]
then
echo ' - Using existing data'
cp data/* .
else
echo ' - This step will take several minutes'
./load
mkdir -p data
cp *.data perf.rc data
fi
# Allow override.
if [[ -z $TASK ]]
then
TASK=../build/src/task
fi
# Run benchmarks.
# Note that commands are run twice - warm cache testing.
echo 'Performance: benchmarks'
echo ' - task next...'
$TASK rc.debug:1 rc:perf.rc next >/dev/null 2>&1
$TASK rc.debug:1 rc:perf.rc next 2>&1 | grep "Perf task"
echo ' - task list...'
$TASK rc.debug:1 rc:perf.rc list >/dev/null 2>&1
$TASK rc.debug:1 rc:perf.rc list 2>&1 | grep "Perf task"
echo ' - task all...'
$TASK rc.debug:1 rc:perf.rc all >/dev/null 2>&1
$TASK rc.debug:1 rc:perf.rc all 2>&1 | grep "Perf task"
echo ' - task add...'
$TASK rc.debug:1 rc:perf.rc add >/dev/null 2>&1
$TASK rc.debug:1 rc:perf.rc add This is a task with an average sized description length project:P priority:H +tag1 +tag2 2>&1 | grep "Perf task"
echo ' - task export...'
$TASK rc.debug:1 rc:perf.rc export >/dev/null 2>&1
$TASK rc.debug:1 rc:perf.rc export 2>&1 >export.json | grep "Perf task"
echo ' - task import...'
rm -f ./pending.data ./completed.data ./undo.data ./backlog.data
$TASK rc.debug:1 rc:perf.rc import export.json 2>&1 | grep "Perf task"
echo 'End'
exit 0