Hitfilm Express doesnt use GPU

KeeWee
KeeWee Posts: 22 Just Starting Out*
Last time I've been on this page I complained about a performance issue, and I think I've found out why

Right now I'm exporting a small 2:30 minute video at 640 x 480 resolution at around 4,500 mbps. When I check task manager it reports 70% CPU usage (I have a R5 3600x) and only 20% GPU usage (RTX 2060Super) with 1.5% of it being the render client

Here's a screenshot link: https://prntscr.com/221sx38

Best Answer

  • Stargazer54
    Stargazer54 Posts: 3,758 Ambassador
    Answer ✓

    @Triem23 Good catch. I completely missed that the OP was using the Crop/Pan effect - which of course, would bring the GPU into play. I also keep forgetting about the Serial operations between the CPU and GPU - mostly since this never affects me per se.

    @KeeWee I understand that your PC is of recent vintage, however there is definitely something about your setup that is triggering your issues with HF that the rest of us don't see. Again, please put in a support ticket. I think we have rung out as much as we can on the forum and this should now go to FXHome support to solve.

Answers

  • triforcefx
    triforcefx United StatesPosts: 1,485 Moderator

    What export times are you getting, and what are you expecting to get?

    Where does your source video?

    What sorts of effects are you doing? Color correction? 3D? Particles?

    All these questions must be answered to determine if your performance is typical or not.

    HitFilm leans on the CPU for video encoding, while effects are more likely to use the GPU (though a number of them use the CPU as well)

  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    My export times are sitting around 40 minutes while I should be getting 10 at max, I barely have any effects on said video, the only one being crop & pan
  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    My source video is an OBS .mp3 recording
  • Stargazer54
    Stargazer54 Posts: 3,758 Ambassador
    edited December 2021

    @KeeWee I'm confused. mp3 is an audio format. Do you mean an OBS .mp4 recording?

    Maybe the OBS recording is Variable Frame Rate? ( but you can set it to record at Constant Frame Rate ). If it is VFR then this might be causing the CPU to think harder and thus be slower. Try going back to OBS then go to File, Remux Recordings, pick your file and that should spit out a VFR version.

    In addition, your resolution of 640 x 480 being recorded at 4,500 mbps seems excessive and could be slowing things down. Or do you mean 4,500 kbps? I typically record at 2,500 kbps for 1080p.

    Plus if you are scaling up the video to export to 1080p (for example) that would further add to the CPU workload. As @triforcefx has said, decoding/encoding of video in HF is handled by the CPU. For the most part, your GPU won't enter into the equation until you add effects.

  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    WAIT, did I say mp3? That was a typo I meant mp4. My bad
  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    I'm recording at a constant 100 fps, then I remux the file from .mkv to .mp4. As for the resolıtion I made my own preset that should use the source, which I set to 640 x 480 in the project settings
  • triforcefx
    triforcefx United StatesPosts: 1,485 Moderator

    Im going to guess that your 100 FPS is what’s causing all your issues. If your final video is going to be 60 FPS, record in 60 FPS. At 100 FPS, HitFilm has to decide which frames to drop and that adds a lot of extra overhead… similar to the problem VFR has.

  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    But my project is also set to 100 fps?
  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    Again, it comes down to the stability of the program as I've had minimal issues before the updates that changed the logo (I dont know the exact version, but I know that thats when I've started having problems)
  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    edited December 2021
    I've rendered a 4:15 minute video in 10 minutes in the older version, it was also 1080p 10(TEN!)mbps at 100 fps

    Yet on the current build it takes almost a full hour to render a 3 minute 640x480 video at 3 mbps target bitrate with 5 mbps max bitrate
  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    I've retried the render again and it's using ALL of the 12 threads I have at 4.12 gigahertz with a 22 minute estimated render time, if this isnt poor software design I dont know what is
  • Stargazer54
    Stargazer54 Posts: 3,758 Ambassador

    @KeeWee Please contact FXHome support at https://fxhome.com/ask. They will be better equipped to assist going forward.

  • Triem23
    Triem23 Posts: 20,604 Ambassador

    Hitfilm Express DOES use the GPU but you don't understand the render pipe and order of operations - and neither @triforcefx or @Stargazer54 made this explicitly clear.

    Both mentioned that the CPU handles frame encoding and decoding, while the GPU handles VFX and frame renders. What they didn't point out is this happens in a SERIAL manner not PARALLEL. When the CPU is doing its tasks the GPU is idle and vice/versa.

    Your figure of "70% CPU load and 20%GPU load" indicates Hitfilm is spending most of its time dealing with file I/O and relatively little time on rendering.

    But, your headline statement of "Hitfilm isn't using my GPU" is objectively wrong. It's using your GPU, but knowing of that handoff between CPU/GPU will hopefully keep you from stressing out over Task Manager reports that don't really mean much. (I'm reminded of the occasional user we get who feels that CPU and GPU should always be pegged at 100%. Those are people who don't understand how computers actually work.)

    You are using the Pan/Crop EFFECT. I suspect this is more resource intensive than the old/classic method of keyframing Scale and Position, although I never have done an A/B test for that.

    Still, your task manager report might hint at that. Depends on if the FXhome "Render Client" is literally rendering frames or if it's managing the processes that render frames, I guess (Mods and Ambassadors aren't FXhome staff, certainly not Hitfilm devs, and have very little knowledge of how the software works beyond public statements made by devs).

    When "the logo changed" (Hitfilm v16) Hitfilm shifted from an OpenGL 2.1 core to OpenGL 4.2 and from OpenCL 1.0 to 1.2. There was also a raise in minimum specs, basically from 2013 tech to 2016 tech. One can assume these versions of Hitfilm use more resources than older versions. This is typical in the tech industry (it's well known for example older iProduct gets slower when updating iOS or that a Windows box built for, say, Win 7 suddenly "got slower" if updated to Windows 10. Basically your machine is getting older and software is requiring more power). This has been a Hitfilm cycle for a long time - some change to the code core raises minimum specs, then the software feels slower on identical hardware, but each revision gets faster again until the next time specs go up. Actually, that's pretty typical of all my software.

    Hitfilm EXPRESS v16 also shifted to use the native encoders/decoders in the computer's OS while Hitfilm PRO uses licensed third party libraries. There have been some issues that arose from this that didn't come up in Beta Testing (for example, Stargazer, Triforce and I are beta testers and we didn't encounter any of the now known bugs ourselves. Don't even THINK of saying "well they should have tested for everything," because there are literally tens of thousands of possible hardware configurations that can run Hitfilm only in the last two generations. It is literally impossible for any tech company to test their product on all hardware, and anyone saying they should merely betrays naive ignorance.). It's possible this might also have something to do with perceived slowdown. Certainly had something to do with the pixelation issues affecting some users.

    Finally, Hitfilm has never been the fastest at plain old frame buffering. It is slower than most of its competitors at the "basic" task of pulling frames from the drive and writing them to the drive. In that case, it is what it is. I suspect it's due to the OpenGL render core. The devs have never confirmed or denied (and always ignore this when I speculate), but I believe all image/video objects in Hitfilm are actually texture mapped polygons. This would have advantages when setting up 3D workspaces and make it easier to have 3D models/planes/particles occlude correctly, but it does add an additional processor load just getting a straight video frame on the Timeline. It would also explain why anti aliasing in Hitfilm exports is global.

    Anyways, again, Mods/Ambassadors aren't Staff/HF devs, so there's really nothing else we can do at this point other than refer you to support, which Stargazer already has.

  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    edited December 2021

    Thank you, this is great information


    Edit: I forgot to mention I did another test to rule out some factors


    1) I tried rendering at 1920x1080 instead of setting a custom resolution, still the same result


    2) I used the premade export presets in hitfilm instead of my own, no luck


    3) I tried scaling instead of using the crop effect, no luck there either


    It cant be that my PC is getting old either, as I've built it around August 2020 (I think, I'll have to check the receipt). I dont know what else could be causing this, I've also been getting incredible lag spikes on a 'video to video' basis, I've made another post about that aswell. It could be a stability issue with my RAM as I've done a quick frequency overclock without messing with too many settings, but thats gonna need some testing

  • spyresca
    spyresca Posts: 254 Enthusiast
    edited December 2021

    I don't know if the OBS guys fixed this (I suspect not), but if you remux from OBS it can actually mess up your CFR footage.

    ----

    Just captured CFR video with latest OBS (.mkv) then remuxed it to .mp4 with OBS.

    Even tho' remux isn't supposed to change the underlying video, the remuxed file (.mp4) shows up in mediainfo as VFR instead of CFR, probably incorrectly. I wonder if that confuses HF as it seemed to confuse Lightworks in the post above?

  • KeeWee
    KeeWee Posts: 22 Just Starting Out*
    edited December 2021

    Hah, and just 1 week after I open this topic the GPU update rolls out. Well then, it seems they listen to the community. Good work FxHome!

  • Triem23
    Triem23 Posts: 20,604 Ambassador

    The dev teams really do work quite hard.