Rename benchmark.compiler to optimizer.report
parent
51a589835e
commit
da716ed6ec
|
@ -1,17 +0,0 @@
|
||||||
IN: benchmark.compiler
|
|
||||||
USING: assocs words sequences arrays compiler tools.time
|
|
||||||
io.styles io prettyprint vocabs kernel sorting generator
|
|
||||||
optimizer ;
|
|
||||||
|
|
||||||
: recompile-with-timings
|
|
||||||
all-words [ compiled? ] subset
|
|
||||||
[ dup [ word-dataflow optimize nip drop ] benchmark nip ] { } map>assoc
|
|
||||||
sort-values 20 tail*
|
|
||||||
"Worst offenders:" print
|
|
||||||
standard-table-style
|
|
||||||
[
|
|
||||||
[ [ "Word" write ] with-cell [ "Compile time (ms)" write ] with-cell ] with-row
|
|
||||||
[ [ [ pprint-cell ] each ] with-row ] each
|
|
||||||
] tabular-output ;
|
|
||||||
|
|
||||||
MAIN: recompile-with-timings
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
IN: optimizer.report
|
||||||
|
USING: assocs words sequences arrays compiler tools.time
|
||||||
|
io.styles io prettyprint vocabs kernel sorting generator
|
||||||
|
optimizer ;
|
||||||
|
|
||||||
|
: count-optimization-passes ( nodes n -- n )
|
||||||
|
>r optimize-1
|
||||||
|
[ r> 1+ count-optimization-passes ] [ drop r> ] if ;
|
||||||
|
|
||||||
|
: word-table
|
||||||
|
[ [ second ] swap compose compare ] curry sort 20 tail*
|
||||||
|
print
|
||||||
|
standard-table-style
|
||||||
|
[
|
||||||
|
[ [ [ pprint-cell ] each ] with-row ] each
|
||||||
|
] tabular-output ;
|
||||||
|
|
||||||
|
: optimizer-report
|
||||||
|
all-words [ compiled? ] subset
|
||||||
|
[
|
||||||
|
dup [
|
||||||
|
word-dataflow nip 1 count-optimization-passes
|
||||||
|
] benchmark nip 2array
|
||||||
|
] { } map>assoc
|
||||||
|
[ first ] "Worst number of optimizer passes:" results
|
||||||
|
[ second ] "Worst compile times:" results ;
|
||||||
|
|
||||||
|
MAIN: optimizer-report
|
Loading…
Reference in New Issue