Ryzen 9950x or 9900x?

Hi. This is my actual benchmarking in topaz video ai

Topaz Video AI v7.0.1
System Information
OS: Windows v10.22
CPU: AMD Ryzen 9 3900X 12-Core Processor 31.949 GB
GPU: NVIDIA GeForce RTX 4070 SUPER 11.718 GB
Processing Settings
device: 0 vram: 1 instances: 1
Input Resolution: 1920x1080
Benchmark Results
Artemis 1X: 15.42 fps 2X: 08.04 fps 4X: 02.11 fps
Iris 1X: 19.84 fps 2X: 08.52 fps 4X: 02.29 fps
Proteus 1X: 20.40 fps 2X: 08.99 fps 4X: 02.38 fps
Gaia 1X: 06.87 fps 2X: 04.96 fps 4X: 02.13 fps
Nyx 1X: 06.79 fps 2X: 05.44 fps
Nyx Fast 1X: 14.83 fps
Rhea 4X: 01.93 fps
RXL 4X: 01.98 fps
Hyperion HDR 1X: 15.85 fps
4X Slowmo Apollo: 21.78 fps APFast: 36.51 fps Chronos: 15.24 fps CHFast: 21.30 fps
16X Slowmo Aion: 23.08 fps

I use in real live the proteus model with manual setting and for my experience I obtain +/- 11 fps.It takes more or lex 5 to 6X the total output lenght of video

I’am thinking make a upgrade to my pc and I am thinking something like this

GPU: Rtx 5080 (I don’t have budget for the 5090 or 4090)
Memory: 2 X 32 Gb DD5 6000Mhz CL30
My doubt is which processor I choose, I’am thinking between 9950x or 9900x ( the 9950 has more 4 cores and 8 threads and it costs more 140€)

The purpose of this upgrade is to increase my actual fps using the same topaz video ai configuration

Main question: It is worth pay more 140€ for 9950x or should I use this money to buy 128Gb instead of 64Gb of memory and buy the 9900x?

Thank you

I only use the first 8 cores of my 9950X3D for TVAI. With most TVAI tasks, it’s faster to use only the cores from a single CCD. Even disabling hyperthreading on first 8 cores can boost performance. Therefore I think a 9700X could actually be faster than a 9900X, at least if nothing else is running in parallel (that’s only the case when export encoding is performed on GPU, see Edit below).

Edit:
As ForSerious showed, when utilizing CPU based export format like TIFF images, the CPU utilization can be much bigger compared to a GPU based export format (eg. h265 on GPU) . On my 16 core CPU I actually measured twice the CPU utilization for TIFF export.
In this case, a 9700X with only 8 cores will most likely perform worse than a 9900X with 2x6cores. And a 9950X will probably again perform a little better than a 9900X. When using GPU based encoding, a 9700X should perform on par or sometimes faster than a 9900X in default configuration.
There are also more options in TVAI, like dynamic parameter detection which add to the CPU load and might make a 9900X with more cores faster than a 9700X.

And fast 32GB RAM will be also of more use than 128GB of slower RAM. TVAI doesn’t really use more than 16GB.

Thank you for your help. When you say a fast 32GGB you mean a ram with more clock speed or with a lower CL or both? Could you give me a example of the best ram configuration?

One more question. What is the cpu from Intel that have the same perfomance of 9900x/9950x?

The hand tuned maximum u could achieve would be 6400 cl30 RAM but that’s a lot of trial and error and sometimes the cpu (specifically the memory controller on the cpu) cant handle that speed.

But u should be able to buy a pre configured ram kit with 6200 or 6000 cl30 speed which should give u about 80-90% of that performance.

The latest intel cpu, the 285k/265k dont seem to perform very well with tvai if u look into the performance threads of the forum.
Therefore the generation before, a 14700K/KF would probably be the recommendation. It could even be faster than the Ryzen CPUs in TVAI because it supports faster RAM, but I dont have first hand experience with it.

The 9950X3D might be a special case. My 9900X uses 10 cores heavily with Proteus. There was something I was doing not long ago with TVAI that maxed out the cores and made me start wondering if I should have got the 9950X.

Just try to assign only first 6 cores to ffmpeg process in task manager while tvai is performing one of your jobs and check performance. 6 cores could be on the low side but for my 7950 and now 9950x3d, using only the first 8 cores of ccd 0 is faster in my Proteus jobs, which is why a single ccd 8 core 7900x could be faster than 12 cores of 9900x.

On my 9900X.
10 min 16:9 DVD clip with no black bars to FHD using Proteus manual.
Here are the results:

One CCD:        0:14:28.25
Half and half:  0:17:55.35
12 cores:       0:08:10.11
Unlimited:      0:05:57.37

This is including the time it took for me to limit the cores in Task Manager, so if it took me longer to set them, that would only make the time shorter since unlimited was the fastest.

1 Like

I start now some more output using the proteus model with manual settings and when i go to task manager / perfomance I see this:

Cpu utilization(it seems that all the cores are used by topaz):

Gpu utilization:

Memory utilization:

It is normal that Cpu is with more usage than GPU(I always think that the GPU was more important than CPu in AI work)?

Interesting. There are many variables of the settings. I neither use ‘Recover detail’ nor ‘Dynamic Settings’. And I encode to H265 with AMD GPU (better quality compared to NVIDIA).

In my testing I found that ‘Recover detail’ lowers performance so much that the difference between the core settings becomes almost negligible.
‘Dynamic Settings’ on the other hand seem to benefit from more cores which might explain the difference in our findings since I usually use pure manual settings which requires less cores.

For setting core affinity I use free version of Process Lasso https://bitsum.com/ .


