I previously made a post analyzing the behavior of the 7950X3D. I had to keep editing it from new information.
After thorough testing and many, many benchmarks and hours, I think I understand it.
The typical behavior (make sure you install the chipset drivers) is to park the second CCD when you are in a game. However, certain cores may become active if necessary.
Note: Your performance will still be pretty good if you don't do any of this. This is for further optimization. All the benchmark scores are from Far Cry 6 on a 7900 XTX with settings to max and ray tracing. I used CineBench with 11 threads to simulate background tasks happening while playing a game. I did a fresh run of benchmarks, so they may differ from the post.
For most users
You can simply turn on the High Performance power profile in Windows. This will prevent cores from parking.
Benchmark in Balanced: 102
Benchmark in High Performance: 102
Benchmark in Balanced with CineBench: 92
Benchmark in High Performance with CineBench: 97
As you can see, it won't harm your performance in normal situations. But if you have background tasks running, it is better by a good 5% since it'll use the other cores more since they are unparked.
For best performance
Turn off Windows Game Mode and then manually set the CPU Set (or affinity) of each game to the CCD with the cache. If you use Process Lasso, you'll want to use "CPU Sets" rather than affinity because setting the affinity on game startup will cause some games to crash. Also one person said you need to set the CPPC to Frequency in BIOS, but this didn't do anything differently for me, and I don't recommend it unless your CPU is erroneously preferring the cache cores during normal non-gaming workloads.
Game Mode OFF and setting the game CPU Set: 104
Game Mode OFF and setting game CPU Set plus CineBench running: 99
Now, I may have been able to get to 104 benchmark with Balanced and High Performance with Game Mode on if I had disabled every single thing running in the background (Discord, Messenger, Task Manager, etc.) But I'm highlighting real-world use.
As you can see, doing this is optimal. Yes, it takes a lot more work, but it will give you the highest performance, especially with background tasks running. I'm sure that 99 vs 97 would scale if I ran more than 11 CineBench threads. Of course, most people aren't going to be doing this, but I think the difference will be a lot greater in more CPU-intensive games.
Why is there a difference?
So if you just set to High Performance, it will unpark the cores and set the cache cores to the preferred core while the game is open. However, once the cores get saturated, it will start shuffling stuff to the frequency cores on the second CCD, and it won't differentiate between the game and background processes. The other things is, since the cache cores are now preferred, background tasks will also use them and compete for cache and CPU time.
In Balanced, since the cores are parked, you may actually fully saturate your cores. It'll unpark cores if it really needs to, but only when the cache cores are very saturated. And the frequency cores will keep parking/unparking repeatedly and stay at low-performance. If you try setting the game affinity to the frequency cores in this mode, the game will stutter horrendously (I discussed this in my other post).
If you disable Game Mode, no more CPPC modifications by the scheduler nor any core parking. So the frequency cores are always preferred. But then you can set the game's CPU Set (or affinity) cores for the game process, so it will use the cache cores while other programs will prefer the frequency cores (unlike just changing the power profile with Game Mode on, where all programs will prefer the cache cores while a game is running).
Basically, there are two ways to improve your performance, either slightly or moderately. If you choose the more tedious one, I don't think the power profile matters. Here is a link to my personal Process Lasso profile: Link
It only has a few games added to the CPU Sets, so you'll need to add all yours. I also force low priorities on things like SearchIndexer and other non-essential processes that sometimes eat CPU. I've tuned this profile over many years, but if you don't have a 7950X3D, you'll need to modify the CPU Sets.
7950X3D Best Setup | Overclockers UK Forums
7950x3d curve optimizer settings?
Tips on running a Ryzen 9 7950X3D
How can i improve my Ryzen 9 7950x3d experience?
Process Lasso your games to the 3D V-cache CCD and either leave everything else to the scheduler, or go further and pin affinity of multi-threaded applications to the non-3D V-cache cores. Curve Optimizer helps achieve better boost and single core performance so start there when it comes to OC, but the randomness you’re having is more likely not due to not using CO, but rather the scheduler sending tasks between CCDs.
More on reddit.comVideos
What settings should I set fypboforforfypboforfffor for curve optimizer and PBO with the 7950x3d? Right now I have ccd1 disabled. Sorry bout the jarbled text.
Hello everyone, recently I bought a PC with Ryzen 9 7950X3D and a 4090.
Despite having performed all the various driver updates and activating DOCP (limiting my RAM to 6000Mhz since my MOBA doesn't support 6400), I noticed that the in-game performance was scuffed with a variable framerate and non-linear frametime.
I was able to marginally solve the problem by locking the fps with RivaTuner and following this CPU optimization guide: https://www.techpowerup.com/review/amd-ryzen-9-7950x3d/5.html
Can you give me some advice to improve the situation? I am a newbie, so I have not tried undervolting yet
Thank you to anyone who bothers to try to help me
AMD Ryzen 9 7950x3D
ASUS ROG STRIX X670E-A GAMING WIFI
SK hynix Platinum P41 SSD PCIe NVMe M.2 - 2TB
Kingston KC3000 SSD NVMe M.2 PCIe 4.0 - 2TB
CORSAIR Vengeance RGB DDR5 6400Mhz 32GB (2x16)
PHANTEKS Glacier One 360D30 DRGB AIO
ASUS RTX 4090 ROG Strix 24G
MWE GOLD V2 1050
WINDOWS 11 PRO
Process Lasso your games to the 3D V-cache CCD and either leave everything else to the scheduler, or go further and pin affinity of multi-threaded applications to the non-3D V-cache cores. Curve Optimizer helps achieve better boost and single core performance so start there when it comes to OC, but the randomness you’re having is more likely not due to not using CO, but rather the scheduler sending tasks between CCDs.
Dual CCD'S that's the problem with gaming on those type of CPU'S.
The 7800X3D is a phenomenal gaming chip with a single CCD. For most people, this option is better. If you want the extra cores of the 7900+, you are dealing with a very different processor. The additional chiplet and mismatch of configuration between the two can be a problem. AMD's 3D V-Cache Performance Optimizer portion of the chipset driver is supposed to handle these tasks, but many people, myself included, report mixed results. Some games just won't play nice with it, resulting in stutter or sub-par performance.
In short, if you bought these unique CPUs and you aren't a tinkerer, you may have made the wrong choice. That said, they're phenomenal when they work, and we can force them to work. Some people, usually fanboys of Intel, will tell you it's overpriced or it is a bad product, but it really isn't. It's just a tinkerer's product. Side note: I am not an AMD "fan" either. I buy products based on the strength of the product, not the brand. AMD fanboys are also wrong when they say these products are flawless.
Some of these tips are applicable to other CPUs as well.
-
Chipset Driver
The AMD chipset driver for your system will include a component called the 3D V-Cache Performance Optimizer. This is the component responsible for automatically assigning processes to the proper CCD. It uses the Xbox Game Bar to determine when games are running. Make sure you install this when you install your chipset drivers.
-
Despite us forcing these things ourselves in the next step, I still suggest installing this. If you do not, you will see an unknown device erroring out in device manager. This portion of the driver may also contain other optimizations we don't know about. Only AMD knows for sure.
-
The Xbox Game Bar can be uninstalled using Winget via terminal if you do not want any automatic CCD assignments. I did this and it works wonderfully. Having it conflicting with manual assignment may cause issues, so keep an eye out.
2) Video Drivers and BIOS Updates
As always, keep your video and chipset drivers updated. Reinstalling video drivers will clear shader caches though, so you may get stuttering in poorly-made Unreal Engine games and others.
-
General wisdom is to not update your BIOS unless you are experiencing a problem. AM5 is still a young platform, so I would recommend updating often.
-
Take pictures of BIOS settings on your phone for easy re-entry after updating, as it will clear.
-
AGESA microcode updates have been rolling out with new iterations on almost every BIOS revision over the last few months. This will help system stability and performance. I was able to overclock my memory further with recent updates.
3) Process Lasso
Our most important tool to fully take advantage of this CPU is Process Lasso. Process Lasso is a program that lets you modify CPU affinity, among many other things, and retain these settings for the next time you launch the application. This allows us to force anything we want to any portion of the CPU we want. Games can be forced to the first half, the cache CCD, while everything else can be forced to the frequency CCD. The beauty of the dual CCD setup is that we can treat it as if we had two discrete CPUs for two sets of tasks.
-
Setting the affinity for a process is easy. In the example below, I have a process running exclusively on the frequency portion of the CPU. We can also disable SMT, which I would recommend giving a shot for games on the cache portion. For games, we would want only 0, 2, 4, 6, 8, 10, 12, and 14 checked on a 7950X3D. Experiment with different games for different results.
-
You can set Process Lasso affinities to target entire folders by entering "/^([^,]*,){3}.*\\foldername.*/" under Options -> CPU -> CPU Affinities. For example, if I want every Steam game to run with a desired affinity, I can set the target to "/^([^,]*,){3}.*\\steamapps.*/"
-
You can also configure power plans to potentially increase performance in the same way, as shown below. This is found under Options -> Power -> Performance Mode.
-
The coolest part about this for me is that I can run games on one CCD with things like Handbrake running full blast on the other CCD at the same time. I can effectively use demanding productivity apps and game at the same time, with little or no performance loss.
-
In some titles, particularly Unity titles that aren't very demanding, this resulted in massive average performance improvements and the elimination of stuttering.
-
Apply forced-mode in the options dropdown to make sure settings stay applied.
4) Background Apps and Monitors
Monitoring applications are fun but they aren't free. Some hardware polling can result in very noticeable stuttering in games. As cool as it may be to have constant temperature and other readouts, do you really need that? Is it not better to just have them when you're troubleshooting something or get curious? Turning them off can make a pretty big difference. This includes things like HWiNFO64, HWMonitor, MSI Afterburner, etc. I've noticed large frametime spikes when using any of these for monitoring, with varying degrees of impact depending on the sensor and game in question.
-
If you use MSI Afterburner, you can disable the monitoring portion and/or increase the polling rate to a maximum of 60,000.
-
Programs with overlays can also be an issue. Disable these if not needed. This includes RivaTuner, Steam / Origin overlays, and SpecialK.
-
SpecialK needs particular mention. It can provide a whole host of benefits for games, but some games may stutter because of it. This will vary depending on the game, but turning it off when you stutter is a good place to start. I think Unity may be especially problematic here.
-
Other background applications can be forced to use the frequency CCD so they don't interfere with games.
EDIT:
I went back and replayed the final level of Warhammer 40k Boltgun with these changes. I originally sat around 60 FPS quite often on that level. With the changes in this guide, I sat closer to 100 around the same areas, with a minimum of about 80, and was often at 172 (my cap). It made a massive difference.
I have been reading an lot on how to maintain background processes/tasks on the frequency CCD while gaming processes on the cache CCD. There are many ways out there and I am aware that there are way more efficient ways than this out there. These steps I think help those that want to test how this separation operates without getting into downloading or setting extra tools.
I tested COD: Warzone, Apex, Fortnite, Forza and Tomb Raider Benchmark tool. They are reported significant increases and if frames are capped (Mine at 270 since my monitor is 240hz) the 1% low improvements are where the gains are the most impressive.
Steps:
-
CPPC in bios to AUTO (Which sets priority on frequency CCD and this can be seen acting like that on HWinfo)
-
Game Mode turned off. This will turn off core parking
-
Power Plan balanced. In order to keep background task on the first 8 priority cores. Not sure if true but high performance started moving task that were in frequency into cache CCD while balanced didn't.
-
Open any process needed before opening the game (Discord, OBS, spotify etc). This will lock them to the frequency CCD.
-
Open the game. Under task manager>details right click on the processes and set the affinity for the task (game in this case) for the first 16 threads (0-15)
-
This will have to be done every time for every single game (it resets on every app load) but if performance is significant then set something like Process Lasso for that .exe
-
Make sure you close all non-essential background tasks (RGB software, HWinfo, etc).
Here is a clip from COD: Warzone 2.0 - https://youtu.be/jqGwthrDLR8
This is just my opinions after 72 hours using the x3d chip. I am hoping to hear different opinions and experiences or ways to improve performance.
Hello everyone,
I’m setting up my first non-laptop build, and after a lot of -very fruitful- research through this subreddit, YouTube videos, and other resources, I’ve compiled a list of BIOS and software settings that I plan to use. I wanted to run these by you to make sure I’m on the right track before I get started.
Build Specs:
-
CPU: Ryzen 9 7950X3D
-
GPU: ASUS ROG Strix GeForce RTX 4090 24GB
-
Motherboard: ASUS ROG STRIX B650-A GAMING WIFI
-
RAM: 2x32 GB DDR5 6400MHz
-
Cooler: Lian Li GALAHAD II LCD SL-INF 360mm AIO
Usage: About 50/50 gaming and productivity. I’m not aiming to squeeze every last drop of performance, but I want to make sure everything is configured properly. I’m not too worried about temperatures since the AIO cooler should handle that well.
Here’s what I’ve gathered so far:
Drivers:
-
Install the latest chipset, video drivers, and BIOS updates.
BIOS:
-
Enable DOCP – Ensures my RAM runs at its rated speed of 6400 MHz.
-
PBO – Considering enabling this for performance boost, but I’ve read that undervolting (adjusting voltage curves) is necessary for stability. I’m a bit nervous about messing with this.
-
Enable Resize BAR – Mixed opinions, but most seem to recommend enabling it.
-
Disable C-States – Opinions seem split on this and, again, I’m very cautious about anything power/voltage-related.
-
CPPC Frequency vs Auto – If set to frequency, do I only need to manage games on the 3D cache cores in Process Lasso? Is this the correct approach?
Windows Settings:
-
High Performance Power Plan – To avoid unnecessary downclocking.
-
Disable Game Mode – But I can still use the Game Bar if needed.
-
Uninstall AMD 3D V-Cache Performance Optimizer Driver – I've read this can cause issues, should I remove it?
Process Lasso:
-
Set Games to Cores 0-15 – Select only even cores (0, 2, ..., 14) to disable SMT. Is disabling SMT recommended?
-
Further Optimization – Assign other apps to cores 16-31 to keep the load balanced.
-
Options -> Power -> Performance Mode – Not sure what this does exactly; any advice?
General Questions:
-
Did I miss anything?
-
Ryzen Master, should I use it? For what? I've seen a thread claiming that it "ruined their PC" so... spooky.
-
Besides BIOS settings, is there anything else that might need to be redone after a BIOS update?
-
How do I know which non-game apps might benefit from the 3D cache cores? Is it simply, "anything that has 3D models"?
-
Is there a particular order I should follow when applying these settings?
Thanks in advance for the help! Apologies if some questions fall outside the scope of this subreddit, and I appreciate any advice or corrections you can offer. I’ll give updates on how things go and might compile everything into a Google Doc once I’ve got everything working nicely for future reference.
does the gaming cache core even overclock? wouldnt just enabling PBO be enough?
i noticed when i had CO set to -10 on all cores, my pc would reboot when idle. Since then I took it off completely but then thought to myself: is there really any reason to undervolt if all i care about is gaming? does it boost longer if the undervolt is there?
Just finished my very first built earlier today, and now I’m trying to optimize its performance. As the title says, what are the most important settings to change in order to get the maximal performance out of the 7950X3D?
Running 6000 MHz CL 30-36-36-76 ram
Currently I have: Updated bios Updated chipset Updated windows Updated Xbox game bar Set to prefer cache Enabled PBO
Haven’t yet looked at curve optimizer, but seems the general consensus is -20 on cores 0-7
Are there anything else I’m missing?
I ran the MW2 benchmark and the CPU got 384 avg fps 1440p. However I saw some guy on Twitter get 450+ so there must be some performance left on the table
Idle temps at ~48 Only 34700 in cinebench 360mm AIO Have experienced random crashes/reboots - no BSOD
Wondering if it’s just shitty bios or if I might’ve gotten a bad CPU?
I have a ryzen 7950X3D but I don't know how to configure it correctly.
I need a guide and tips to optimize it as much as possible to get the most performance out of my 4090 and the 7950X3D.
I want the computer logically for gaming performance, as much as possible and to work as a web developer, and create content.
If there is any expert I would appreciate it, I want to know from what operating system to use (win 10 or win11 24h2) to how to make when I open a game select the cores with L3 Cache to improve the games.
Should I have game mode activated?
Recommended power modes?
I would like to know everything about the processor and how to improve the performance in all the software I use: Video games, OBS, premiere pro, visual studio code etc etc etc....
if you speak Spanish you'd better by the way xD