[Numpy-discussion] idea of optimisation?

David Froger david.froger at gmail.com
Tue Dec 6 03:54:03 EST 2011


Excerpts from Xavier Barthelemy's message of mar. déc. 06 08:51:22 +0100 2011:
> ok let me be more precise
> 
> I have an Z array which is the elevation
> from this I extract a discrete array of Zero Crossing, and another discrete
> array of Crests.
> len(crest) is different than len(Xzeros). I have a threshold method to
> detect my "valid" crests, and sometimes there are 2 crests between two
> zero-crossing (grouping effect)
> 
> Crest and Zeros are 2 different arrays, with positions. example:
> Zeros=[1,2,3,4] Arrays=[1.5,1.7,3.5]

Thanks  for the  precision.  My suggestion  was to  consider the  alternative of
rewriting the critical  time consuming part of the code  (the function that take
XCrest and Xzeros as input and return CrestZerosNeighbour) in C or Fortran, this
function si then wrapped into Python using Swig,  or F2py,  or Cython, or Weave.
I think this is a typical case  where this is usefull.  Advantage is that in the
C or Fortran function,  you can code directly the algorithm you want and have an
maximal optimization.  Drawback is that you loose the simplicity of pure Python,
you need to manage 2 languages and a tool to connect them...
-- 



More information about the NumPy-Discussion mailing list