Le 05/06/2024 à 22:50, Mark Thompson a écrit : > On 30/05/2024 20:43, averne wrote: >> To save on energy, the clock speed of multimedia engines should be adapted >> to their workload. >> >> Signed-off-by: averne <averne...@gmail.com> >> --- >> libavutil/hwcontext_nvtegra.c | 165 ++++++++++++++++++++++++++++++++++ >> libavutil/hwcontext_nvtegra.h | 7 ++ >> 2 files changed, 172 insertions(+) >> >> ... >> diff --git a/libavutil/hwcontext_nvtegra.h b/libavutil/hwcontext_nvtegra.h >> index 8a2383d304..7c845951d9 100644 >> --- a/libavutil/hwcontext_nvtegra.h >> +++ b/libavutil/hwcontext_nvtegra.h >> @@ -82,4 +82,11 @@ static inline AVNVTegraMap >> *av_nvtegra_frame_get_fbuf_map(const AVFrame *frame) >> */ >> int av_nvtegra_pixfmt_to_vic(enum AVPixelFormat fmt); >> >> +/* >> + * Dynamic frequency scaling routines >> + */ >> +int av_nvtegra_dfs_init(AVHWDeviceContext *ctx, AVNVTegraChannel *channel, >> int width, int height, double framerate_hz); >> +int av_nvtegra_dfs_update(AVHWDeviceContext *ctx, AVNVTegraChannel >> *channel, int bitstream_len, int decode_cycles); >> +int av_nvtegra_dfs_uninit(AVHWDeviceContext *ctx, AVNVTegraChannel >> *channel); >> + >> #endif /* AVUTIL_HWCONTEXT_NVTEGRA_H */ > > This really isn't a sensible thing to have in the public API of ffmpeg. Why > on earth isn't this sort of detail dealt with by the kernel? (Which can > actually see all of the different processes using it, as well.) > > Thanks, > > - Mark
I completely agree but this is how nvidia does it, as dumb as it may seem (at least on Tegra, I don't know about discrete GPUs). As far as I can tell the kernel has no mechanism in place to monitor the occupancy of the decode engine. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".