08:34DodoGTA: I've first heard of Urban Terror in a nouveau video (maybe I should see how well nouveau runs it)
10:03nvuser: Not that I've tested them all, but It seems mesa_glthread=true degrades performance on ioquake3 games on nouveau, anything else I'm not sure about.
10:07nvuser: just to be clear from before, the defaults seem to give better perf from what I can tell
10:17nvuser: Also, I moved 'soft shadows issue' with kotor to it's own issue to provide more details on that.. https://gitlab.freedesktop.org/mesa/mesa/-/issues/8794 .. I don't know of any other graphical issues, so with luck it's the last issue I'll need to post there
10:34nvuser: DodoGTA: used to run very smoothly with NvBoost=1 for me, I think not so much now.. but these days I used Display Port output.. not sure if that changes anything, but I'm doing fine with NvBoost=2 for Urban Terror now
10:34nvuser: From originally DVI-D that is
10:34DodoGTA: nvuser: Is NvBoost a nouveau module parameter?
10:34nvuser: Yes
10:35DodoGTA: That's some interesting naming (usually the parameters are lowercase)
10:36nvuser: it enables boost clocks similar to nvidia, depending on card I think, and at your own risk etc etc
10:36nvuser: and you have to set your own clock mode after that to get it to use those modes
10:39nvuser: setting nouveau.config=NvBoost=1 on grub command line will enable that, or using NvBoost=2 (hotter, louder, but more perf), then you have to do mount -t debugfs debug /sys/kernel/debug followed by echo 0f > /sys/kernel/debug/dri/0/pstate
10:40nvuser: or substitute 07 to put it back to the default perf level
10:41nvuser: er, substitute 0f for 07 I meant
10:42nvuser: I have decent cooling so haven't had a problem with NvBoost=2 but, have been told before in this channel that it might damage the card putting it on that
10:43nvuser: something to do with power limits
10:46DodoGTA: nvuser: I don't think that does anything on Maxwell 2 (GM2xx) and above GPUs
10:47nvuser: DodoGTA: yeah I think maybe not, unless nvidia has given up some firmware since I last checked
11:27nvuser: karolherbst_: About the stock 0f clock mode for my card being different from those shown by Nvidia, should I open an issue about this?
11:30nvuser: difference is around 6MHz only, nouveau shows 1000 MHz, nvidia has 1006 as per manufacturer spec
11:36karolherbst: nvuser: not really, I know why it happens and it's not really something to look into. Thing is Nvidia is just less precise than us for whatever reason and I don't think it ever caused any issues
11:36karolherbst: the vbios probably says 1000MHz
11:36karolherbst: the thing is, we want to match Nvidia 100% here, we also have to figure out when it's safe to go above the values from the vbios
11:37nvuser: checking with proprietary kepler bios tweaker, shows base clock is 1006 in vbios
11:39karolherbst: interesting
11:39karolherbst: I mean.. it could be that the encoding is off, but I'd still say the vbios actually encodes 1000
11:39karolherbst: probably
11:40nvuser: Maybe envytools have something I can use to confirm?
11:40karolherbst: yeah
11:40karolherbst: `nvbios`
11:40nvuser: alright I'll take a look
11:40karolherbst: just run it on the vbios you see in /sys/kernel/debug/dri/0/vbios.rom (or 1 instead of 0)
11:41karolherbst: there is a table listing all the clocks somewhere
11:41karolherbst: and some limits
11:44nvuser: I also noticed nouveau prints different bios version than nvidia.. in the last 'octet' is 08 instead of 80
11:44nvuser: in dmesg I mean
11:45karolherbst: heh.. maybe we parse that one incorrectly
11:45karolherbst: or there is an updated vbios to be found somewhere for whatever reason
11:55nvuser: ah I see. I'm happy using nvboost=1, but I'll send the vbios if you want or something
11:58nvuser: envytools didn't really show the same info, has a table in hex and binary in place of that
12:05karolherbst: could pastebin the parsed vbios
12:11nvuser: ah just the output from nvbios tool?
12:11karolherbst: yeah
12:12nvuser: ah, alright. Here you go: https://dpaste.com/3T3K24UFN
12:14RSpliet: yep, rated and boost are both at 1006MHz (listed as 2012, there's weird division going on)
12:15karolherbst: it indeed looks like 1006
12:15karolherbst: yeah.. they double the clock for whatever reason
12:15karolherbst: could try nvboost=2 to get even higher clocks, but I'm wondering why nouveau selects 1000
12:16RSpliet: Probably just PLL calculation inaccuracies
12:16karolherbst: yeah.. but why
12:17RSpliet: don't know, I think Ben wrote the PLL calc algorithms
12:17RSpliet: but
12:18karolherbst: oh uhm.. maybe I just made it 100% for the memory clock..
12:18RSpliet: 6MHz is not that much to be off in the grand scheme of things, and I definitely think he erred on the side of caution
12:18karolherbst: where do we use the post frac parameter? was that only memory or also core clocks?
12:18RSpliet: This is _way_ too long ago for me to still remember :D
12:18RSpliet: Could take a look at which PLL params the blob actually selects
12:18karolherbst: :D same
12:19RSpliet: not sure you'll learn anything from that, might do
12:19RSpliet: or you might discover that the blob also just selects 1000MHz and quietly calls it quits
12:19RSpliet: Be a little surprising
12:20RSpliet: I very much suspect that the whole CSTEP table is autogenerated
12:20karolherbst: autogenerated?
12:20karolherbst: but yeah.. probsably
12:21nvuser: ah and grep -a Version /sys/kernel/debug/dri/0/vbios.rom gives: Version 80.80.34.00.80 (nvbios tool gives 08)
12:21RSpliet: Yeah, as in in a lab. Not in the GPU :-P
12:22karolherbst: a bit sad we never had time to actually complete all of this
12:22karolherbst: mostly the slowdown parts on overheating
12:22karolherbst: or proper fan management
12:22RSpliet: Oh agreed
12:22karolherbst: we don't use the FAN_MGMT table at all
12:22karolherbst: but also because we never verified my parsing is correct
12:23karolherbst: sooo
12:23nvuser: only issue I saw with fans was trying to lower the min clock below 20%, e.g 15% wasn't much different but maybe fan has a minimum rpm
12:23karolherbst: yeah..
12:23karolherbst: I mean the FAN_MGMT kinda says it
12:23RSpliet: nvuser: the VBIOS version string printing is probably just a red herring, don't bother worrying about it
12:23DodoGTA: Unfinished ~~London~~ Nouveau
12:24karolherbst: FAN table be like: duty_range: [20:100]%
12:24nvuser: Fair enough, just in case it's useful though.
12:25karolherbst: anyway.. those 6MHz won't give you that much more perf and as long things are stable there isn't really much to do
12:25karolherbst: nvboos=2 probably has a bigger impact
12:25karolherbst: but not sure you'd reach higher clocks
12:26nvuser: I get around 1137 or some number like that, can't remember exactly.. which is more than manufacturer spec anyway
12:26nvuser: for nvboost=2
12:26karolherbst: it's what nvidia probbably uses under load as well
12:26karolherbst: might want to check with nvidia-settings and doing some 100% gpu load whatever gaming
12:27karolherbst: OEMs tend to only report the nvboo=1 value if any at all
12:27karolherbst: and nvidia happily goes over it
12:27DodoGTA: I wonder if nouveau supports overclocking (on pre-Maxwell 2 cards at least)
12:27karolherbst: nvboos=1 is more or less the "expected minimum clock"
12:27karolherbst: well
12:27karolherbst: overclocking is just applying a config beyond the specs
12:27RSpliet: expected minimum maximum clock :D
12:28karolherbst: yeah.. kinda
12:28karolherbst: :D
12:28karolherbst: I think furmark would still push down the clocks below that
12:28karolherbst: :D
12:28karolherbst: but furmark is also insane
12:29RSpliet: *mark is insane (sorry Mark)
12:29nvuser: well there's no specification from manufacturer for that, I guess I could look at what nvidia driver does when loaded, maybe phoronix test suite or something to record gpu core, if you wanted that info
12:29nvuser: manufacturer says boost 1072, gives nothing for nvboost=2
12:30RSpliet: in my experience benchmarks are a game of benchmark developers doing ever-so-insane things to make sure cards get sweating, and GPU driver/compiler devs doing equally-insane-things to undo the benchmark's insanity and come out on top
12:30nvuser: yeah, but any time I would exit a game when loading gpu, I wouldn't see the boost values from the driver, that's what I mean
12:30karolherbst: only 1072? heh..
12:30karolherbst: anyway, the boosted value depends on too many things
12:31karolherbst: even the quality of the production batch matters
12:31karolherbst: and they factor it in
12:31RSpliet: karolherbst: that's what entry 0 in the BASE CLOCK table defines, which is the turbo boost entry
12:31karolherbst: even the current GPU temperature matters
12:31RSpliet: 2143 / 2
12:31DodoGTA: karolherbst: At least your GPU is 101% stable if you run FurMark with no issues :P
12:31karolherbst: your's is not?
12:31nvuser: well, if the boost values are any different, I could report it back if you want
12:32nvuser: from my point of view would only satisfy curiosity, unless it helps nouveau somehow
12:32karolherbst: RSpliet: yes, but the driver ignores that one
12:32RSpliet: sounds like the blob maybe doesn't? Idk, you've looked into this way more than me :-)
12:33karolherbst: I'm sure the blob ignores it as well
12:33RSpliet: fair enough!
12:34nvuser: manufacturer says "you get gpu boost 2.0".. I guess they mean it should boost to nvboost=1 standard then to nvboost=2
12:34karolherbst: it's more complicated than that
12:35RSpliet: nvuser: manufacturer says marketing words. I suggest you ignore them :-D
12:35nvuser: well from user perspective of what they're trying to say you get heh
12:35nvuser: I guess in reality only boosts that high or more if cooling is capable
12:37nvuser: anyway I'll see how high the blob pushes the boost clocks later, see how it compares with nvboost=2
12:38RSpliet: if you could get it running at 1006MHz and fetch the PLL values for your core, perhaps that gives a hint as to why/whether nouveau actually selects different clocks
12:39nvuser: hm, how do I get that info?
12:39RSpliet: karolherbst: is this something you can quickly dig up? I'm in the middle of building snert... which is almost erbseneintopf :')
12:39karolherbst: ehh.. no
12:39RSpliet: nvuser: nvapeek <register number>. Which register number is hidden somewhere in the XML register definitions
12:39nvuser: from envytools?
12:39RSpliet: yep
12:40RSpliet: anyway, not a big chance of seeing fixes even if you figure out exactly what's going on, although I guess patches welcome
12:40RSpliet: just overstretched developers ;-)
12:40RSpliet: (just setting expectations early)
12:40karolherbst: ahh yeah..
12:40nvuser: ah, alright.. I guess in that case I should open issue in case someone wants to patch it?
12:40karolherbst: we don't use the post frac divider
12:40karolherbst: okay let me rephrase: when setting the memory clocks, we are 100% accuracte
12:41nvuser: so that person patching can see the info they need
12:41nvuser: chances I patch it myself 0%
12:41karolherbst: doesn't even matter much
12:42karolherbst: RSpliet: I suspect that nvidia just uses the post frac thing, because we don't
12:43nvuser: hm well, I'll see what nvidia driver says anyway
12:51nvuser: ah I guess nvapeak is useless unless I know what register number to give anyway heh
12:57nvuser: just gives can't probe "PCI init failure"
13:36nvuser: ah iomem=relaxed works, where would I find these register defintions?
13:43nvuser: ah I guess that info is not in envytools
13:49RSpliet: nvuser: it is
13:49RSpliet: Somewhere in here https://github.com/envytools/envytools/tree/master/rnndb
13:50RSpliet: Which... is not super helpful I guess. Can't remember where exactly they live, but grep for PLL and you'll be able to find some
13:51RSpliet: Or look at nouveau's PLL code and see which registers it writes. PLLs have a coefficients and a control register
13:51RSpliet: sometimes two coeff registers
14:05nvuser: okay, i'll grep around to see what I can find
14:14nvuser: hm so far nvidia driver boosts up to 1150 for this card, I'll see if I can find something that will push the clocks more
14:20nvuser: I guess unigine superposition would do it
15:03nvuser: would PLL be the same across cards, or are they gpu specific?
15:22RSpliet: nvuser: I think they're in the same place for all Kepler cards
15:22RSpliet: Fermi too maybe, not sure. They shifted a lot around with Fermi
16:03nvuser: ah, so PLL for kepler is same as fermi?
16:04raket: DodoGTA: yes. same error with dxvk 1.10.3. I went all the way back to dxvk 0.54. It complains about shaderStorageImageReadWithoutFormat .. disabling all the checks for it and there are other errors :)
16:21RSpliet: nvuser: don't take my word on it. It's all in the XML files somewhere, precisely because my brains don't retain such information for 10 years
16:24nvuser: well there is gf100 in pm subdir
16:24RSpliet: yeah that's the filename, the register and/or register range documents for which generation of cards a specific register is present
16:31nvuser: hmm how would I tell the right one? this is from gf100_pclock.xml: https://dpaste.com/2YUAL6U9T
18:00nvuser: should I just use nvapeek from all of them?
18:47fdobridge: <illwieckz> test
18:47illwieckz: the bridge reworks
18:49nvuser: it doesn't seem to matter what one.. https://dpaste.com/HLCHX7EC7
18:50nvuser: oh heh..
18:50nvuser: nvidia driver just doing something weird maybe that's why
18:51fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> Hello everyone from IRC land (and thanks to illwieckz for fixing this)
18:54nvuser: downclocking itself regardless of being set on max perf mode
18:57nvuser: the values given now with it set back to max perf: https://dpaste.com/5CE5CA9DM
19:19nvuser: hm so for boost clock it maxed out 1150 in nvidia, nouveau has 1137
19:20nvuser: that's with reasonable case cooling, and it's own kind of 'acx' cooler
21:56fdobridge: <gfxstrand> If I want to Linuxify a switch, what are the requirements for doing so?
21:56fdobridge: <gfxstrand> Debating upgrading to an OLED for actual gaming and modding my 1st gen.
21:56fdobridge: <ByLaws> Is it hackable?
21:57fdobridge: <gfxstrand> 🤷🏻♀️
21:57fdobridge: <ByLaws> https://damota.me/ssnc/checker/
21:57fdobridge: <ByLaws> Put your serial in here
21:57fdobridge: <ByLaws> It'll let you know
21:57fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> ~~Will you run NVK on it?~~
21:57fdobridge: <ByLaws> I guess you'll want mainline Linux as opposed to l4t?
21:58fdobridge: <ByLaws> Mainline is somewhat finicky, I think mesa or the kernel regressed at some point
22:00fdobridge: <gfxstrand> Yeah, it's hackable
22:00fdobridge: <gfxstrand> 🤷🏻♀️
22:00fdobridge: <gfxstrand> Worth hanging on to just in case.
22:01fdobridge: <ByLaws> Neat
22:01fdobridge: <ByLaws> But yeah what you need to do depends on if you want Mainline or not
22:02fdobridge: <ByLaws> I suppose either way you'll wanna order a jig off ebay
22:03fdobridge: <gfxstrand> jig?
22:04fdobridge: <ByLaws> The main switch exploit requires the switch to be in RCM mode
22:04fdobridge: <ByLaws> Which needs two pins in the joycon port to be bridged
22:04fdobridge: <marysaka> I just use a bit of copper from some jack cable I broke on purpose and that does the job tbh
22:05fdobridge: <marysaka> and then just autorcm
22:05fdobridge: <ByLaws> Yeah, or you can do that
22:05fdobridge: <azkali> In case you do, I have a rootfs setup with nvk, configs, drivers etc..
22:05fdobridge: <azkali> https://gitlab.azka.li/l4t-community/gnu-linux/jet-factory/-/jobs/6722/artifacts/raw/switch-nouveau-2023-03-28.7z
22:05fdobridge: <ByLaws> But if you wanna use the switch normally audiorcm is kinda annoying
22:06fdobridge: <gfxstrand> I don't think I"m going be hacking it this week but I just pre-ordered an OLED Tears of the Kingdom edition which will take over as my main gaming Switch when it shows up in May.
22:06fdobridge: <ByLaws> Ah heh
22:06fdobridge: <ByLaws> Fwiw
22:06fdobridge: <ByLaws> With Linux you don't even need to touch the switches main os
22:06fdobridge: <ByLaws> Since it's all just done on an sdcard partition
22:06fdobridge: <gfxstrand> 🙂
22:09fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> So does NVK already run on the Switch?
22:27fdobridge: <azkali> Currently vulkaninfo reports llvmpipe so there is something I must miss (either I didn't read the code or something else idk aboiut)
22:27fdobridge: <azkali> Currently vulkaninfo reports llvmpipe so there is something I must miss (either I didn't read the code or something else idk aboit) (edited)
22:27fdobridge: <azkali> Currently vulkaninfo reports llvmpipe so there is something I must miss (either I didn't read the code or something else idk about) (edited)
22:27fdobridge: <azkali> But yeah nvk-mesa and vulkan nouveau are technically inside