From: Daniel B. <da...@te...> - 2002-03-20 21:02:22
|
Raymond Toy <to...@rt...> writes: [ -O3 ] > Eric Marsden pointed that out to me for CMUCL a bit ago. I run CMUCL > this way. Probably a very safe change. I wonder why? Faster gc? > Faster allocation? Faster trap handling? I wouldn't be surprised to find it was the GC. The central copy operation is coded as while (nwords > 0) { dest[0] = source[0]; dest[1] = source[1]; dest += 2; source += 2; nwords -= 2; } - it would be not entirely unreasonable to suppose that a bit of instruction reordering, loop unrolling etc might help there, for example. Actually, I'd tend to believe that memcpy() ought to be faster yet, it generally being implemented in assembler with attention paid to caches and suchlike. Is there any reason we dont use memcpy here? -dan -- http://ww.telent.net/cliki/ - Link farm for free CL-on-Unix resources |