05:02gfxstrand[d]: Thanks! I'll take a look tomorrow
08:49bigsmarty[d]: esdrastarsis[d]: Thanks
09:15magic_rb[d]: Completely random thought. Couldnt whatever allows nvidia gpus to be used seamlessly in a host and guest at the same time, also be used to run both nvidia and nouveau on the same kernel at the same time theoretically
10:28airlied[d]: What allows host and guest and same time?
10:30tiredchiku[d]: vGPU stuff
10:34phasta: magic_rb[d], you'd have to remove some collision checks from the drivers, such as memory region requests
10:36mohamexiety[d]: It’s also not really seamless. The host driver is very very basic; you can’t even display out from it
10:36magic_rb[d]: Ah ive never actually tried it, never had a gpu that would allow me.
10:38mohamexiety[d]: Yeah it’s sadly a heavily segmented feature. Need a Quadro from the 5000 tier and up
10:39magic_rb[d]: Dont really need it these days, was relevant when i was still dualbooting but now i run linux exclusively
10:39magic_rb[d]: Back then i had a 1060
10:40phasta: I guess compute should work with such a crazy setup, but wouldn't absolutely everything explode if both users were to try modifying the display controller simultaneously?
10:40notthatclippy[d]: There's two modes of vGPU in the proprietary driver (Well, many more, but two relevant). In the traditional one, a guest is barely different from any other userspace program on the host.
10:41notthatclippy[d]: In the more recent one (Ada+), the guest talks to GSP directly and host-guest communication is minimal, after the guest has been provisioned properly.
10:41magic_rb[d]: Im pretty sure you could also split it down the middle. Seem to recall people being able to run displays on both host and guest. Dont know how but i think ive seen it
10:42magic_rb[d]: Guess in ada+ the guest and host have to roughly using the same driver version since there is still only one GSP
10:42notthatclippy[d]: Neither of those things really allow for nouveau.ko and nvidia.ko to be loaded at the same time, but generally you could run one in host and one in guest if you wanted.
10:43notthatclippy[d]: magic_rb[d]: vgpu has compatibility windows that go both ways, so that would be _very_ roughly.
10:44magic_rb[d]: Right, my question was more whether there is anything in the vGPU system itself, which would prevent both nvidia.ko and nouveau.ko from interacting with it from the same kernel? Ignoring the obvious restrictions of not being able to load both at the same time
10:45notthatclippy[d]: I don't understand that question. I can't think of anything vGPU-specific that would _prevent_ that. But there's plenty of other things _preventing_ that, and infinitely many things _not preventing_ it. vgpu probably falls in the second bucket, if you don't want to use vgpu.
10:46magic_rb[d]: I dont really understand how virtualization works, but um, let me clarify. So the host spins up a vGPU and then it would proceed to talk to it as if it was from a VM, but not actually from a VM. As in can a non VM talk to the vGPU
10:47notthatclippy[d]: Assuming the Ada+ paradigm: From GSP's point of view, host and VM(s) are both clients. Host has extra permissions, obviously.
10:48notthatclippy[d]: But GSP is the one that assigns resources to one or the other. Host will have initially created the VM and set some resource limits on it, etc
10:48magic_rb[d]: so the answer to my super theoretical question is a super theoretical yes
10:49notthatclippy[d]: Generally, host and VM don't ever talk to each other. There are probably exceptions for one off APIs, but I can't think of any off the top of my head.
10:51notthatclippy[d]: What you could do is make a "VM" (really, just get yourself assigned a VF) and ask the GSP to provision the whole VM-specific thing for it, and then you can talk to GSP as if you're a VM, bypassing the host driver.
10:51magic_rb[d]: Would be a cool experiment modifying both nouveau and nvidia to allow loading side by side, one running on a vgpu. Or perhaps both with a dedicated vgpu spin up driver
10:52magic_rb[d]: notthatclippy[d]: So implement a driver fully in userspace essentially
10:52notthatclippy[d]: notthatclippy[d]: This is obviously limiting the "VM" part to only be able to submit work and such and not actually control display/etc.
10:52notthatclippy[d]: magic_rb[d]: Well, it doesn't _have_ to be, but it'd be easier, yes.
10:52airlied[d]: you'd be better just porting userspace to nvidia 😛
10:52airlied[d]: since that's essentially all you are doing
10:53airlied[d]: nouveau would just be talking to the gsp as a guest
10:53notthatclippy[d]: Well, you _could_ use nouveau as a host and nvidia.ko as guest. That would probably be easier even.
10:54notthatclippy[d]: We do compile nvidia.ko for userspace internally for some test stuff
10:55notthatclippy[d]: But, I really don't see what you'd gain from all of this. I guess the idea is to run mesa and NV userspace side by side and compare?
10:58magic_rb[d]: It was an idea i got and wanted to verify if my understanding of these topics is valid
10:58magic_rb[d]: So in effect youd gain almost nothing yeah
11:00magic_rb[d]: Well in the very specific case of my laptop nouveau is better at not crashing upon xorg display reconfig and nvidia is better at noy crashing when trying to run any vulkan application
11:00magic_rb[d]: So yk, best of both, drive the displays with nouveau, offload games to nvidia lmao
11:03notthatclippy[d]: Yeah, none of that will work.
11:03magic_rb[d]: Oh and the bit about testing in userspace is cool, after hanging out here and in the zfs irc channel i do feel the pain of not having a stable kernel API
11:03notthatclippy[d]: Best thing you can do? Fix nouveau to not crash :)
11:04magic_rb[d]: if only university actually taught me useful things, like writing gpu drivers :)
11:04notthatclippy[d]: It's definitely an easier task than what you proposed above.
11:04magic_rb[d]: Ofc, but the task above was a fun and insightful thought experimeny
11:05tiredchiku[d]: magic_rb[d]: fwiw my degree is in physics
11:05tiredchiku[d]: nowhere near this field
11:05magic_rb[d]: tiredchiku[d]: Ik, remember you saying so
11:05tiredchiku[d]: it's just a matter of
11:05magic_rb[d]: Tbf uni did help me, (im a cs major) but its no where near as deep as i had hoped, its way too easy
11:06tiredchiku[d]: https://tenor.com/view/patrick-star-dumb-duh-gif-13669009
11:06tiredchiku[d]: until you build an understanding and get things working
11:06airlied[d]: I've run nouveau in host and NVIDIA in guest
11:06airlied[d]: Ive even run nova in host and NVIDIA in guest :-p
11:07magic_rb[d]: Oh also, someone mentioned VF in regards to making a vgpu, whats VF?
11:07karolherbst[d]: I've even ran nouveau in host and nvidia in host on two different gpus
11:07karolherbst[d]: though that might not count
11:07magic_rb[d]: If only my laptop had 3 GPUs
11:08notthatclippy[d]: karolherbst[d]: Heh. I've run nvidia.ko and nvidia2.ko on different GPUs. I think this was even "productized" at some point to avoid some global synchronization issues.
11:08karolherbst[d]: pain
11:08magic_rb[d]: New framework 16 module idea, rx 7700s and rtx 4060 on one module via bifurcation (:
11:08tiredchiku[d]: nvidia2.ko :notLikeCat:
11:09notthatclippy[d]: You take your nvidia.ko and run it through objcopy to rename all publicly exported symbols :D
11:09magic_rb[d]: Lmao
11:09tiredchiku[d]: heh
11:10notthatclippy[d]: Remember kids, say no to global locks.
11:10tiredchiku[d]: :birdnotes:
11:10notthatclippy[d]: (it's much better now. It's still not great. I have high hopes for Nova)
11:10magic_rb[d]: Would make a nice youtube vid, "how many nvidia drivers can we run in one kernel"
11:11tiredchiku[d]: is nova's development still behind closed doors or is there a branch we can try out somewhere
11:12airlied[d]: What you going to try?
11:12tiredchiku[d]: nothing specifically, just to see progress, what it can/can't do yet
11:12airlied[d]: It can't do anything yet
11:14airlied[d]: And it's not behind any closed doors, all my work is nearly always in public, but just not advertised
11:15tiredchiku[d]: ah, so probably just a matter of me not knowing where to look 😅
11:16tiredchiku[d]: took a look at drm/nova on the gitlab I think last week and only really saw rebases of older commits
11:17airlied[d]: In any case there isn't anything for non developers yet
11:19airlied[d]: If you want to see your computer crash and screw your filesystem, there are better ways to do it 🙂
12:34zmike[d]: smh once again airlied keeping all the gofastium for himself
13:06mupuf: tiredchiku[d]: FYI, the original creator of the nvc0 gallium driver was also a physics major... so don't beat yourself down thinking you are out of your league
13:07tiredchiku[d]: TIL
13:07tiredchiku[d]: but absolutely :)
13:08mohamexiety[d]: Faith is also Maths iirc?
13:08tiredchiku[d]: I have a fair few people I can look up to who got into some hardcore programming with an academic background in physics
13:11blisto[d]: Remember that the software works because of physics
13:11tiredchiku[d]: yeah
13:11tiredchiku[d]: still wondering if I should take up that VLSI opportunity that's been handed to me
13:25phomes_[d]: tiredchiku[d]: are you debugging the Rage 2 crash? I can take a closer look but don't want to duplicate work if you are already doing it
13:26tiredchiku[d]: I'm not, no
13:26tiredchiku[d]: I have my hands full with a fair bit of other stuff (including IRL nonsense) 😅
15:03gfxstrand[d]: mohamexiety[d]: Computer engineering / Math double-major then Math PhD. I did too much school. 🙃
15:03mohamexiety[d]: gfxstrand[d]: oh god I am so sorry
15:03mohamexiety[d]: one of those is arguably more than enough school by itself :KEKW:
15:05gfxstrand[d]: It's okay. The math department where I went was a great graduate school experience.
17:22notthatclippy[d]: Does anyone have an example of what envyhooks logs look like? Particularly with `EHKS_LOG_RM_IOCTL`?
17:27gfxstrand[d]: Okay, trying Veilguard with mhenning[d]'s branch. Let's see if that improves anything. It won't help as much as `ld.constant` but Frostbite does enough compute shit it'll probably something.
18:10asdqueerfromeu[d]: gfxstrand[d]: I wonder how well NFS 2015 runs on NVK (because it also uses Frostbite)
18:10tiredchiku[d]: I can check that
18:13tiredchiku[d]: let me quickly build the latest mesa-git
18:21gfxstrand[d]: asdqueerfromeu[d]: 2015 frostbite is very different from 2024 frostbite
19:11marysaka[d]: notthatclippy[d]: for `./run_preload vulkaninfo &> output.log`
19:11marysaka[d]: https://gist.github.com/marysaka/ca99a8c360d94eb3dcd758a9f0e873b9
19:13marysaka[d]: everything is register mostly manually so far for control commands here https://gitlab.freedesktop.org/nouveau/envyhooks/-/blob/main/src/nvrm/utils.rs?ref_type=heads#L67
19:13notthatclippy[d]: marysaka[d]: Thank you! It looks great! We had a usecase internally for something similar (save/replay) and I want to point people to this instead of NIHing it yet again.
19:14marysaka[d]: We import the structs via bindgen with the Debug trait automatically implemented so this only need mapping between RM_CONTROL numbers and structs
19:14marysaka[d]: (I wasn't able to find anything that would help me to automate that part 😅)
19:15marysaka[d]: I think it might be possible to automatically implement some kind of serializer too and then replay communications 😄
19:27gregwork: howdy, is there any way to get statistical data for gpu usage/load memory usage with the nouveau/nvk driver ?
19:27gregwork: termperature too perhaps
19:27gregwork: everywhere i look refers back to the closed drivers
19:29tiredchiku[d]: there isn't yet
19:33gregwork: that is .. surprising
19:35tiredchiku[d]: iiuc no one's put in the work for it yet because it's not high on the priority list
19:36tiredchiku[d]: but I could be wrong
19:39RSpliet: doesn't sensors report temperature anymore (or no longer for newer GPUs)?
19:45karolherbst[d]: the GSP interface isn't wired up yet
19:48gregwork: tiredchiku[d]: is there a track or public priority list ?
19:48gregwork: utilization data seems like an essential component of working with the card
19:49tiredchiku[d]: gregwork: not that I know of
19:49notthatclippy[d]: I have a vague intent of wiring this all up to hwmon once nouveau moves to r570
19:50tiredchiku[d]: 👀
19:50notthatclippy[d]: But if someone else feels like doing it with some guidance, even better :)
19:56ukleinek: Hello, is the mailing list moderated? I tried to forward a bug reported against the Debian kernel to the list, but it didn't make it into the archive.
19:57ukleinek: This is about https://bugs.debian.org/1092189
20:07gfxstrand[d]: yes they are
23:07ryan_: hello
23:07ryan_: can you help me?
23:20orowith2os[d]: ryan_: not without knowing what needs helping
23:21orowith2os[d]: Explain your issue instead of just asking, and if someone can help, they will
23:35donte: https://www.donte.net/