04:35 imirkin: cyndis: what would you say the odds are of https://lists.freedesktop.org/archives/nouveau/2018-March/029943.html which was also sent to gpu-open-documentation@nvidia.com, of getting an answer? (i'm not asking you to actually answer it... i'm sure there's various approvals and whatnot)
05:56 eyeris: On debian testing, 4.14 kernel, and a GTX 465 card when I run 'echo 0f > pstate' it tells me 'Function not implemented'. What am I missing?
05:58 eyeris: In my modprobe.d conf I have 'options nouveau runpm=1' and 'options nouveau config=NvMemExec=1'
05:58 cyndis: imirkin: i'm very unfamiliar with that side of things but it doesn't seem to me like anything that wouldn't get answered as long as the right people drive it. but getting that to happen can in some cases take time.
05:59 gnarface: eyeris: i'm not sure those options are known to work for every card
06:00 gnarface: i would assume that when it says "function not implemented" it literally means that the driver can't *do* that for this hardware
06:00 gnarface: (and it's most likely a driver limitation, rather than hardware, but i don't know for sure)
06:01 eyeris: gnarface: seems possible/likely you're right.
06:02 eyeris: https://nouveau.freedesktop.org/wiki/PowerManagement/ says the memory re-clocking is WIP.
06:02 gnarface: yea :( for most cards still, unfortunately
06:17 imirkin: cyndis: ok, thanks
06:17 imirkin: gnarface: no reclock on fermi upstream yet
06:21 gnarface: hmmm, noted
10:05 coderobe: is there a way to cleanly unload nouveau? (muxless optimus device)
10:05 coderobe: unbinding the driver, even when unused, freezes xorg and blocks poweroff
17:49 imirkin: coderobe: yeah, you have to run X with AutoAddGPU off
17:50 imirkin: otherwise X gets very unhappy when a gpu disappears
18:00 karolherbst: imirkin: how can a GPU disappear anyway?
18:00 karolherbst: X claims a reference, no?
18:01 karolherbst: only way to get around that is using the dummy driver afaik
18:01 karolherbst: ohh unbinding the driver
18:01 karolherbst: isn't that a bad idea as long as something has a reference to the driver?
18:02 karolherbst: coderobe: use the dummy video driver for the nvidia GPU
18:02 karolherbst: and enable DRI3 (if you have to enable it)
18:02 karolherbst: then you can use DRI_PRIME
18:02 karolherbst: but still unload nouveau
18:02 karolherbst: no idea how dri3 is handled with the modesetting driver
18:03 karolherbst: coderobe: https://gist.githubusercontent.com/karolherbst/4341e3c33b85640eaaa56ff69a094713/raw/c976daa9e406d37e01351357ea9d8c20d5097d66/xorg.conf.d.nouveau.conf
18:03 karolherbst: or use modesetting instead of the intel ddx
18:03 karolherbst: I think the intel one is unsupported now
18:28 aphirst: hmm? the intel driver unsuported?
18:59 coderobe: oh i meant on-demand unbinding
19:00 coderobe: i'm on modesetting btw
19:02 coderobe: i can unload nvidias proprietary driver using the '/sys/bus/pci/devices/<device>/driver/unbind' interface, and subsequently (using driver_override) load nouveau - but the reverse isn's possible
19:02 coderobe: karolherbst: ^
19:05 coderobe: assuming this is because X11 doesn't reference 'nvidia'? (not registered as provider under X, nouveau does)
19:06 coderobe: in which case i'd have to tell X in advance if that's possible i suppose
19:07 imirkin: that's the AutoAddGPUs thing
19:08 coderobe: imirkin: oh huh, would that still allow me to use DRI_PRIME?
19:08 imirkin: via dri3
19:11 karolherbst: coderobe: maybe nvidia is just smarter handling this, who knows
19:12 karolherbst: I could imagine they care more about GPU hotplugging
19:12 imirkin: nothing to do with that
19:13 imirkin: X server has a handle on the device
19:13 imirkin: the device goes away, X gets upset
19:14 karolherbst: imirkin: well right, but the handle is just a fd to whatever the driver provides, no?
19:14 coderobe: here's a script i wrote for trying this btw https://shr.codero.be/AngryBrownPeafowl1.sh
19:14 karolherbst: it isn't an actual handle to the actual hw
19:14 karolherbst: or is it?
19:15 karolherbst: pmoreau: something is weird
19:15 karolherbst: pmoreau: I have a struct with 3 ints and one long in that order
19:15 imirkin: karolherbst: and then the driver gets unbound. X gets unhappy.
19:15 imirkin: coderobe: AutoAddGPU off. add that. it'll all be fine.
19:16 karolherbst: are the offsets struct_base + 0x0/0x4/0x8 for the ints and + 0x10 for the long?
19:16 karolherbst: ....
19:16 karolherbst: wrong channel
19:16 pmoreau: karolherbst: Yes
19:16 pmoreau: Unless the struct is packed
19:19 coderobe: imirkin: i'll try
19:22 karolherbst: imirkin: might be that AutoAddGPU off works as expected now... I am sure it didn't when I first tried that
19:32 imirkin: karolherbst: yeah, so there's an additional issue
19:32 imirkin: iirc it was fixed in like xorg 1.18 or something
19:33 coderobe: imirkin: yeah that seems to work!
19:33 karolherbst: imirkin: ahh
19:33 karolherbst: imirkin: makes sense then
19:33 imirkin: (as a result of your complaints as i recall)
19:34 karolherbst: :D
19:34 karolherbst: most likely
19:34 karolherbst: I know that somebody wrote some patches because I complained :)
20:45 karolherbst: imirkin: uhh, we can't do that, right? vt f32 $r5 u16 c0[0x2]
20:46 imirkin: maybe, maybe not
20:46 karolherbst: doesn't the emmiter shift by 2?
20:46 karolherbst: *emiter
20:46 imirkin: shouldn't
20:46 imirkin: but perhaps it's broken
20:46 imirkin: it should shift by the width of the arg
20:46 karolherbst: let me check
20:47 imirkin: (minus 1)
20:47 karolherbst: ahh
20:47 imirkin: i.e. typeSizeof(i->sType) / 8 - 1
20:47 karolherbst: so 0 for u8, 1 for u16 and so worth
20:47 karolherbst: yeah, the 2 is hard coded
20:47 karolherbst: but... that means it is also broken for 64 bit
20:47 imirkin: yeah, that might not work so great :)
20:47 karolherbst: allthough I am sure that never happens
20:48 imirkin: otoh, i dunno - i haven't looked at how the ISA works in that level of detail
20:48 imirkin: need to play around with nvdisasm and see what it says
20:48 karolherbst: uhm
20:48 karolherbst: you mean "typeSizeof(insn->sType) - 1" right?
20:49 karolherbst: because typeSizeof returns bytes, not bits
20:49 imirkin: or just disallow it in insnCanLoad
20:49 imirkin: right yeah
20:49 karolherbst: I will check if the test passes or not
20:50 karolherbst: uhm
20:50 karolherbst: and lg2(typeSizeof(i->sType)) no?
20:51 imirkin: right, something like that
20:51 imirkin: but like i said
20:51 imirkin: play with the ISA first with nvdisasm
20:51 imirkin: before drawing such conclusions.
20:51 karolherbst: right
20:52 imirkin: fyi, there's a typeSizeofLog2
20:53 imirkin: otoh, gk110 emitter's setCAddress14 just does offset / 4 unconditionally
20:53 karolherbst: I think codegen just can't handle 16/8 bit loads generally anyway
20:53 karolherbst: after I disabled it, it crashes
20:54 imirkin: yeah, it's pretty untested
20:54 imirkin: it should generally work
20:54 karolherbst: uhm in MemoryOpt
20:54 imirkin: but it just never comes up in glsl
20:54 karolherbst: not yet
20:55 karolherbst: I guess float16 might trigger some bugs here
20:55 pmoreau: 8-bit load/store works IIRC, not sure about 16-bit ones, I don’t think I have tried those
20:55 karolherbst: pmoreau: right, but I think the issues are usually in the opts and whatnot
20:56 karolherbst: like it tries to combine a 8 bit and 16 bit load and fails doing that
20:56 pmoreau: That would be silly :-/
21:01 pmoreau: karolherbst: Might want something like https://phabricator.pmoreau.org/rMESAdf5c2e3829f365874094d18c57fff30d61b48ac5 though that is probably not the issue you are seeing
21:01 karolherbst: pmoreau: yeah
21:01 karolherbst: maybe, maybe not
21:59 rhyskidd: imirkin: quick check, do you have a "which cython3" on your system?
22:00 rhyskidd: or just "cython"
22:00 rhyskidd: i recall you had some views before on a change such as this: https://github.com/envytools/envytools/pull/118/files
22:07 imirkin: rhyskidd: no cython3
22:07 imirkin: (on my system)
22:08 imirkin: i have cython 0.25.2, and it appears to take -2 and -3 arguments
22:08 imirkin: (wtf is cython?)
22:21 karolherbst: imirkin: but no cython3 command?
22:21 imirkin: no
22:22 karolherbst: imirkin: cython is a python suberset where you can compile that code into binary code
22:22 karolherbst: I guess the python even gets translated into C before that
22:23 imirkin: http://paste.debian.net/plainh/81bcad1b
22:23 karolherbst: imirkin: *sigh*, yeah I guess this is gentoo detecting that at runtime or something
22:24 imirkin: dunno
22:24 imirkin: i know i don't got it ;)
22:24 karolherbst: I only have a cython3 binary :)
22:24 karolherbst: not even cython
22:24 imirkin: super! :)
22:24 karolherbst: I think usually without a suffix it is python2 based otherwise 2 or 3
22:24 karolherbst: but yeah
22:24 karolherbst: this makes a few things a bit more complicated
22:24 imirkin: /usr/bin/cython -> ../lib/python-exec/python-exec2
22:25 karolherbst: yeah, right
22:25 karolherbst: that is the gentoo magic
22:26 karolherbst: every python application maps to python-exec
22:26 karolherbst: and then you can choose based on an env var or the python script to load pyhton 2 or 3 runtime
22:26 karolherbst: like if the script envs python3 then python3 runtime gets loaded
22:27 karolherbst: imirkin: and there is no python-exec3 afaik
22:27 karolherbst: it is unrelated to the python major version
22:27 imirkin: k
22:27 imirkin: just like v2 of the python-exec script?
22:27 karolherbst: there should be a python-exec package with USE flags for each supported python version
22:27 karolherbst: yeah
22:28 imirkin: i only have python-exec:2
22:28 imirkin: no python-exec:3
22:28 karolherbst: 2.4.5 :)
22:28 karolherbst: even the version number is so out of range
22:28 imirkin: right
22:29 karolherbst: PYTHON_COMPAT=( "${_PYTHON_ALL_IMPLS[@]}" ) :)
22:29 karolherbst: ahh right
22:29 karolherbst: it can even map between pypy and cpython
22:30 karolherbst: and so on
22:30 karolherbst: anyway, usually it works out well, but not if you actually want to know if cython is installed for python 2 or 3
22:33 karolherbst: you probably could ask pip
22:33 karolherbst: but
22:33 karolherbst: imirkin: I am sure you have not pip installed and if so, then there is no pip3?
22:34 karolherbst: "pip3 show cython" prints something only if I have cython for python3 installed
22:39 imirkin: i got like 30 pips
22:39 imirkin: pip pip2 pip2.7 pip3 pip3.4 pip3.6
22:39 imirkin: pip3 show cython does work fine
22:40 imirkin: points at the py3.6 site-packages
22:43 karolherbst: ahhh
22:43 karolherbst: at least something
22:43 karolherbst: and pip2 show cython points to the 2.7 site-package?
23:07 imirkin: yes
23:07 imirkin: as does pip show cython