http_compression 0040755 0001750 0001750 00000000000 11173671434 0012440 5 ustar 00henry http_compression/bench.sh 0100755 0001750 0001750 00000001052 11173670615 0014130 0 ustar 00henry #!/bin/sh if [ -z "$1" ] then echo "Usage: ${0} URL" exit 1 fi function bench { curl -s -o /dev/null \ --user-agent 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.20) Gecko/20081217 Firefox/2.0.0.20' \ -w '%{time_total} %{time_connect} %{time_starttransfer} %{size_download}\n' \ $* } results_dir=. rm -f *.csv for i in 0 1 2 3 4 5 6 7 8 9; do for j in 0 1 2 3 4 5 6 7 8 9; do bench "$*" >> ${results_dir}/no\ gzip.csv bench --compress "$*" >> ${results_dir}/gzip.csv done done http_compression/report.py 0100755 0001750 0001750 00000004641 11173671134 0014406 0 ustar 00henry #!/usr/bin/env python import os import math # Change this to True to get a HTML table _HTML_REPORT = False def _time(x): return '%d' % (x * 1000) def _mean(index, seq): return sum(float(r[index]) for r in seq) / len(seq) def _median(index, seq): return sorted(float(r[index]) for r in seq)[len(seq) // 2 + 1] def _standard_deviation(index, seq): mean = _mean(index, seq) diffs = list(pow(float(r[index]) - mean, 2) for r in seq) return math.sqrt(sum(diffs) / len(seq)) def report(filename): results = list(line.split() for line in open(filename)) if _HTML_REPORT: print '
| File | ' 'Connect time | ' 'Pre-transfer time | ' 'Total time | ' 'Transfert size | ' '||||
|---|---|---|---|---|---|---|---|---|
| Mean | Median | ' 'Mean | Median | ' 'Mean | Median | ' 'Bytes | KBytes | ' '|