There's a few things you can do.
1. Make sure your decoder in LAVfilters is set to "DXVA2 (copy-back)
2. If you're not using MadVR, enable "D3D Fullscreen" - this will decrease the CPU utilization a bit.
If you do use MadVR, then enable "use direct3d 11 for presentation" Also, since your HTPC is likely connected to a TV, you may want to have your TV do the upscaling rather than your PC (this is assuming your TV doesn't have a crappy upscaler). I believe MadVR has a setting that lets you to automatically change the output resolution based on the source video resolution.
3. Try manually setting SVP's amount of threads to the fewest amount possible that does not decrease performance. In other words, if you set it to too few of threads, you will actually have reduced performance (like SVP will only use 50% CPU but run at 0.75x speed); but you don't want to "max out" the thread amount either because setting more threads will use more CPU.
4. Set your display to a refresh rate that's exactly 2x of the source video framerate (or 3x if 2x isn't possible); that would be 60Hz for 30fps, 50Hz for 25fps, 48Hz for 24fps (or if you can't do 50Hz and/or 48Hz, try 75Hz and 72Hz). This will take less CPU for 24 and 25fps content while also giving a smoother result than just always running at 60Hz. I personally recommend using MPC-HC's built-in automatic resolution changer for this ability.
If your TV doesn't natively support 48Hz and 50Hz, try making custom resolutions via CRU - Custom Resolution Utility. Make sure that these are "Detailed resolutions" and that you try "LCD standard", "LCD native", and "LCD reduced". Note that you need to reboot after adding custom resolutions. If you change to an unsupported refreshrate and Windows doesn't automatically change back, restart your PC (windows start keyboard key -> right arrow key -> enter key) rapidly press F8 before Windows loads while your PC is booting up, and select "Low resolution" / 640x480 mode.
5. Make separate profiles for different video resolutions, framerates, codecs, bit depths, etc. 10bit h.264 takes more CPU to decode than 8bit h.264 while VP9 and HEVC take even more. Not only that, but interpolating 24fps --to-> 48fps takes less CPU than interpolating 30fps --to-> 60fps, so with the extra CPU headroom you could use smoother settings for 24fps videos than you would for to 30fps videos.
6. You can indeed get more smoothness with less CPU utilization by making custom profiles. Generally I do the following:
Nintendo Maniac 64 @ svp-team.com/forum/viewtopic.php?pid=54714#p54714 wrote:Basically leave the settings at their default except for the following 4 settings if you need more performance (start with the first setting and then only go to the next one if you need still need even more performance):
Motion vectors precision
Motion vectors grid
SVP Shader
SVP interpolation mode
The only exception is that you may want to manually set the SVP shader to "Sharp (anime)" for traditional non-CGI animated content.
For really low-end systems (read: 10 year old dual-core PCs without GPU acceleration), you need to mix and match the settings to get optimal smoothness, like using 1m + standard + 16px rather than adaptive + sharp + 28px (the latter being what SVP's automatic options would use - see this thread).
Conversely, if you want to increase smoothness, simply increase the values for those 4 same settings, but in the exact opposite order (so change "interpolation mode" first, then "Shader", etc).
You may want to mix and match a bit though since some of the options at higher settings (like shader set to "Complicated" or vectors grid set to "8px") can give quite a few artifacts depending on the video ("Complicated" is bad for lower resolutions, thin lines, and sometimes lower framerates; "8px" becomes progressively worse the higher the video resolution is).
And again, you may want to use "Sharp (anime)" for anime and the like regardless of your performance.
7. Get a Phenom II x6 or an FX-83xx CPU; SVP loves "moar cores!".