Re: Differences between pypy2 and 3 and cffi
Dan Stromberg <[email protected]> Tue, 15 Feb 2022 20:24:29 -0800
| Newsgroups | gmane.comp.python.pypy |
|---|---|
| Message-ID | <CAGGBd_oz16wzhS+FJeHTj5MWfr406bXm-Zu+2ha8pA6yXYPLKA@mail.gmail.com> |
I doubt this is an expected result for Pypy3. But what if you use: result[i] = float(x) if x else 0.0 ...to make result be of homogeneous type? On Tue, Feb 15, 2022 at 3:36 AM Ioannis Foufoulas <[email protected]> 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 > [email protected] > https://mail.python.org/mailman/listinfo/pypy-dev > _______________________________________________ pypy-dev mailing list [email protected] https://mail.python.org/mailman/listinfo/pypy-dev