Re: [tcljava-dev] Performance results for new TJC compiler
Brought to you by:
mdejong
From: Mo D. <md...@un...> - 2006-03-26 23:57:50
|
Hello all I have recently implemented the "compiled locals" feature from the C version of Tcl in the TJC compiler. This feature makes use of an array of variable objects known at compile time instead of using a hashtable to store the variable objects. This means that a TJC compiled proc will now consume less memory and will execute more quickly in many cases. Here are the highlights showing performance improvements found when comparing TJC compiled code before and after the "compiled locals" enhancement. These times are all in ms, they come from the tclbench test suite found in tcljava/tests/tclbench in the CVS. Tcl Bench test name Pre-locals W-locals invoke_1_to_10 3585 1873 invoke_1_to_10_loop 51770 18320 invoke_empty 42 20 bench_set_different_scalars 26 10 bench_set_same_scalar 10 6 bench_set_global_import 18 12 bench_set_array_variable_keys 70 28 bench_set_array_and_scalar_names 52 38 bench_incr_array_constant_50 100 50 data-create-array 5668 1652 These results show that the "compiled locals" feature has resulted in a significant performance improvement for many common cases. cheers Mo DeJong |