KhronosGroup / Vulkan-Ecosystem

Public repository for Vulkan Ecosystem issues
Apache License 2.0
133 stars 15 forks source link

Monitoring API in Vulkan #37

Closed nicokoch closed 3 years ago

nicokoch commented 6 years ago

There are several monitoring tools for GPUs, but they are all vendor specific (at least they are on linux). What the entire GPU ecosystem is lacking is some kind of standardized way to access information like:

I'm not sure if vulkan is the right place to position such an API, but to me it's really frustrating that this information is hard to obtain using public APIs. Especially with nvidia hardware I'm mostly limited to their proprietary tools.

I know the specs would be really hard to get right (how do you define GPU load? How would you report VRAM usage on a integrated or emulated GPU, etc.). There's also technical limations (can such information even be provided without being superuser?).

Such an API would enable vulkan applications to make more informed decisions about which physical device to choose. It would also make it a lot easier to write monitoring software (something like htop for GPUs).

Maybe something like this already exists and I'm just not aware of anything, but I'm pretty sure there's nothing.

Cyprex commented 6 years ago

For temperatures there is the Linux hwmon subsystem, although I'm not sure how widespread this is, both my (fairly old, both AMD) GPU and CPU are supported. For Debian the lm-sensors package provides the sensors utility which allows me to view temperatures. Further reading: https://hwmon.wiki.kernel.org/ https://github.com/groeck/lm-sensors

nicokoch commented 6 years ago

lm-sensors/hwmon do not support nvidia cards as far as I'm aware, which is exactly my point.

shmerl commented 6 years ago

That's not a problem of lm-sensors, but of Nvidia not supporting upstream driver. Nothing stops them from upstreaming theirs or helping existing open kernel driver to work properly. Your best option is not to use Nvidia if you need that feature.

This isn't a Vulkan related issue though.

nicokoch commented 6 years ago

I am not talking exclusively about temperatures, as detailed in the OP.

Cazadorro commented 6 years ago

@nicokoch Windows 10 pretty much does the rest.

nicokoch commented 6 years ago

Vulkan is cross-plattform though. On Linux there simply is no unified way to access this type of information. The point of this issue is to create one.

marty-johnson59 commented 3 years ago

This repository is being archived as it has been replaced with the vulkan.org website and is no longer being maintained (i.e., issues posted here are no longer being addressed ). After reviewing issues posted here, most (if not all) have been resolved or have already been re-opened in Vulkan-Docs (https://github.com/KhronosGroup/Vulkan-Docs) or other repositories for further consideration. Therefore, all issues in this repository will be closed. If you believe your issue has not yet been resolved, please re-open in Vulkan-Docs. Thanks!