[mercury-users] Informal speed trial result

Ralph Becket rbeck at microsoft.com
Sun Oct 3 03:38:43 AEST 1999


This is just an informal interim result, but I thought people might be
interested.

I've recoded the (staggeringly low level and gruesome) SPEC benchmark
129.compress in Mercury.  I've got to sort out a proper test harness and
get the C benchmark to compile properly, but I did a quick test run against
gzip just to see what turned up.

Test conditions:
reasonably fast PIII box with 128 MBytes of RAM, running Windows2000;
test is to compress just over 1 MByte of test data (`cat *.m >TestData'
from the Mercury standard library);
using the Cygnus tools (b20).

(1) [Mercury] time compress TestData ZippedData
	(compiled with -O 6 --intermodule-optimization --gc none)

(2) [C]       time gzip TestData

Results:
		(1)		(2)		(1)/(2)%
real		1.031s	0.721s	143%
user		0.841s	0.700s	120%
sys		0.100s	0.020s	500%

user+sys	0.941s	0.720s	131%

Okay, this is really very unscientific, but the Mercury code has incurred
a mere 30-40% penalty for the task in hand.  If I turn GC back on the
user+sys
ratio only goes up to 140%.

I reckon this is very encouraging!  Congratulations to the compiler writers.
I'm going to do some more scientific testing next week and write this up
properly - more then.

Ralph

p.s. The Mercury consists of 152 lines of declarations + 356 lines of code;
the C for 129.compress consists of 131 lines of preprocessor + 604 lines of
code (although there is some debugging code in there too).
--------------------------------------------------------------------------
mercury-users mailing list
post:  mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-users-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the users mailing list