[SciPy-user] about weave performance evaluation

Pau Gargallo pau.gargallo at gmail.com
Tue Oct 25 13:40:01 EDT 2005


>
> This is discussed at the URL above.  Here's what they say:
>
>   The expression will use temporaries. Hence, during one iteration, the
>   computed values at an already computed location will not be used
>   during the iteration. For instance, in the original for loop, once
>   the value of u[1,1] is computed, the next value for u[1,2] will use
>   the newly computed u[1,1] and not the old one. However, since the
>   numeric expression uses temporaries internally, only the old value of
>   u[1,1] will be used. This is not a serious issue in this case because
>   it is known that even when this happens the algorithm will converge
>   (but in twice as much time, which reduces the benefit by a factor of
>   2, which still leaves us with a 25 fold increase).
>
> Dan
>

thank you, and sorry I didn't read it carefully enough.

i have then some [not important at all] questions (sorry again):
as i understand from this text, the algorithm that the numeric code
implements is intrinsically 2 times slower. Then,

1- i don't understand the 25 fold increase of the last sentence of the
cited text. Shouldn't we conclude that the use of numeric speeds up by
a factor 100?

2- in the final comparison the time used by numeric is 29.3s. If we
want to compare the performance between the different implementations,
should we divide this time by 2 ?

sorry for these irrelevant questions,
and thank you very much for the responses

pau




More information about the SciPy-User mailing list