You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							35 lines
						
					
					
						
							1.1 KiB
						
					
					
				
			
		
		
	
	
							35 lines
						
					
					
						
							1.1 KiB
						
					
					
				| #!/bin/bash
 | |
| 
 | |
| # for a given node version run:
 | |
| # for i in {0..9}; do node benchmark.js >> bench_0.6.2.log; done;
 | |
| 
 | |
| PATTERNS=('nodeuuid.v1()' "nodeuuid.v1('binary'," 'nodeuuid.v4()' "nodeuuid.v4('binary'," "uuid()" "uuid('binary')" 'uuidjs.create(1)' 'uuidjs.create(4)' '140byte')
 | |
| FILES=(node_uuid_v1_string node_uuid_v1_buf node_uuid_v4_string node_uuid_v4_buf libuuid_v4_string libuuid_v4_binary uuidjs_v1_string uuidjs_v4_string 140byte_es)
 | |
| INDICES=(2 3 2 3 2 2 2 2 2)
 | |
| VERSIONS=$( ls bench_*.log | sed -e 's/^bench_\([0-9\.]*\)\.log/\1/' | tr "\\n" " " )
 | |
| TMPJOIN="tmp_join"
 | |
| OUTPUT="bench_results.txt"
 | |
| 
 | |
| for I in ${!FILES[*]}; do
 | |
|   F=${FILES[$I]}
 | |
|   P=${PATTERNS[$I]}
 | |
|   INDEX=${INDICES[$I]}
 | |
|   echo "version $F" > $F
 | |
|   for V in $VERSIONS; do
 | |
|     (VAL=$( grep "$P" bench_$V.log | LC_ALL=en_US awk '{ sum += $'$INDEX' } END { print sum/NR }' ); echo $V $VAL) >> $F
 | |
|   done
 | |
|   if [ $I == 0 ]; then
 | |
|     cat $F > $TMPJOIN
 | |
|   else
 | |
|     join $TMPJOIN $F > $OUTPUT
 | |
|     cp $OUTPUT $TMPJOIN
 | |
|   fi
 | |
|   rm $F
 | |
| done
 | |
| 
 | |
| rm $TMPJOIN
 | |
| 
 | |
| gnuplot bench.gnu
 | |
| convert -density 200 -resize 800x560 -flatten bench.eps bench.png
 | |
| rm bench.eps
 |