[pypy-dev] Performance degradation in the latest pypy
Maciej Fijalkowski
fijall at gmail.com
Sat Oct 29 09:22:31 EDT 2016
Hi Saud
copy.copy is a lot slower in new pypy. Minimal example to reproduce it:
import copy, sys
class A(object):
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
self.d = a
self.e = b
a = [A(1, 2, 3), A(4, 5, 6), A(6, 7, 8)]
def f():
for i in range(int(sys.argv[1])):
copy.copy(a[i % 3])
f()
(run it with 1 000 000)
The quick workaround for you is to write a copy function manually,
since you use it in one specific place, that should make things a lot
faster.
In the meantime we'll look into the fix
On Sat, Oct 29, 2016 at 8:02 AM, Saud Alwasly <saudalwasli at gmail.com> wrote:
> here is the new zip file including the missing package
>
>
> On Fri, Oct 28, 2016 at 10:58 AM Maciej Fijalkowski <fijall at gmail.com>
> wrote:
>>
>> (vmprof)[brick:~/Downloads/dir] $ python Simulate.py
>>
>> Traceback (most recent call last):
>>
>> File "Simulate.py", line 9, in <module>
>>
>> from pypyplotPKG.Ploter import Graph, plot2, hist, bar, bar2
>>
>> File "/Users/dev/Downloads/dir/pypyplotPKG/Ploter.py", line 1, in
>> <module>
>>
>> import pypyplotPKG.pypyplot as plt
>>
>> File "/Users/dev/Downloads/dir/pypyplotPKG/pypyplot.py", line 3, in
>> <module>
>>
>> from shareddataPKG import SharedData as SharedData
>>
>> ImportError: No module named shareddataPKG
>>
>> On Fri, Oct 28, 2016 at 12:42 AM, Saud Alwasly <saudalwasli at gmail.com>
>> wrote:
>> > Sure, here it is.
>> > you can run Simulation.py
>> >
>> > On Wed, Oct 26, 2016 at 9:08 AM Armin Rigo <armin.rigo at gmail.com> wrote:
>> >>
>> >> Hi Saud,
>> >>
>> >> On 26 October 2016 at 11:19, Saud Alwasly <saudalwasli at gmail.com>
>> >> wrote:
>> >> > I have noticed severe performance degradation after upgrading pypy
>> >> > from
>> >> > pypy4.0.1 to pypy5.4.1.
>> >> >
>> >> > I attached the call graph for the same script running on both:
>> >> > it seems that the copy module is an issue in the new version.
>> >>
>> >> Please give us an example of runnable code that shows the problem. We
>> >> (or at least I) can't do anything with a call graph.
>> >>
>> >>
>> >> A bientôt,
>> >>
>> >> Armin.
>> >
>> >
>> > _______________________________________________
>> > pypy-dev mailing list
>> > pypy-dev at python.org
>> > https://mail.python.org/mailman/listinfo/pypy-dev
>> >
More information about the pypy-dev
mailing list