Re: [ssax-sxml] Re: Ssax speed
Brought to you by:
oleg
From: Joerg F. W. <Joe...@po...> - 2003-01-23 10:09:49
|
Hi, ol...@po... writes: > Joerg F. Wittenberger wrote: > > Askemos rscheme/regexp 3 s > > Askemos chicken/ssax 25 s > > So the question is......why? > > Perhaps the answer lies in compilation flags? Have you tried the > command line like the following > > csc -O3 -d0 -disable-interrupts -bkav -C "-mcpu=pentium -march=pentium -mpreferred-stack-boundary=2" cg.scm -o cg-chicken > > (mentioned in a recent post by Felix regarding a Gulch benchmark). Thanks for the hint. I used only documented options like this: CSCFLAGS=-case-sensitive -optimize-level 2 -debug-level 0 -unsafe -disable-interrupts is somewhat strange to me. The rscheme version of Askemos is already more responsive under load. -disable-interrupts is not actually a useful option, it would stop Askemos from working and be just an unfair advantage for the benchmark (can't turn it off for rscheme). In the meantime I went a little deeper into this question; chicken is supposed to be faster and I need some more performance for Askemos. The results are currently depressing. I used the ~30k README from www.askemos.org in 100x loop: a) serializing from xml tree chicken (with the options above) 20s rscheme 14s. Remark: there is some C-Code to add translated strings (& -> & etc.) to the output. Both versions use C code to copy the translated string into the output. The rscheme version also translates the characters into those strings in C, while the chicken code does the vector-ref in Scheme. Otherwise no difference. b) parse the file into an xml tree. rscheme (regex based parser) needs 5s. Chicken/ssax uses 55s. > The -fomit-frame-pointer flag to GCC is also quite useful. I used for chicken: CCFLAGS=-Wall -Wno-unused -O3 -fomit-frame-pointer -fstrict-aliasing While rscheme for some reason generates in it's Makefiles -O2 and nothing else. I understand that rscheme should be fixed in that respect, but it would make the above results sharper at best. best regards /Jörg -- The worst of harm may often result from the best of intentions. |