dalley has quit [Ping timeout: 244 seconds]
dalley has joined #hpy
<mattip> will the BOF session be broadcast or recorded?
DuToit has joined #hpy
<DuToit> I've completed my first benchmark for HPy, for copying an Image object. The code to generate it is here: https://imgur.com/9sppdIL. I've graphed the results here: https://imgur.com/Q38Zyns . This compares HPy to the C API only on CPython, as I'm having a bit of an issue with getting PyPy to work with HPy, and with getting GraalPython to create
<DuToit> virtual envs. For PyPy, this is the traceback when trying to import PIL after building the library: https://imgur.com/4qCAcoT. For GraalPython, I simply get an ensurepip error.
<phlebas> DuToit: cool! sorry if I missed this, did you already publish the code somewhere? I'd be interested in trying to see what the graalpython issue is :)
<DuToit> phlebas: I'm not running my code on GraalPython, the issue occurs when making a venv - the venv folder is created, but there is no activate file so it can't be used. My terminal output is here: https://imgur.com/STyqAjI. I installed the community edition of GraalVM and installed GraalPython with gu.
<mattip> DuToit: what version of pypy are you using?
<mattip> where is the HPy version of pillow?
<mattip> what is the y axis in the graph, and do you know why some runs of cpython are so much slower? Is it because of disk caching?
<mattip> I am a bit confused by the y axis since it seems there are non-integer counts there, or is it only my inability to read the graph properly
<DuToit> mattip: The version of PyPy is 7.3.9, and it's running Python 3.8.13. My HPy Pillow lives over here: https://github.com/DuToitSpies/Pillow/tree/Pillow_HPy_Port.
<antocuni> as you can see, there is an assert at line 149, which is probably the one which is failing for you
<antocuni> the easiest way to debug is to do a binary search in your PyType_Slot array (by commenting/uncommenting half of the lines at each iteration) to find which is the one which is not supported by PyPy
<antocuni> also, when you want to copy&paste long parts of text such as tracebacks or terminal output, it's probably a better idea to use a pastebin isntead of a screenshot :). Personally, I use https://paste.openstack.org/
<mattip> antocuni: would a nightly build JustWork since we are supposed to support 0.0.4 there?
<antocuni> I don't think that 0.0.4 support is already merged
<antocuni> I'm working on the hpy-0.0.4 branch and it's not finished yet
<antocuni> I try to blindly guess: if you look at make_slot_wrappers_table, you see that c_bf_getbuffer&co. are ignored
<antocuni> so if the pillow code uses one of those legacy slots, it would probably hit the assertion
DuToit has quit [Quit: Client closed]
<fangerer> DuToit: creating venvs with GraalPython should work since we do that in our release gates. I suggest that you create the venv without pip (i.e. `graalpython -m venv --without-pip ...`) and then run the `ensurepip` command separately. This should give you more errors.
<fangerer> What exact version GraalVM version did you use? Are you on Linux? I'll try to reproduce.
<Hodgestar> mattip: I don't know wether the BoF will be broadcast. SciPy is making some effort to allow remote participation at the conference, but I don't know whether that will extend beyond the talks. I'll have to see once I'm at the conference.
<mattip> thanks
<Hodgestar> antocuni: For fixing the Pillow port, would the idea be to remove the c_bf_getbuffer slots and replace them with something not specific to PyPy? Or do those need to be supported by PyPy's HPy?
<antocuni> I think that currently we support HPy-native buffer slots, but we don't support legacy buffer slots
<antocuni> so to support pillow we either need to fix the legacy supports in pypy, or migrate pillow to use hpy slots for that
<Hodgestar> +1
<Hodgestar> Maybe we can mention that to DuToit at the meeting tomorrow. For the Pillow benchmark, porting a bit more to HPy properly is maybe good anyway.
<fangerer> Since you were mentioning it: Please remind that we will have our monthly meeting tomorrow at 10a CEST / 8a UTC. Join us on Zoom: https://oracle.zoom.us/j/339127822?pwd=YkNZbFgvdXZ4Z3NlcWg1N3BlZ3JTUT09
<fangerer> I'll try to come up with an agenda. Besides SciPy 2022 HPy BoF, is there anything you guys want to have on the agenda?
<Hodgestar> fangerer: Maybe let's add a short discussion about DuToit's Pillow port? Not sure there is a huge amount to discuss, but it would be good to have a bit of space anyway.
<fangerer> yes, sure
<Hodgestar> And maybe an update on the HPy++ mini-sprint in September if there is one?
<Hodgestar> And an update from the GraalPython team, of course!
<Hodgestar> It might be an idea to touch base on who is working on what at the moment and with how much of their time generally, so that we have a picture in our heads.
DuToit has joined #hpy
<DuToit> Sorry for going offline for a bit, I just had loadshedding (no power) for a few hours and my battery died. For PyPy, commenting out {Py_tp_dealloc, (destructor)_dealloc} fixed the issue in the screenshot, but raised this NotImplemented error: https://paste.opendev.org/show/b7BzITJbgPCfuCMpKsth/
<antocuni> DuToit: the error says it all :): PyPy does not support Py_tp_getset in legacy slots at the moment
<antocuni> as well as Py_tp_dealloc
<antocuni> I think that the idea is that eventually you should port all these methods to "pure" HPy, without using legacy functions
<antocuni> so once this is done, it should work also on PyPy
<DuToit> For GraalPython, I accidentally made a VM with only 1gb of ram, so trying to install pip broke the VM. I've increased the VM memory, and it seems to be going well now
DuToit has quit [Quit: Client closed]
<Hodgestar> O_o :)
<fangerer> 🙂 we are working hard to improve our mem footprint
dalley has quit [Quit: Leaving]
dalley has joined #hpy
<fangerer> (preliminary) agenda is online; feel free to add/modify it: https://github.com/hpyproject/hpy/wiki/dev-call-20220707
pmp-p has quit [Ping timeout: 256 seconds]
<Hodgestar> fangerer: Wow! That is crazily prepared! :D
dalley has quit [Ping timeout: 244 seconds]
dalley has joined #hpy