Hello, At http://ecls.sourceforge.net/ecl/The-profiler.html#The-profiler are listed a few functions, which despite building ECL with --with-profile appear to be existing yet unbound symbols.
I also see in contrib/ a profile tool ported from SBCL, but unfortunately the SBCL documentation I can find seems to address another profiler (sb-prof). If I look at the source, the profiler appears to only be able to profile specified functions, when I'd like to have more complete profiling. I guess that since ECL compiles to C it'd also be possible to use gprof and other C profiling tools, though. But is there another recommended way? I have resumed a bit work on my httpd (now named Crow), and since yesterday it also hosts my personal site. The server's hardware is modest compared to my development system (although Crow runs fine and is not slower than the previous js-written HTTPd which hosted my site for years), I'm at a stage where profiling would be nice to have, instead of blindly optimizing every function. Optimizing is also a way to get better aquainted with ECL. I noticed yesterday how rewriting URL-ENCODE differently increased its speed 50-fold (it previously used REDUCE (with custom LAMBDA), CONCATENATE, MAP (with custom LAMBDA), FORMAT, as well as a CHARACTER-VALID-P function which was passed a dynamic variable as its table, all of which resulting in a tremendous amount of function calls for simple string processing). It was elegant to read and fast to write, which was fine for early interactive development, but really had to be rewritten for production use (it now expands to efficient mostly inline C). I also discovered that CHAR<= couldn't be inlined as <= can, such that a macro expanding to CHAR-CODE and <= resulted in a significant speed improvement to test if a character is within an expected range (see http://cvs.pulsar-zone.net/cgi-bin/cvsweb.cgi/mmondor/mmsoftware/cl/server/character.lisp.diff?r1=1.4;r2=1.5). It's possible that the compiler only needs some small modification to allow inlining CHAR* functions, but I've not looked at that yet. Thanks, -- Matt ------------------------------------------------------------------------------ How fast is your code? 3 out of 4 devs don\\\'t know how their code performs in production. Find out how slow your code is with AppDynamics Lite. http://ad.doubleclick.net/clk;262219672;13503038;z? http://info.appdynamics.com/FreeJavaPerformanceDownload.html _______________________________________________ Ecls-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ecls-list
