Re: performance issues with for loop and imap/deque maxlen=0

Albert Cardona <[email protected]> Sat, 16 May 2020 14:35:29 +0100
Newsgroups gmane.comp.lang.jython.devel
Message-ID <CAJj13_-LWFqwnpSex_3b=or7pCzEkXvFMYrcP+v4Mub7Oa=a3w@mail.gmail.com>
Thanks Adam!
By the way, the link to the repository at
https://jython-devguide.readthedocs.io/en/latest/ (point 2, github) is
wrong: it's jythontools/jython, not jython/jython
Best wishes,
Albert

Missatge de Jeff Allen <[email protected]> del dia ds., 16 de maig
2020 a les 14:24:
>
> Hi Albert:
>
> I was going to ask for an isolated example, which might still be useful, but if you have a solution, that's even more interesting.
>
> Either open an issue at bugs.jython.org and attach a patch, or make a PR at https://github.com/jythontools/jython . In the latter case, we will go via a patch because we don't (for now) master the repo at GitHub.
>
> Actually, that's probably the next action for the project: move to GitHub.
>
> Jeff Allen
>
> On 16/05/2020 14:13, Albert Cardona wrote:
>
> Hi all,
> I think I can improve the performance of imap significantly.
> Would you take pull requests at https://github.com/jythontools/jython/blob/master/src/org/python/modules/itertools/imap.java ?
> Or should one submit patches to the mercurial repository?
> Thanks,
> Albert
>
> On May 16, 2020, at 12:09 AM, Albert Cardona <[email protected]> wrote:
>
> Hi all,
>
> I am seeing severe performance problems when looping over sequences
> and invoking a single method on each element of the sequence, both
> with a for loop and with an imap + deque maxlen=0 strategy. The
> baseline is clojure, which is fully typed and compiled to bytecode.
>
> The difference is staggering: 500x to 1000x (from about 1 second to 1
> millisecond).
>
> Here is a script that can run in Fiji:
>
> https://github.com/acardona/scripts/blob/dev/python/imagej/tests/test_looping_performance_imglib2_setOne.py
>
> The script creates an ImgLib2 image of width=512, height=512, depth=5,
> of type unsigned byte, and then loops over all pixels to invoke the
> method "setOne" on each pixel (pixels are presented as wrapped by an
> UnsignedByteType object that offers the "setOne" method). There is an
> underlying byte[] array of size 512*512*5 to the image.
>
> Why the enormous difference? Anything that can be done to mitigate this issue?
>
> Thank you very much.
>
> Albert
>
>
>
> _______________________________________________
> Jython-dev mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/jython-dev


_______________________________________________
Jython-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jython-dev