5 ms·
Hey all, I work at discord and specifically have been tracking this issue. We recently released support for AV1 hardware encoding for go live streams. However,
by jhgg 4y ago
Hey all,
I work at discord and specifically have been tracking this issue. We recently released support for AV1 hardware encoding for go live streams. However, the process of probing the GPU for what codecs it supports has triggered a latent nvidia driver bug. We are releasing a workaround some time today, and nvidia is releasing a driver update to address this issue as well.
Apologies for any inconvenience this has caused.
- snet0 4y agoSo this is an Nvidia-side bug, rather than a Discord-side bug? But Discord's new feature simply exposes it?
- jhgg 4y agoCorrect.
- Aachen 4y agoI mean, that's what it sounds like when reading the headline. Card not reaching full speed under <condition> is an issue with the card. Impaired performance could be from <condition> occupying it, but that's not what it says (it sounds like clock scaling or something). That you've been investigating this for Nvidia is very nice of you!
- kirkules 4y agoDiscord has a large contingent of gamers among its users who expect to be able to use discord to communicate while gaming, so even if this isn't Discord's fault it's in their interest to look into it and facilitate a solution
- hn92726819 4y ago> but that's not what it says That's one interpretation. But it could also read as "Discord bug instructs Nvidia card to throttle when in background". The title should have specified the bug was on Nvidia's end
- magicalhippo 4y agoA more likely scenario IMHO would have been "Discord causes excessive background GPU usage, causing throttling".
- hn92726819 4y agoEither way, it looks like it's Discord's problem when it isn't > more likely I'll agree to disagree here though. That seems significantly less likely to me. I haven't heard of excessive CPU/GPU usage causing throttling, unless it's temperature related. Normally when you have high CPU usage, your clock speeds up not slows down. But in that case, the problem is high heat or 100% usage, not the side effect that happens to be throttling.
- magicalhippo 4y ago> unless it's temperature related That was indeed the case I was thinking of. It's easy to generate a lot of GPU load with minimal CPU load with some GPGPU process going haywire, for example.
- mosselman 4y ago> But it could also read as "Discord bug instructs Nvidia card to throttle when in background". That is how I read it
- thewataccount 4y agoMy immediate thought was "Oh it's hardware acceleration must be using up/reserving resources" which is decently common especially among chromium/electron based programs.
- deleted 4y ago[deleted]
- calimariae 4y agoI demand reimbursement for my dropped frames!
- andrewmcwatters 4y agoNvidia promises to give you your frames back, but they will be triple buffered and may be replaced during runtime with newer frames. Render now while supplies last!
- icodestuff 4y agoIs this also why Hades has been lagging, dropping frames, and running at a much lower framerate for months while Discord app DMs (and only DMs) are open?
- hacoo 4y agoNot likely, the reduction in memory clock speed is pretty small (I think only 6800 vs 7000 mhz)
- ysleepy 4y agoCan you have a look on how the web ui does the typing indicator animation? I really need an engineer to know what is happening there, why is it animating an svg in the dom by looping in Javascript, instead of just using a gif? This is destroying the battery by pegging a cpu core on firefox. At least this has been the case last time I checked. And there is no way to disable the animation.
- Const-me 4y ago> the process of probing the GPU for what codecs it supports I think you can ask that question to Windows, instead of probing. Call MFTEnumEx API function with MFT_CATEGORY_VIDEO_ENCODER category, MFT_ENUM_FLAG_HARDWARE | MFT_ENUM_FLAG_TRANSCODE_ONLY flags, and MFVideoFormat_AV1 in the output video subtype. https://learn.microsoft.com/en-us/windows/win32/api/mfapi/nf-mfapi-mftenumex https://learn.microsoft.com/en-us/windows/win32/api/mfapi/nf...
- WirelessGigabit 4y agoI agree with your statement, but I understand why you'd want to probe. It's cross-platform, and it's more reliable... (unless you run into a driver bug). The function you linked to queries the registry, and that on its own can be invalid information. How does that info get there? It ultimately reminds me of this article: https://devblogs.microsoft.com/oldnewthing/20040211-00/?p=40663 https://devblogs.microsoft.com/oldnewthing/20040211-00/?p=40...
- Const-me 4y ago> it's more reliable Hardware codecs are complicated. See V4L2 Linux kernel API, it exposes hardware codecs without doing anything on top. GPU vendors have higher chances of correctly using their hardware, compared to Discord developers. > How does that info get there? GPU driver package installs not just user/kernel mode halves of the driver, it also installs and registers these media foundation transforms. They are DLLs which wrap hardware codecs into higher-level API. > reminds me of this article The article is about Win95. It's now harder to ship broken Windows drivers. Windows checks for Microsoft's digital signature, and users expect drivers to be available on Windows update.
- ForOldHack 4y agoI am on an older 970m. There are no driver updates. Can you have a probe-less version out? or Is this related to a view port bug of Windows, and non-alignment?