diff --git a/scripts/performance_test.sh b/scripts/performance_test.sh index ed76d36c..66b5f7ba 100755 --- a/scripts/performance_test.sh +++ b/scripts/performance_test.sh @@ -34,7 +34,8 @@ cleanup() { trap "cleanup" ERR -iterations=1000 +cold_iterations=1000 +warm_iterations=10000 results=() #------------------ @@ -55,24 +56,24 @@ kill -0 $server_pid # check server is alive echo "running $MODE mode cold test" cold=() export MAX_REQUESTS=1 -for (( i=0; i<$iterations; i++ )); do +for (( i=0; i<$cold_iterations; i++ )); do start=$(gdate +%s%N) ./.build/release/SwiftAwsLambdaStringSample end=$(gdate +%s%N) cold+=( $(($end-$start)) ) done sum_cold=$(IFS=+; echo "$((${cold[*]}))") -avg_cold=$(($sum_cold/$iterations)) +avg_cold=$(($sum_cold/$cold_iterations)) results+=( "$MODE, cold: $avg_cold (ns)" ) # normal calls echo "running $MODE mode warm test" -export MAX_REQUESTS=$iterations +export MAX_REQUESTS=$warm_iterations start=$(gdate +%s%N) ./.build/release/SwiftAwsLambdaStringSample end=$(gdate +%s%N) sum_warm=$(($end-$start-$avg_cold)) # substract by avg cold since the first call is cold -avg_warm=$(($sum_warm/($iterations-1))) # substract since the first call is cold +avg_warm=$(($sum_warm/($warm_iterations-1))) # substract since the first call is cold results+=( "$MODE, warm: $avg_warm (ns)" ) #------------------ @@ -93,24 +94,24 @@ kill -0 $server_pid # check server is alive echo "running $MODE mode cold test" cold=() export MAX_REQUESTS=1 -for (( i=0; i<$iterations; i++ )); do +for (( i=0; i<$cold_iterations; i++ )); do start=$(gdate +%s%N) ./.build/release/SwiftAwsLambdaCodableSample end=$(gdate +%s%N) cold+=( $(($end-$start)) ) done sum_cold=$(IFS=+; echo "$((${cold[*]}))") -avg_cold=$(($sum_cold/$iterations)) +avg_cold=$(($sum_cold/$cold_iterations)) results+=( "$MODE, cold: $avg_cold (ns)" ) # normal calls echo "running $MODE mode warm test" -export MAX_REQUESTS=$iterations +export MAX_REQUESTS=$warm_iterations start=$(gdate +%s%N) ./.build/release/SwiftAwsLambdaCodableSample end=$(gdate +%s%N) sum_warm=$(($end-$start-$avg_cold)) # substract by avg cold since the first call is cold -avg_warm=$(($sum_warm/($iterations-1))) # substract since the first call is cold +avg_warm=$(($sum_warm/($warm_iterations-1))) # substract since the first call is cold results+=( "$MODE, warm: $avg_warm (ns)" ) # print results