1The following are examples of running the script tcl_ins.d 2 3Here it traces as Code/Tcl/func_slow.tcl executes. 4 5# tcl_ins.d 6Tracing... Hit Ctrl-C to end. 7^C 8 PID TYPE NAME COUNT 9 16005 inst foreach_start4 1 10 16005 inst jumpTrue1 1 11 16005 inst lappendScalar1 1 12 16005 inst list 1 13 16005 inst strneq 1 14 16005 inst beginCatch4 2 15 16005 inst dup 2 16 16005 inst endCatch 2 17 16005 inst eq 2 18 16005 inst land 2 19 16005 inst storeScalarStk 2 20 16005 inst foreach_step4 4 21 16005 inst not 4 22 16005 inst loadArrayStk 5 23 16005 inst streq 7 24 16005 inst tryCvtToNumeric 8 25 16005 inst jumpFalse1 12 26 16005 inst loadScalarStk 13 27 16005 inst jump1 14 28 16005 inst pop 18 29 16005 inst invokeStk1 53 30 16005 inst add 600000 31 16005 inst concat1 600000 32 16005 inst exprStk 600000 33 16005 inst lt 600007 34 16005 inst storeScalar1 600016 35 16005 inst done 600021 36 16005 inst loadScalar1 1200020 37 16005 inst push1 4200193 38 39It is showing the instructions called by Tcl as the program executes. The 40larger counts toward the bottom of the display are from the looping construct 41used in Code/Tcl/func_slow.tcl. 42 43Tracing the instructions is quite low-level and slow the target application 44considerably and would probably be used only as a last resort if you have no 45other indication of why CPUs are busy. 46 47