[pypy-dev] Differences between pypy2 and 3 and cffi

Matti Picus matti.picus at gmail.com
Wed Feb 16 02:03:40 EST 2022


On Tue, Feb 15, 2022 at 3:36 AM Ioannis Foufoulas <johnfouf at gmail.com> 
wrote:

    Hi,
    I have an embedded function:

    @ffi.def_extern()
    def toint(input,insize,result):
         for i in range(insize):
             x = ffi.string(input[i])
             result[i] =  float(x) if x else 0
           return 1

    It seems that this runs around 30-40% percent slower in PyPy3 than in 2.

    Input is a char** c array and result is a float c array. The
    difference is not in ffi.string
    If having `result[i] = 1 if x else 0` it runs same in both versions.
    Any ideas?

    _______________________________________________
    pypy-dev mailing list
    pypy-dev at python.org
    https://mail.python.org/mailman/listinfo/pypy-dev


>
I converted this to an issue 
https://foss.heptapod.net/pypy/pypy/-/issues/3682 with some timings and 
analysis of what might be happening.

Matti



More information about the pypy-dev mailing list