Hi, I have terrible performance for multiplication when one number gets very close to zero. I'm using cython by writing the following code:
cdef int i cdef double x = 1.0 for 0 <= i < 10000000: x *= 0.8 #x += 0.01 print x This code runs much much slower (20+ times slower) with the line x += 0.01 uncommented. I looked at the deassembled code and it looks correct. Moreover, it's just a few lines and by writing a C code (without python on top), I get the same code, but it's much faster. I've also tried using sse, but I get exactly the same behavior. The best candidate that I see so far is that Python sets up the FPU in a different state than C. Any advice on how to solve this performance problem? thanks!
-- http://mail.python.org/mailman/listinfo/python-list