Mark Dickinson wrote:

>I'm almost sure that adding 40000 digit numbers together is not what
>Decimal was intended to be used for, but it still seems unreasonable
>that it takes almost 5 seconds to do such an addition.  The reason for
>the quadratic behaviour is that almost all the arithmetic routines in
>decimal.py, at some point, convert the coefficient of their
>argument(s) from a tuple of digits to a Python integer, and then do
>the reverse conversion to get a Decimal result;  both of these
>conversions (tuple of digits <-> integer) take time quadratic in the
>size of the tuple/integer.   This means that multiplication of
>Decimals is also quadratic time, even though it makes use of Python's
>subquadratic Karatsuba multiplication.
>  
>
Oh right, my mistake :> -- I looked at python code, but I forgot about 
conversion ;).

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to