Procedure call profile for the cleaned up version of EM-IMP, as profiled in Larceny 0.32. 26371116 calls to top-level procedures 2740262 10.4 matrix-ref 2357710 8.9 exp 1565864 5.9 matrix-rows 1565864 5.9 matrix-set! 1371931 5.2 max 1371331 5.2 model-mu 1371331 5.2 model-sigma-inverse 1184299 4.5 anonymous 1175598 4.5 add-exp 1175598 4.5 floor 1175598 4.5 min 1175598 4.5 model-log-determinant-sigma 1175598 4.5 model-log-pi 982522 3.7 ieee-log 982522 3.7 log 590799 2.2 map-n-vector 587199 2.2 matrix-columns 392666 1.5 make-matrix 391466 1.5 every-n 200333 0.8 first 197033 0.7 second 196433 0.7 %list 195734 0.7 call-with-current-continuation 195733 0.7 clip-eigenvalues! 195733 0.7 determinant 195733 0.7 invert-matrix! 195733 0.7 jacobi! 195733 0.7 make-matrix-initial 195733 0.7 model-sigma 195733 0.7 set-model-log-determinant-sigma! 195733 0.7 set-model-log-pi! 195733 0.7 set-model-pi! 195733 0.7 sum 92676 0.4 e-step! 92576 0.4 m-step! 41742 0.2 modulo 27342 0.1 logical:ash-4 17271 0.1 logical:logxor 3600 0.0 noise 3600 0.0 rand 3600 0.0 random:chunk 3300 0.0 rest 600 0.0 make-model 600 0.0 positionv 600 0.0 reduce 600 0.0 vector->list 400 0.0 reverse 300 0.0 em! 300 0.0 initial-z! 220 0.0 char-numeric? 200 0.0 map 200 0.0 map-n 200 0.0 remove-if-not 200 0.0 void 100 0.0 em-clusterer! 100 0.0 ems! 55 0.0 hex-string->number 55 0.0 string->list 55 0.0 substring 1 0.0 em-imp-benchmark 1 0.0 end-countcalls 1 0.0 random:initialize 1 0.0 run-benchmark 1 0.0 string=?