08:38 mupuf: karolherbst: enjoy: https://pastebin.com/raw/drE8NVfL
08:38 mupuf: it is booted and ready for your fun
08:39 mupuf: I updated the machine too
08:39 mupuf: need to check why wtrpm is down
11:32 karolherbst: mupuf: heh... something is weird with all machines except mine... I am not able to read through the /dev/i2c-* devices... provided by the nvidia driver :/
11:36 karolherbst: at least nvaspyi2c works on the titan
11:41 RSpliet: karolherbst: if permission problems appear random, suspect selinux/apparmor/... :-P
11:41 karolherbst: RSpliet: https://gist.github.com/karolherbst/cec4741e11a3b11a8fd434972b6eeb42
11:43 karolherbst: on my gm204 that's different :/
11:43 karolherbst: even same driver version
11:43 karolherbst: using i2cget is so much less pain than nvaspyi2c, because I don't have to deal with false reads
11:43 karolherbst: false reads: value <-> reg matching is off for some values
11:45 RSpliet: Is that because nvaspyi2c doesn't properly enforce mutual exclusive access to the bus, on account of directly talking to the hardware rather than having the driver sit in the middle?
11:45 karolherbst: RSpliet: nvaspyi2c uses mmio
11:45 karolherbst: so it just spies on whatever values are inside mmio right now
11:45 karolherbst: essentially
11:45 RSpliet: Exactly
11:47 RSpliet: Mmm, anyway, I was being only semi-serious blaming selinux... it somehow always ends up deserving blame for permission errors
11:47 RSpliet: I take it NVIDIA doesn't use third party i2c controllers (of varying types) to wiggle the wire, but just use the same internal block across all gens of HW?
11:48 karolherbst: dunno
11:48 karolherbst: but I have the same issue on my laptop as well... maybe I did something in my own kernel config so that it works?
11:48 karolherbst: no idea
11:49 RSpliet: Possible... sadly, I'm not familiar enough with i2c in the kernel to say much meaningful about it
11:49 karolherbst: there aren't any relevant options :/
11:49 RSpliet: Happily play a rubber duck helpdesk for a bit though
11:50 RSpliet: Btw, the "gist" paste you just shared, is that for a gm204 as well?
11:52 mupuf: karolherbst: you are lucky that it works at all on your case, yeah
11:52 karolherbst: mhhh, odd
11:52 mupuf: the reason why /dev/i2c-* devices don't work is because pdaemon is in control of the i2c lines
11:52 mupuf: you can change that, you would need to be careful
11:52 karolherbst: okay, sure, but why does it work on my machine then
11:54 karolherbst: ohh I might have an idea
11:57 mupuf: karolherbst: heck if I know why pdaemon would not be responsible for this on your machine ;)
11:57 karolherbst: hah!
11:57 karolherbst: now it's yes
11:58 karolherbst: now verifying that what I did indeed changed it
11:58 karolherbst: i2cget -y 9 0x40 0xff w: 0x2032 :)
11:59 karolherbst: hehehehe
11:59 karolherbst: mupuf: "options nvidia-drm modeset=1" :D
11:59 karolherbst: that changes it
11:59 karolherbst: with that after loading nvidia-drm, the i2c devices are readable
11:59 mupuf: ok, cool!
11:59 karolherbst: yeah.. running with that option on my machine
11:59 karolherbst: because plymouth shows on external displays with it :)
12:00 karolherbst: and because of full disc encryption, I needed that
12:05 karolherbst: ohhh
12:05 karolherbst: mupuf: I don't think it's that...
12:06 karolherbst: when I have nvidia-smi running in the background in interval mode, then it's readable
12:06 karolherbst: otherwise not
12:06 mupuf: well, that's what's happening then. Nvidia-smi is polling directly
12:06 karolherbst: probably
12:08 karolherbst: but.. on my machine there was no nvidia-smi running... I'll guess it can hapen for whatever reason
12:09 karolherbst: like connected displays
12:09 karolherbst: or something
12:09 karolherbst: my display is connected via DP, so
12:09 karolherbst: heh! on the titan the sensor is underreporting
12:11 mupuf: that is good news!
12:14 karolherbst: mhh, but by not much
12:14 karolherbst: 1-2 W
12:14 HdkR: Pretty small considering how much power it pulls at load
12:15 karolherbst: yeah..., well glxgears
12:15 karolherbst: so it was only 100W
12:19 karolherbst: mupuf: on the 960 we are quite close. like a 0.4W difference
12:19 karolherbst: _but_, there is a difference
12:22 mupuf: karolherbst: please use i2cspy here
12:22 mupuf: this is the only way to guarantee you don't get the wrong values
12:23 karolherbst: right.. but some prints are just wrong from i2cspy :/
12:23 karolherbst: some lines
12:23 karolherbst: and I'd need to filter those out somehow
12:24 karolherbst: mupuf: btw, can I safely reboot the machine?
12:25 mupuf: yes, should be fine, but seems like someone did not read the memo and called grub-reboot on the blob distro... which prevents booting on nouveau
12:25 mupuf: I will re-install everything
12:25 mupuf: and have one distro for everything
12:25 mupuf: and scripts to switch from nouveau to the blob
12:26 mupuf: hail to libglvnd
12:26 karolherbst: yeah.. that makes it easier
12:26 karolherbst: on my machine I have some dracut config to switch, and gentoos eselect-opengl module... they still don't have glvnd, sadly
12:27 karolherbst: ohh, now they have
12:27 karolherbst: have to check it out
12:28 mupuf: lol, living in the past, I see ;)
12:28 karolherbst: well, there was a libglvnd ebuild for a year or more already
12:28 karolherbst: just no bits in mesa to make use of it
12:29 karolherbst: was added in 19.0-rc6, interesting
12:30 mupuf: hmm, arch was a bit more experimental here: they backported it to mesa 17.0 in feb 2017
12:30 mupuf: https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/mesa&id=3b097837c00850175d4fe4c2a3a63b5a70ed0b50
12:30 mupuf: seems like fedora did it first though
13:56 karolherbst: mupuf: uff, seems like I got reator to hang while rebooting :/
13:59 mupuf: it takes time, for some reason
14:15 karolherbst: mupuf: nope.. seems like I messed up for good :/
14:19 mupuf: you'll havew to wait until I come back home then
14:20 karolherbst: yeah, but I am out in the evening anyway, so maybe for tomorrow again then
14:21 mupuf: we'll see
14:21 mupuf: I'll try to fix wtrpm
14:21 karolherbst: okay, cool :)
14:35 HdkR: What is reator?
14:36 RSpliet: HdkR: A machine in mupuf's livingroom
14:36 HdkR: ah
14:42 mupuf: RSpliet: very accurate, indeed!
15:39 karolherbst: mupuf: so, currently I have two ideas: 1. one power budget lines is an offset we have to apply on top of the sensor readings 2. something in the rail entries makes something witht the value. Any other ideas where to look?
16:04 mupuf: no, I think you are on the right track
16:05 mupuf: it is possible that only some lanes are monitored and not the others
16:05 mupuf: but we should extrapolate the values
16:05 mupuf: so this should be explained on a per-rail granularity
16:05 karolherbst: mupuf: even with one lane it doesn't really fit I think
16:06 karolherbst: mhhh, actually, only checking channl0 gets me quite close...
16:07 karolherbst: -2.5W difference
16:07 mupuf: what do you mean with: only with one lane, it does not fit?
16:07 mupuf: lanes should be summed up for sure
16:07 karolherbst: well...
16:07 mupuf: they might need to be scaled
16:07 karolherbst: apperantly... not
16:08 karolherbst: keep in mind that this GPU only has one power supply
16:08 karolherbst: not two (or three)
16:08 mupuf: you get the 3.3 and the 12V rails
16:09 mupuf: what's the voltages read?
16:09 karolherbst: 1.55V both
16:09 mupuf: well, that is odd :D
16:09 karolherbst: both lanes have more or less the same bus voltage
16:09 karolherbst: in every read
16:10 mupuf: I see, so there are 2 VRs
16:10 mupuf: there is one that drops the voltage to 1.55V, then another lowering it again
16:18 karolherbst: mupuf: but I guess one channel could monitor only a part of the GPU and the other ones the entire GPU
16:20 karolherbst: yeah... only channel0 gives me much better values overall
16:20 karolherbst: running heaven right now
16:25 karolherbst: my values are around 2-4W lower though
16:25 karolherbst: but that's a constant offset now
16:26 mupuf: well, your theory is indeed sensible
16:26 mupuf:would expect tags on the rails for this purpose
16:26 karolherbst: yeah.. there are some unknown bits set on the rail
16:26 mupuf: given that they have such tags for the temperature sensors, we can expect the same
16:27 mupuf: good theory, dude!
16:28 karolherbst: well, it's a MXM card.. there is no point on having two channels afterall
16:29 karolherbst: which... might make things interesting for cards with three enabled channels
16:29 mupuf: memory might be tracked separately ;)
16:29 mupuf: ALL + memory
16:29 karolherbst: I would expect one for each power supply, but usually you have the same cable on both extra PINs
16:30 karolherbst: mupuf: that would mean with piano the memory consumption should be nearly 0 :p
16:31 karolherbst: heh
16:31 karolherbst: mupuf: I think it's ALL + SMs
16:31 karolherbst: with piano it's like 100% / 83%
16:32 karolherbst: but yeah.. I guess I can play around with that by messing with the voltage as well
16:33 karolherbst: will be fun
16:33 karolherbst: anyway, gotta go
16:40 mupuf: enjoy
16:40 mupuf: ALL + CORE
16:40 mupuf: ALL = CORE + MEM + OTHERS
16:40 mupuf: karolherbst: what voltage is the RAM supposed to be running at?
19:02 m00n: Are there any nouveau devs online? Had a question about how I can help out to try to get SLI working, about experience required etc
22:38 karolherbst: mupuf: unknown from out point of view
22:38 karolherbst: *our
22:38 karolherbst: m00n: do you have two GPUs with an SLI interconnect?
22:42 HdkR: Sounds like you would need to figure out how to cause SLI copies mainly :P
22:49 karolherbst: HdkR: the most problematic parts are the mesa changes actually :/
22:50 karolherbst: sure you could just split at 50% of the frame or something...
22:51 HdkR: Oh yea. That's a bit of a dorky problem
22:52 HdkR: ALso need to implement all the NVAPI crap to handle SLI games I guess :P
22:53 karolherbst: ;) that would be step two
22:55 HdkR: I wonder if there were even any SLI or Crossfire games released on Linux
23:26 gnarface: i thought the quake3 engine supported SLI but i could be wrong
23:26 gnarface: i know it supports SMP but it was disabled by default because it was a net loss of performance at the time
23:27 karolherbst: gnarface: well, doing multithreading in a performant way is difficult ;)
23:41 gnarface: ioquake3 is in the debian repos, it's just missing maps