02:01 pl44c: is is possible to underclock kepler cards
02:01 pl44c: there's a card I want but the factory OC is a joke and actually crashes the card
02:05 imirkin: with nouveau, you can only flip to pre-set levels
02:05 imirkin: a single perf level is a bunch of different settings taken together
02:05 imirkin: you can check the available ones in /sys/kernel/debug/dri/0/pstate
02:07 pl44c: imirkin: I'm looking at a listing where a person is selling a card at a discounted rate because under load with the stock factory OC it will blackscreen but if you clock it to reference speeds it will be fine
02:07 imirkin: i can't speak to any specific board
02:07 pl44c: looking online the specifc model had several reports of this
02:08 imirkin: however the vast majority of kepler boards
02:08 imirkin: include 2-4 different perf levels
02:08 imirkin: they will boot to the lowest usually, and then with nouveau you'd have to manually clock up
02:08 imirkin: you could choose not to.
02:09 pl44c: Was voltage regulation moved into firmware that only the nvidia driver has with kepler?
02:09 imirkin: no, we can (usually) control voltage just fine
02:10 imirkin: i can't remember if it's done by the firmware or by the RM directly, but i doubt that matters much to you
09:03 RSpliet: imirkin. pl44c: do we no longer have the "boost" kernel parameter that we can use to switch between "OC" and reference clocks at max perflvl?
09:03 RSpliet: (I'd ask karolherbst, but he's probably at 35c3)
15:58 pmoreau: RSpliet: Grepping for “NvBoost” still returns a hit in “drm/nouveau/nvkm/subdev/clk/base.c”, line 711.
18:57 Laalf: so to turn my nvidia gpu on in an optimus laptop i can use DRI_PRIME or xrandr --setprovideroutputsource to use the outputs on my machine. but how do i turn it off again? cat /sys/kernel/debug/vgaswitcheroo/switch says that its "DynOff"
18:58 imirkin: that means it's off.
18:58 imirkin: if you don't use it, it should runtime-suspend after 5 seconds (or minutes? i forget)
18:58 imirkin: (probably seconds)
18:59 Laalf: that is amazing! so to turn it back on i just use DRI_PRIME or xrandr --setprovideroutputsource again
18:59 Laalf: wait no, xrandr --setprovideroutputsource should be untouched, no?
19:00 pmoreau: Just run a program that uses that GPU, for example `DRI_PRIME=1 glxgears`.
19:00 imirkin: setprovideroutputsource is just once
19:00 imirkin: to link it up (with DRI2 -- if you're using DRI3, shouldn't even be necessary at all)
19:01 Laalf: xrandr says that the outputs are still available. i guess the card get turned on when i type xrandr?
19:02 Laalf: how do i find out what DRI version is used?
19:03 imirkin: mmmmaybe. if the outputs aren't used, the card can still go to sleep
19:03 imirkin: it gets woken up on hpd
19:03 imirkin: and right -- provideroutputsource is for output slaving, not for offloading
19:04 imirkin: so if DRI_PRIME=1 glxinfo says "nouveau", it works.
19:04 imirkin: and best not to worry too much about DRI2 or DRI3. but iirc LIBGL_DEBUG=verbose DRI_PRIME=1 glxinfo > /dev/null should indicate which version
19:04 Laalf: does it turn off when i didnt touch DRI_PRIME for a bit?
19:05 imirkin: you can cat vgaswitcheroo
19:05 imirkin: DynOff = powered off
19:05 imirkin: (dynamically)
19:05 Laalf: it says dynoff.
19:05 Laalf: can i actually confirm that its off? does powertop tell me?
19:05 imirkin: DynOff = off.
19:06 imirkin: you can get the voltmeter out if you don't believe it.
19:06 imirkin: you should see reduced power usage in powertop, if your laptop supports the measurement info
19:06 Laalf: ah wow nice. i didnt know there was dynpwr as well
19:07 imirkin: that means it's on :)
19:07 Laalf: i expect that when i type DRI_PRIME=1 glxgears
19:07 imirkin: while the gpu is on, you can also control the perf levels (depending on which gpu you have)
19:08 imirkin: (which gpu do you have?)
19:08 Laalf: thanks for clarifying. maybe i can replicate that on guixsd soon
19:08 Laalf: i have a lenovo thinkpad w530 with a quadro k2000m
19:08 Laalf: thats gk107
19:08 imirkin: cool - that should work ok
19:08 Laalf: i wouldnt have bought this laptop if i wasnt certain that nouveau works
19:08 imirkin: assuming you're on kernel 4.10+, while the gpu is powered on, you can poke at /sys/kernel/debug/dri/1/pstate
19:09 imirkin: didn't use to work, actually -- had lots of problems with the power management bits. all fixed now though.
19:09 Laalf: is it dri/1/pstate?
19:10 Laalf: there is also a 128 and 129
19:10 imirkin: 128 = 0, 129 = 1
19:10 imirkin: (long story)
19:10 imirkin: one of those is your intel gpu, the other is nvidia
19:10 imirkin: depending on load order
19:10 imirkin: pstate will be in either 0 or 1
19:10 Laalf: there is a vbios.rom in 129 and 128. that should be nouveau
19:11 imirkin: in both? are there 2 nvidia gpu's?
19:11 Laalf: s/128/1/
19:11 imirkin: ah yeah
19:11 imirkin: well, cat it
19:11 imirkin: should show you a list of perf levels
19:11 imirkin: WHILE THE GPU IS POWERED ON, you can cat the level back into the file to request a switch
19:11 Laalf: the vbios?
19:11 imirkin: pstate
19:12 imirkin: do you not see it?
19:12 Laalf: yes i do. lemme paste
19:13 Laalf: http://paste.debian.net/1057931/
19:13 imirkin: so if you echo 07 into that file, you switch to the lower level, 0f to the higher level
19:13 imirkin: but only do that while the gpu is powered on
19:14 imirkin: not when it's powered off, otherwise you get a panic
19:14 imirkin: [that might even be fixed now, but dunno what kernel you're on]
19:14 Laalf: 4.19.12
19:14 imirkin: yeah, but i don't remember when or if it was fixed :)
19:15 Laalf: thanks anyways. i can use my display outputs now which was my primary issue.
19:15 Laalf: without running nvidia which burns my battery in 2 hours insted of 4,5
19:15 imirkin: well, when the outputs are powered on, the nvidia gpu will be on
19:16 imirkin: no way around that
19:16 Laalf: when the outputs are used
19:16 Laalf: which is fine
19:16 imirkin: k
19:17 Laalf: should be 5 seconds since xorg shat itself 5 seconds after i closed glxgears for 15 seconds
19:17 Laalf: ayy, technology
19:17 imirkin: hm?
19:17 RSpliet: computers are horrible machines, don't get involved with them
19:17 Laalf: complete freeze of xorg 5 seconds after closing glxgears
19:18 imirkin: super.
19:18 imirkin: i think there have been some issues between the nouveau and intel drivers with buffer sharing
19:18 imirkin: it might end up waiting on some fence that never hits
19:19 Laalf: "some issues" basically sums up gnu/linux
19:19 imirkin: send patches :p
19:19 Laalf: nuh, am no dev:3
19:20 imirkin: learn :)
19:20 Laalf: i will try to make guixsd better if my notebook runs on there. i know a bit of guile
19:20 imirkin: what's guixsd? is that a distro?
19:20 Laalf: gnu.org/s/guix
19:21 Laalf: is a distro based on the nix package manager with guile as the language instead of the (horrible) nix language
19:21 imirkin: guile is scheme/lisp, right?
19:21 Laalf: no /usr, system is built from a config, user packages, reproducible builds....
19:22 Laalf: yes guile is scheme
19:22 Laalf: i kinda regret that last sentence now
19:23 Laalf: ill be afk for 15 minutes. if you read a bit about guixsd and have some questions, ill be back. thank you still for your answers.
19:23 imirkin: i haven't used lisp much this century
19:38 Laalf: imirkin: this here is a config (not from me) for a guix system: https://0x0.st/sYQf.scm this defines the whole system outside of your user
19:42 imirkin: cool
19:45 Laalf: that means that you dont write anything to /var or /etc. everything is in that config. its confusing and takes quite a curve but is totally worth it
19:45 Laalf: you dont write outside of /home and whereever your config is