00:03
adamholmberg has joined #pypy
00:04
adamholmberg has quit [Remote host closed the connection]
00:04
adamholmberg has joined #pypy
00:09
adamholmberg has quit [Remote host closed the connection]
00:09
<
mattip >
antocuni: we wanted to move build_cffi_imports to somewhere under lib_pypy anyway
00:14
<
mattip >
created: it comes from rpython/rlib/rvmprof/rvmprof.py, as part of a decorator
00:15
<
created >
mattip - ah. Is there an easy way to get that code to be executed without translating again? So I could print-debug and what not?
00:16
<
created >
It doesn't seem to be executed if I run pyinterpreter directly, even if I try 'import _vmprof' in pyinterpreter
00:16
<
created >
(Although, perhaps it is supposed to work and it doesn't work due to the same issue as I'm trying to figure out on windows?)
00:19
<
mattip >
the _vmprof module is disabled for windows in pypy/config/pypyoption.py, since it does not work there
00:19
<
created >
Oh, thanks!
00:20
<
mattip >
which problem are you trying to solve?
00:20
<
created >
Trying to get it to work on windows
00:21
<
mattip >
maybe not an easy task, if you are looking for low-hanging fruit
00:24
<
mattip >
this is what is done on cpython
00:26
<
created >
I think you already have most of the support
00:26
<
created >
But maybe something's missing
00:30
<
mattip >
do the tests actually run on windows: python2 pytest.py rpython\rlib\rvprof\test
00:30
<
mattip >
or are they skipped?
00:33
<
created >
They seem skipped unless I specify a file to run from the test directory explicitly
00:33
<
created >
Not sure by what
00:34
<
created >
I'll also note that pypy2 does support _vmprof (not sure how well), which is why I think you already have most of the logic inside, and just got it disabled/broken
00:34
<
created >
E.g. _vmprof's test_direct passes with pypy2
00:35
<
mattip >
sure, because I think it doesn't actually profile anything
00:35
<
created >
Oh, they're ignored by pytest_ignore_collect - the tests
00:36
<
mattip >
so you will need to unskip the tests and get them passing, and then get jit/backend/x86/test/test_rvmprof.py passing
00:36
<
created >
Didn't check it in pypy2, but the profiling code definitely exists, just might not be fully working or complete
00:37
<
mattip >
it might do something, but not profile jitted code or be subtly broken in some other way
00:39
<
mattip >
are you sure the pypy/module/_vmprof tests are all being run?
00:40
<
created >
They don't succeed yet, no
00:40
<
created >
Never said they did
00:40
<
created >
But I changed it so that they run, at least
00:41
<
created >
Currently, there's some invalid runtime parameter error
00:43
<
created >
Oh, I noticed you gave me a third test directory to look at
00:43
<
created >
Or rather I was looking at a different test directory
00:44
<
mattip >
looking at the test output from the buildbot, it seems the pypy/module/_vmprof tests fail to even pass the collection stage
00:45
<
mattip >
something about faulthandler.c not compiling (search that page for "faulthandler.c")
00:45
<
mattip >
so a long and winding road to get this going
00:47
<
created >
rpython\jit\backend\x86\test\test_rvmprof.py seems to pass
00:47
<
created >
I'm assuming it's not a direct test as I didn't successfully translate yet
00:48
jcea has joined #pypy
00:51
<
created >
The rlib/rvmprof/test tests are skipped because my machine is AMD64 and not x86
00:51
<
created >
That doesn't sound healthy - is that intentional? Are they skipped on unix x64 machines too?
00:54
<
mattip >
yes, it is intentional, the tests are meant to be skipped on win32
00:54
<
mattip >
you can compare to a wsl vm, there machine is "x86_64"
00:55
<
created >
I would've expected platform.machine to be OS-independent, but that's neither here nor there
00:56
<
mattip >
all of the tests in pypy and rpython are meant to be run untranslated
00:57
<
mattip >
the ones in pypy and extra_tests are run after translation
00:57
<
created >
you said pypy twice, did you mean something else?
00:58
<
mattip >
nope, those are run by both translated and untranslated, but with some extra skipping where needed
00:58
<
mattip >
you can see in the buildbot stdio logs what runs where
01:05
<
created >
I am starting to see bigger issues, yeah
01:05
<
created >
Pypy no longer seems to expose thread ids for one
01:22
<
created >
Or rather, it indeed never did
01:23
<
created >
So I guess it never worked
02:21
trinityhex has joined #pypy
02:23
<
created >
Or maybe it is supported
02:23
<
created >
But not in tests
02:27
<
mattip >
what is the error you get in the untranslated test (paste to a pastebin, not here), there are some tricks to get thread ids untranslated
02:28
<
mattip >
in rpython
02:40
<
created >
Basically, thread_ident doesn't exist during untranslated tests at all
02:56
<
mattip >
created: see rpython/rlib/rthread.py, where it does ThreadLocalField(...)
02:56
<
mattip >
that is the code that builds up the structure one field at a time
02:57
<
created >
Yeah, I found it, but I don't see why it wouldn't be included in the tests
02:57
<
created >
Other fields defined there are included
02:58
<
created >
(rpy_errno and alt_errno are included, while thread_ident and I think p_errno aren't)
03:00
<
mattip >
that is the beauty of untranslated tests. You can add a "import pdb;pdb.set_trace()" in rthread.py, and run the test
03:00
<
mattip >
it should stop and let you poke around
03:02
<
created >
Hmm, I could give it a try
03:10
<
mattip >
uhh, are you sure it doesn't exist?
03:10
<
mattip >
When running test_rthread.py tests, I see it in the %TEMP%/usession-something/testing_1/structdef.h file
03:19
<
created >
mattip - weird - it exists when you test rthread, but not when you test rvmprof
03:20
trinityhex has quit [Ping timeout: 240 seconds]
03:22
<
created >
It seems like compute_result_annotation is not reached with this particular fieldname when testing rvmprof, but I don't understand why
03:22
<
created >
I don't see where the annotation is, I assume it's some kinda magic
03:22
<
mattip >
is the entire struct empty - or just missing some fields?
03:22
<
created >
No, just missing that field
03:23
<
created >
It has all the others other than p_errno
03:27
<
mattip >
maybe try putting a call to rthread.get_ident() somewhere, like in test/test_translation
03:36
<
created >
Doesn't seem to help
03:36
<
created >
I do see a comment in vmprof_win.c saying that if thread_ident doesn't exist, suspending the threads may be unsafe (dunno if it is, but if so - it may be a good idea to instead just make sure it compiles in this case by ading an extra #ifdef)
03:37
<
created >
I'll take a break for a while
03:37
<
created >
The actual thing doesn't really work either
03:38
<
created >
It seems to collect things into a file but then the file gets corrupted by something
03:39
<
created >
(Possibly doesn't stop profiling correctly)
03:39
<
mattip >
yeah, not the easiest place to get going with pypy
03:50
Arfrever has quit [Quit: 御出で]
03:55
trinityhex has joined #pypy
04:21
trinityhex has quit [Ping timeout: 240 seconds]
04:35
dddddd has quit [Remote host closed the connection]
05:20
jcea has quit [Remote host closed the connection]
05:45
trinityhex has joined #pypy
06:04
camelCaser has quit [Read error: Connection reset by peer]
06:09
camelCaser has joined #pypy
06:23
_whitelogger has joined #pypy
06:24
trinityhex has quit [Ping timeout: 258 seconds]
06:50
_whitelogger has joined #pypy
07:02
jcea has joined #pypy
07:07
jcea has quit [Client Quit]
07:11
i9zO5AP has quit [Quit: WeeChat 2.5]
07:21
jvesely has joined #pypy
07:47
altendky has quit [Quit: Connection closed for inactivity]
08:29
xcm has quit [Remote host closed the connection]
08:30
xcm has joined #pypy
08:59
_whitelogger has joined #pypy
09:13
jvesely has quit [Quit: jvesely]
10:28
<
mattip >
antocuni: something is missing on -A cpyext tests on py3.6
10:28
<
mattip >
TypeError: w_import_module() got an unexpected keyword argument 'use_imp'
10:37
tsaka__ has quit [Ping timeout: 260 seconds]
11:04
tsaka__ has joined #pypy
11:20
tsaka__ has quit [Ping timeout: 240 seconds]
11:23
tsaka__ has joined #pypy
12:17
jacob22 has quit [Read error: Connection reset by peer]
12:17
jacob22 has joined #pypy
12:20
tsaka__ has quit [Ping timeout: 268 seconds]
12:46
tsaka__ has joined #pypy
13:29
_whitelogger has joined #pypy
13:53
_whitelogger has joined #pypy
14:08
tsaka__ has quit [Ping timeout: 240 seconds]
14:15
trinityhex has joined #pypy
14:53
dddddd has joined #pypy
15:04
trinityhex has quit [Ping timeout: 258 seconds]
15:34
<
kenaan >
mattip winconsoleio a5da068662dd /: merge py3.6 into branch
15:34
<
kenaan >
mattip winconsoleio d199a8198079 /: add a test, but it hangs trying to read from stdio, even after copying cpython
15:40
trinityhex has joined #pypy
16:00
trinityhex has quit [Ping timeout: 265 seconds]
16:10
tsaka__ has joined #pypy
17:09
altendky has joined #pypy
17:35
_whitelogger has joined #pypy
17:44
CrazyPython has joined #pypy
17:54
CrazyPython has quit []
17:55
CrazyPython has joined #pypy
18:07
ronan has quit [Remote host closed the connection]
18:08
ronan has joined #pypy
18:08
ronan has quit [Remote host closed the connection]
18:09
ronan has joined #pypy
18:13
CrazyPython has quit [Read error: Connection reset by peer]
18:17
Ai9zO5AP has joined #pypy
18:26
the_rat has joined #pypy
19:05
jcea has joined #pypy
19:59
CrazyPython has joined #pypy
20:50
jcea has quit [Quit: jcea]
20:50
<
kenaan >
mattip py3.6 86b879736f67 /pypy/module/cpyext/test/test_cpyext.py: add missing kwarg to runappdirect tests
21:31
CrazyPython has quit [Read error: Connection reset by peer]
21:36
kipras has joined #pypy
22:01
__pv has quit [Remote host closed the connection]
22:04
kipras has quit [Read error: Connection reset by peer]
22:12
dddddd has quit [Ping timeout: 258 seconds]
22:25
dddddd has joined #pypy
22:47
_whitelogger has joined #pypy
22:56
CrazyPython has joined #pypy
23:01
trinityhex has joined #pypy
23:14
CrazyPython has quit [Read error: Connection reset by peer]
23:19
jvesely has joined #pypy
23:29
CrazyPython has joined #pypy
23:48
trinityhex has quit [Ping timeout: 240 seconds]