Default, all cores 78fps:

CCD0 only 88fps

CCD0 no HT 93fps

6 cores CCD0 89fps

What is your ‘Unlimited’ setting?

If there is any scaling involved then yes, CPU + RAM often creates a bottleneck for the GPU since image scaling is performed by CPU in RAM. ‘Recover Detail’ and ‘Dynamic Settings’ are also CPU + RAM dependent and can create an even bigger bottleneck.

Only the Starlight model is 90% GPU since it’s so slow on the GPU so that any scaling or other tasks on the CPU are essentially never a bottleneck.

Unlimited is the default of use all cores as needed.
The fps doesn’t matter really, only the time taken to complete the task. I don’t trust the fps counter in TVAI and the one in ffmpeg is just an average of the whole time—so when I paused it to set the cores it also reduced the fps number a ton. [Edit: so for the reported times, I didn’t bother to pause it, since that would alter the time taken.] I’m just using Proteus manual settings. Nothing else. I did run it with a script and output to tiff, so there’s no GUI to bog anything down.

Tiff encoding probably takes up a good chunk of CPU, at least more than any GPU based encoding. So yes, if somebody uses CPU based output encoding, more cores are required.

I can turn the tiff compression off and run it again. I’m willing to bet the times will be similar.

Hi, I checked the CPU utilization when using default all cores with TIFF export (using CPU) and h265 export (using GPU). There is a pretty big difference on my system. TIFF export on CPU puts almost twice the load on the 16 cores: 54% vs 28% CPU utilization. Wither fewer CPU cores, the difference could be even bigger. I also found that in the case of TIFF export, using all cores perform better than a single CCD. Just like you found.

Therefore, I will annotate my recommendations in the first posts that these are only valid if the output encoding is performed on a GPU and not the CPU.

H265 export performed by AMD iGPU (total CPU utilization of 28%)

TIFF export performed by CPU (total CPU utilization of 54%)

I have a 9950X3D. How can I change the settings to only use the first 8 cores for TVAI? I’m completely new to AMD or anything computer related. haha.

Ok, it’s not a standard thing to do but can be beneficial in TVAI.
The primary possibilities are

  • Windows Task Manager: Details Tab in the Advanced Mode gives u a list processes and there u can right click on ffmpeg.exe while a TVAI job is running and use ‘Set affinity’. Main drawback is that u need to do this every time u restart a TVAI job.
  • I use Process Lasso https://bitsum.com/ in the free version. There u can pre-define various affinity settings (e.g only first 8 cores, 
) and permanently associate processes like ffmpeg.exe with an affinity profile. The details u can find in the help or online
1 Like

What’s the point in outputting to a lossy format? The hardware implementations of H.264 and H.265 are bigger and more lossy than the software versions. I need to output to something lossless to be able to convert them optimally into a final viewing format.
Also, before everyone gets too excited by your findings, you have not supplied the times is takes to process a longer than two minute video in all the CPU configurations.

Thank you so much! :slight_smile: I’ll try it to see if it makes a difference in speed. :slight_smile:

Here u go
10:10 min DVD video 960x540 upscaled 2x to 1920x1080 with Proteus all manual settings, no recover detail, export with AMD GPU to h265
5090 downclocked to 2100Mhz, 32GB RAM 6200CL30, Win10

made a batch file with 3 exports and time output, showing the minutes:seconds here:
all cores: 05:47-09:42 = 3:55 = 235s /2.6x (as shown by TVAI command line)
ccd0 ht: 09:42-13:14 = 3:32 = 212s /2.84x (as shown by TVAI command line)
cc0 no ht: 13:14-16:43 = 3:29 = 209s /2.94x (as shown by TVAI command line)



Regarding lossy vs lossless export. Just different needs I guess. I primarily work with FHD, UHD or FHD → UHD movies. For the big difference in output size, lossless is usually not worth it for me.

export command:
ffmpeg “-hide_banner” “-i” “F:/CPU/DVD 10min test.mkv” “-sws_flags” “spline+accurate_rnd+full_chroma_int” “-filter_complex” “tvai_up=model=prob-4:scale=0:w=1920:h=1080:preblur=0.42:noise=0.23:details=0.21:halo=0.28:blur=0.31:compression=0.18:device=0:vram=0.95:instances=0” “-c:v” “hevc_amf” “-profile:v” “main” “-profile_tier” “main” “-tag:v” “hvc1” “-pix_fmt” “yuv420p” “-g” “30” “-b:v” “24M” “-an” “-map_metadata” “0” “-map_metadata:s:v” “0:s:v” “-fps_mode:v” “passthrough” “-map” “0:s?” “-c:s” “copy” “-movflags” “frag_keyframe+empty_moov+delay_moov+use_metadata_tags+write_colr” “-bf” “0” “-metadata” “videoai=Enhanced using prob-4; mode: manual; revert compression at 18; recover details at 21; sharpen at 31; reduce noise at 23; dehalo at 28; anti-alias/deblur at 42; and focus fix Off. Changed resolution to 1920x1080” “F:/CPU/01.mkv”

Thank you very much. That’s pretty interesting. I still wonder if that’s unique to the X3D variant, but I’m not going to change my script to test it fully or enable the iGPU in bios. Someone who’s really into it will have to take that up.
I also failed to mention that I just installed my 9900X onto an existing Windows install that used to have an Intel i5 2600K and has had like two other motherboards and processors in it. It might make a difference since I know that some reviews on the 9900X mention needing a fresh Windows install to properly turn on or off CCDs—or something like that. It sounded detrimental to me, so I didn’t bother.
[Edit: I found the review and put the link here.]