From: salvador <sal...@in...> - 1999-06-29 16:45:06
|
Hi All: I was playing a little more with the benchmarks here are some details: 1) I emulated the MSVC aligment using -malign-jumps=0, -malign-loops=0, -malign-functions=4, -malign-double and doing a trick to prevent ld from breaking my aligment. The result was very small, some times faster, some times slower. Nothing that really makes the difference. I only tested with the K6-2. 2) I taked a look to the code generated by gcc 2.95 and is quite close to the code from MSVC, things that still slower: a) Slower epilog and not generated for super-scalar processors. b) gcc 2.95 is emiting 2 stack adjusts instead of just one. After trying regparm(3) for the numeric sort I got about 4% of speeup and the code is now only 5% slower than MSVC code. 3) I was wondering why MSVC was so much faster for string sorts, so I taked a quick look to this benchmark and saw it uses memmove, so I replaced djgpp v2.02 memmove to the one I submited for v2.03 (properly aligning the routine) and now gcc is 13% faster than MSVC ;-) The string sort jumped from around 0.58 to 1.13! (1=MSVC 5.0). SET -- Salvador Eduardo Tropea (SET). (Electronics Engineer) Visit my home page: http://welcome.to/SetSoft or http://www.geocities.com/SiliconValley/Vista/6552/ Alternative e-mail: set...@us... se...@co... se...@ie... set...@bi... Address: Curapaligue 2124, Caseros, 3 de Febrero Buenos Aires, (1678), ARGENTINA Phone: +(5411) 4759 0013 |