|Eiffel and Efficiency Issues email@example.com (1990-06-07)|
|Re: Eiffel and Efficiency Issues firstname.lastname@example.org (1990-06-14)|
|Re: Eiffel and Efficiency Issues email@example.com (1990-06-20)|
|Re: Eiffel and Efficiency Issues firstname.lastname@example.org (1990-07-07)|
|From:||email@example.com (Burton Leathers)|
|Date:||Thu, 14 Jun 90 03:22:02 GMT|
|Organization:||Cognos Inc., Ottawa, Canada|
|Keywords:||eiffel, code, optimize|
It was asked what contributes to the ~25% performance disadvantage of
Eiffel relative to C.
It should first be noted what is directly comparable: flow control within
functions and expressions evaluation.
It is true that garbage collection imposes an overhead. I have not
had an opportunity to compare the Eiffel automatic garbage collection
with manual methods but suspect that by virtue of the n-square algorithm
employed that it is some part of the Eiffel cost.
It is true that feature selection is not free - although it is no worse
than C++. There is a startup cost associated with feature selection which
can be irritating and could probably be eliminated. (Look at the INIT
and DIVE routines in a C package.) Some tests I have conducted using a
SUN 3/60 measure the selection cost at about 5 microseconds. It is possible
that an entirely different approach could reduce this cost to a single
indexed indirection (less than a microsecond).
The killer in the tests I have done point to function invocation. On a
SUN 3/60, every feature call - not attribute reference - imposes an
overhead in excess of 200 microseconds. This is very painful but, as
was pointed out in Meyer's recent posting on the shortcomings of the
current implementation of Eiffel, is being addressed. Send a croissant
to ISE to fuel the developers in this effort.
As an incurable fan of the Eiffel language I cannot help being
disappointed that the current implementation is not faster than it
is. At least we have seen evidence of improvement and can expect more.
It is comforting to know that Eiffel is likely to get fast sooner
than another language is likely to get good.
Burton Leathers 3755 Riverside Dr. decvax!utzoo!dciem!
Cognos Incorporated P.O. Box 9707 nrcaer!cognos!burtonl
(613) 738-1440 Ottawa, Ontario
CANADA K1G 3N3
Return to the
Search the comp.compilers archives again.