Overclock.net banner
7,841 - 7,860 of 9,076 Posts
Don't waste your time with the garbage from JayzTwoBraincells
Here is how to ACTUALLY fix this issue:
1) Disable Game Mode & Gamebar
2) In the bios, set CPPC Dynamic Preferred Cores to "Frequency"
3) Install Process Lasso
4) Within Process Lasso, select the game process, and only enable X3D cores for that process
That is not how you fix the problem.
What you described is how you use an external tool to manually do for each game the same thing that a correct installation of the AMD drivers would do automatically for all games. You are just hiding the problem and adding extra steps.
 
I recently upgraded to 7950x3d (from 5800x3d), saw the Jays2Cents video from today and followed the steps to get the core parking working properly (confirmed in 3DMark CPU test so far, before/after made it clear that the CCD0 cores are now the ones being used if I tell Game Bar that the test is a game). So hooray!

Up next I want to do what I can to boost performance (PBO, CO, etc), but with all the conflicting and out-of-date info out there it’s tough to figure out what approach to take.

System details:
-Gigabyte Aero G B650
-4090
-2x32GB 6000MHz CL30
-Full custom water cooling loop with 3x360mm radiators

CPU idles (like with maybe just some Chrome tabs open) around 45-50C with package power showing as 45-50W in HWInfo64. Idle water temp is 30-31C. With Cinebench R23 multi-core running it settles around 82-83C at 135W, score is around 35500. So it at least seems like I have a little thermal headroom.

So, the things I’m looking to clarify:
-BIOS settings (don’t want to do RAM tuning other than the EXPO default)
-What kind of clock speeds should I be seeing for something like Cinebench or the 3DMark CPU test? (Last round of testing I did seemed low, like 4800MHz?)
-Basics of which tools to use for stability testing (I see a lot of info in the last few pages but those are all new to me)
-Should I stay away from Ryzen Master altogether and just do everything in BIOS? RM so nicely displays core parking and whatnot, but otherwise I am not attached to it

EDIT: I’ll add my current BIOS settings to the post soon.
 
Don't waste your time with the garbage from JayzTwoBraincells
Here is how to ACTUALLY fix this issue:
1) Disable Game Mode & Gamebar
2) In the bios, set CPPC Dynamic Preferred Cores to "Frequency"
3) Install Process Lasso
4) Within Process Lasso, select the game process, and only enable X3D cores for that process
No one want's to deal with Process Lasso, Let's add another application to our list of applications to bandaid a problem instead of going to the source.

I own a paid version of Process Lasso, too much hassle.
 
Don't waste your time with the garbage from JayzTwoBraincells
Here is how to ACTUALLY fix this issue:
1) Disable Game Mode & Gamebar
2) In the bios, set CPPC Dynamic Preferred Cores to "Frequency"
3) Install Process Lasso
4) Within Process Lasso, select the game process, and only enable X3D cores for that process
too much work when simply installing amd chipset drivers and letting gamebar auto update.

never had a problem, well except for latest Asus bios if you tune using amd overclocking menu instead of xtreme tweaker menu. Probably crappy new amd agesa breaking things while adding new cpu support. Doing so will force all tasks onto ccd0

i dont care about jayz crappy “fix” video either, typical english content creators choosing click baits. I find none english creators do better tuning content
 
No one want's to deal with Process Lasso, Let's add another application to our list of applications to bandaid a problem instead of going to the source.

I own a paid version of Process Lasso, too much hassle.
Even ignoring the hassle, this method fails too often to be a solution.
I used it for about a month when I purchased my 7950X3D and I’ve had multiple games ignore CPU Sets rules. Forcing Affinity broke some of these games or introduced insane stuttering. (I had Game Mode disabled)
 
Process Lasso may have its place in some situations; I had it on my TR 2950X for older productivity apps... I also briefly tried it on the 7950X3D - but uninstalled it because even when turned off 'completely', Process Lasso still had a process running at all times. Game-bar usually works fine for me unless I run some special bclk/eclk oc_clocks over a certain threshold. Besides, I can always just 'ctrl/alt/del' to 'task manager/details/affinity' if I want to limit an app to a specific thread(s), core(s) or CCD(s).
 
Process Lasso may have its place in some situations; I had it on my TR 2950X for older productivity apps... I also briefly tried it on the 7950X3D - but uninstalled it because even when turned off 'completely', Process Lasso still had a process running at all times. Game-bar usually works fine for me unless I run some special bclk/eclk oc_clocks over a certain threshold. Besides, I can always just 'ctrl/alt/del' to 'task manager/details/affinity' if I want to limit an app to a specific thread(s), core(s) or CCD(s).
I actually have a license for Process Lasso and bought it long before the dual CCD X3Ds.

The background process is most likely the core engine, the actual process applying changes. The GUI is just the GUI, that doesn’t need to be running.

I use Lasso to auto-set Efficiency mode on background programs like Afterburner etc.
Also IME the auto ProBalance is genuinely useful.
But yeah Lasso wasn’t good enough to replace Game Bar for me.
 
Even ignoring the hassle, this method fails too often to be a solution.
I used it for about a month when I purchased my 7950X3D and I’ve had multiple games ignore CPU Sets rules. Forcing Affinity broke some of these games or introduced insane stuttering. (I had Game Mode disabled)
Anti-Cheat is what usually makes Process Lasso not work correctly in game.
 
I use at the Beginning TestMem5 with the 1usmus Config. When you will get Errors, then you can check the Error List and fix them. After, 1usmus is running fine for 6 Hours. I run Testmem5 again with the PCB Destroyer Config for 6 Hours after that VST+VT3 in Y-cruncher for 8 Hours or OCCT Mem Test for 1 Hour.

I really highly recommend using the 1usmus Config when you Overclock the Ram. When there is an Error, so you can easily see what's wrong. Which Value you have to change...

First check if the Ram is really stable and do you were trying to Raise the LLC? I think 8 where the Best Value for Asus Boards.
Would you happen to know if there is some other utility that can do the kind of testing as well as Testmem5, for RAM stability?

Testmem5 has several versions from the "old" versions up to 12 by one author, and then 13.1 from a new author, but (as discussed in the thread about the utility's recent pages ) there are some concerns about the safety of the utility. Its quite possible that its perfectly fine and that a lot of the calls the make it suspicious to looking like malware come from the low level access needed to test the memory, but unfortunately there's very little documentation and less in English. Uploads to virustotal and hybridanalysis/falcon sandbox of the newest version show suspicion as well, The latest release 13.1 on Github claims to offer "source code" zips, but its both dated significantly before the release of the compiled executable (ie program itself is from July, "source" is from May) , but for the heck of it I went and downloaded the source zip to find no source at all or anything about the program inside! There's just a .md file that has the Github readme text, and a .png of the screenshot shown on Github - no source or documentation about the program. This may be an issue of language barrier and the program itself may not be containing malware, but especially after the incidents of malware being inserted into forks of projects on Github/Codeberg and other issues, I'd be much more comfortable using an alternative until there's more information available.

Since I was using VST+VT3 alongside all the rest of the tests to completion in YCruncher, I decided to just move right to the OCCT Memory test and see what happens. I think I used the default options except I changed the percentage of RAM being tested from 80% to 90%, the rest I left at Auto (I could also specify SSE or AVX2 etc). If it makes it through the default hour of OCCT Memory without errors, should I consider the current memory settings (- EXPO1 setting in BIOS, set the speed to 6000mhz or MT/s , and the major timings are 30-36-36-96 - basically EXPO speed advertised for the kit) stable?

Also unrelated to the above, but for the heck of it I checked the AIDA64 SHA3 test to see where it begins to error, all-core. It seems that -5 is fine, but -6 it reboots! So there's some core somewhere that won't tolerate it. I guess once I get the memory stability assured I can look at the possibility of trying ECLK? Otherwise, I'm not quite sure what to do. CoreCycler with YCruncher Kagari (all tests to completion per core, 2 threads per core) I've been finding can run in excess of 6 hours with several complete loops of the test, but occasionally at some really long period - 8-12hr etc it may throw an error on a given core whereas I back it down another 2-3 points or so and test again, but its getting harder and harder to detect any error there which should be a good thing, but not if it doesn't pass SHA3 sadly.

Edit:

Well, I'm not sure what's going on with the OCCT Memory test, but something wrong somewhere. The first time I ran it, it ran for an hour without issue. After that I was wondering if I should run it again and this time force it to run AVX2 just so that it was doing something heavier than SSE - this time, it started erroring nearly immediately! I thought maybe this would be helped by going back to the BIOS and changing from EXPO1 settings to EXPO2 (which seemed to specify certain sub-timings instead of leaving them at Auto). Came back and ran it again, instant error on AVX2, and even BSOD'd when I ran SSE! I figured this was due to the EXPO2 profile stipulating tighter timings than what could have been in EXPO1, which as I said left most if not all sub-timings on Auto. So I go and change it back to EXPO1, boot back in and start up OCCT Memory test again on Auto - this time, it begins to error out! Tried on SSE, AVX2, and Auto and they all begin to error near immediately as soon as all the cores are loaded up and working (I can see workload on Ryzen Master and the test is using 32 threads etc)! I also tried going to AIDA64's Stability Test and selected just Memory, and even that errors near immediately! I'm going to load up CoreCycler again with Kagari to test and see if it starts throwing errors when it gets to the more memory heavy tests regardless of the core or if it acts like it did in the past where it would run for hours without an error of any sort;

So clearly there's some sort of memory instability, but the question is what is causing it and was it always there or did something just recently make it worse? If so, why? In any case the idea that its not stable at EXPO1 is really frustrating , if that is truly the case. It could have been undermining my entire process with the -CO ! What should I look to do to correct the issue or is it possible this whole kit was basically a dud?

Edit2: I just realized that the particular Gskill kit (64GB 6000mhz 30-36-36-96 1.4v) I have is not on the mobo (Asus Crosshair X670E Extreme) QVL, but the older 6000mhz CL30-40-40-96 1.4v is. I wonder is this could be a factor? In addition, I am wondering if there is any impact by using the integrated GPU? I'm doing so currenty because I know it uses some RAM, so I'm just trying to think of anything that could be leading to instability, particularly of the RAM at the moment.

That is not how you fix the problem.
What you described is how you use an external tool to manually do for each game the same thing that a correct installation of the AMD drivers would do automatically for all games. You are just hiding the problem and adding extra steps.
I agree, manual core pinning with Process Lasso and similar should not be required in order to get things to work properly. Despite hearing that in general users seem to find 7950X3D performance in Windows working more or less as it should after all this time thanks to drivers+gamebar optimizations (which is undoubtably a good thing vs the early days post launch)etc.. it has always rubbed me the wrong way that AMD did not have a more comprehensive plan from the start. The 7950X3D is a top of the line halo CPU that offers both the benefit of extra cache and high frequencies as well as the most cores on the platform at its launch; one would think AMD would want all of this performance to "just work", so it really boggled my mind especially when relying so much on 3rd party tools like Windows' Xbox Game Bar in such a simplistic "If game, then cache core preference" way!

Knowing that AMD was not going to add an on die governor of any sort the way Intel did to balance workloads as it saw fit, I hoped they would use their past successful approaches with free/libre and open source software (F/LOSS) and, after doing what they could on the AGESA and board firmware side, they'd create some sort of FOSS driver package + a "profiler" that would have monitoring and heuristics plus both provided default and user-added rules. Not unlike some of the SLI/CrossfireX profiles in the past, these could be both specific to a certain game or other software, or more general in nature; a wider array of features like Process Lasso could be included as well. Instead of relying on GameBar to make the decision (which is a very Windows centric solution of course) , manual core pinning, or using a substitute 3rd party utility like Process Lasso , it could have been some platform independent open source utility, plus driver packages for supported OSes.

For any other who use Linux, how does the 7950X3D fare these days? What drivers/software is necessary/optimal? I've heard conflicting opinions, some saying that the Linux scheduler is a lot smarter about the workloads from the start , others claim the opposite and they have to do a lot of manual core pinning for certain applications. Some say there are utilities/drivers that help, others that there are few or not necessary outside of manual core assignment commands. What has been the experience of those Linux users here?
 
Process Lasso may have its place in some situations; I had it on my TR 2950X for older productivity apps... I also briefly tried it on the 7950X3D - but uninstalled it because even when turned off 'completely', Process Lasso still had a process running at all times. Game-bar usually works fine for me unless I run some special bclk/eclk oc_clocks over a certain threshold. Besides, I can always just 'ctrl/alt/del' to 'task manager/details/affinity' if I want to limit an app to a specific thread(s), core(s) or CCD(s).
For me what solves it is the power plan for double x3d that someone here once shared
 
Don't waste your time with the garbage from JayzTwoBraincells
Here is how to ACTUALLY fix this issue:
1) Disable Game Mode & Gamebar
2) In the bios, set CPPC Dynamic Preferred Cores to "Frequency"
3) Install Process Lasso
4) Within Process Lasso, select the game process, and only enable X3D cores for that process
No, this is how you do it properly the intended AMD way and cores park properly when they should.
I agree though, don't listen to Jay.

That is not how you fix the problem.
What you described is how you use an external tool to manually do for each game the same thing that a correct installation of the AMD drivers would do automatically for all games. You are just hiding the problem and adding extra steps.
Preach!
 
Ok, so... Jay is crap, Lasso is trash... what a 7950X3D owner is supposed to do??

Baio
 
Ok, so... Jay is crap, Lasso is trash... what a 7950X3D owner is supposed to do??
Imho just install the AMD chipset drivers and use the Balanced power profile. If they don't work in allocating videogames on the correct CCD, then you can give the JayZ fix a try. This is the most automatic and reliable way, and how it is intended to work.
Having to declare a program as a videogame using the gamebar is just an edge case imho, most games will be automatically recognised because, on Windows, games executables already have to declare themselves as videogames for various resources allocations.
 
I've never had any issues with my 7950x3D and core parking/using CCD0 in games.

My BIOS settings is AUTO and Windows balanced profile.

Only 1 old game ended up using frequency cores in my testing so far.

I bet a clean install of Windows would fix most people's issues if they've been running the same install since launch of the chips.
 
So, just to clarify how all this AMD stuff is intended to work on a 7950X3D, if anyone cares, I will line up here the main steps:

  1. Windows power profiles can have sub-profiles. These just list changes to their parent profile, instead of having to redefine everything from zero.
  2. In the normal Windows OS there is a specific power sub-profile that is automatically activated when the user is playing a videogame, this is called GameMode, and the Windows documentation says about it: "GameMode profile is enabled when the 'Game Mode' setting toggle is turned on and the user is playing a game. You can use this profile to finetune processor settings for your devices with Game Mode."
  3. On Windows, any executable can declare itself as a videogame by using the AvSetMmThreadCharacteristics() api with the "Games" string identifier. This automatically sets certain particular resources allocations and priorities as defined in the
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games registry key and also allows the OS to recognise that application as a game.
  4. If the application doesn't do that using that api, but it is very rare in mainstream videogames, then you can use the GameBar to manually declare it as a videogame to obtain the same effect.
  5. The AMD chipset drivers installer, when it detects a dual-CCD X3D CPU, installs an "AMD PPM Provisioning Profile" driver (that you can also see in the device manager, under the System item) that changes certain settings in the GameMode power profile at every reboot. You can list the changed values in the GameMode power profile by running from a command prompt:
    powercfg /queryprofile scheme_balanced profile_gamemode
  6. These changed settings, configured only for the Balanced/GameMode power profile, mainly state that when a game is running (and this GameMode power profile is active) half of the cores should be parked and the foreground application threads should be alllocated on the most performant cores in order of CPPC.
  7. In the normal Windows OS, once an application is recognised as a game, switching to it in foreground automatically activates this GameMode power profile. And when the application is sent back to background then the original base power profile configured in the system is activated.
  8. In the meantime the service named "AMD 3D V-Cache Performance Optimizer Service" tracks in background any change to the current power profile using the PowerRegisterForEffectivePowerModeNotifications() api, and when it intercepts the activation of this GameMode power profile it communicates directly with some code in the AGESA Firmware in the BIOS that inverts the CPPC order of the cores (placing the X3D cores first) and then notifies the OS of this change by using the acpi.sys driver
  9. Now the OS will preferentially place the current foreground application threads on the 3D VCache cores (because the GameMode power profile settings have been changed to enforce the CPPC order) and will park the other cores (because the GameMode power profile settings declared that the remaining half of the cores should be parked when possible).

So, there are a few things that are expected for a videogame to be allocated on the correct X3D cores:
  • The program is recognised as a game, either because it uses that api, or by setting it as a game using the GameBar
  • The Balanced power profile is currently active
  • The GameMode is enabled in the Windows Settings->Gaming->Game Mode
  • The AMD PPM Provisioning Profile is installed and visible in the Device Manager
  • The "AMD 3D V-Cache Performance Optimizer Service" is installed and running
 
So, just to clarify how all this AMD stuff is intended to work on a 7950X3D, if anyone cares, I will line up here the main steps:

  1. Windows power profiles can have sub-profiles. These just list changes to their parent profile, instead of having to redefine everything from zero.
  2. In the normal Windows OS there is a specific power sub-profile that is automatically activated when the user is playing a videogame, this is called GameMode, and the Windows documentation says about it: "GameMode profile is enabled when the 'Game Mode' setting toggle is turned on and the user is playing a game. You can use this profile to finetune processor settings for your devices with Game Mode."
  3. On Windows, any executable can declare itself as a videogame by using the AvSetMmThreadCharacteristics() api with the "Games" string identifier. This automatically sets certain particular resources allocations and priorities as defined in the
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games registry key and also allows the OS to recognise that application as a game.
  4. If the application doesn't do that using that api, but it is very rare in mainstream videogames, then you can use the GameBar to manually declare it as a videogame to obtain the same effect.
  5. The AMD chipset drivers installer, when it detects a dual-CCD X3D CPU, installs an "AMD PPM Provisioning Profile" driver (that you can also see in the device manager, under the System item) that changes certain settings in the GameMode power profile at every reboot. You can list the changed values in the GameMode power profile by running from a command prompt:
    powercfg /queryprofile scheme_balanced profile_gamemode
  6. These changed settings, configured only for the Balanced/GameMode power profile, mainly state that when a game is running (and this GameMode power profile is active) half of the cores should be parked and the foreground application threads should be alllocated on the most performant cores in order of CPPC.
  7. In the normal Windows OS, once an application is recognised as a game, switching to it in foreground automatically activates this GameMode power profile. And when the application is sent back to background then the original base power profile configured in the system is activated.
  8. In the meantime the service named "AMD 3D V-Cache Performance Optimizer Service" tracks in background any change to the current power profile using the PowerRegisterForEffectivePowerModeNotifications() api, and when it intercepts the activation of this GameMode power profile it communicates directly with some code in the AGESA Firmware in the BIOS that inverts the CPPC order of the cores (placing the X3D cores first) and then notifies the OS of this change by using the acpi.sys driver
  9. Now the OS will preferentially place the current foreground application threads on the 3D VCache cores (because the GameMode power profile settings have been changed to enforce the CPPC order) and will park the other cores (because the GameMode power profile settings declared that the remaining half of the cores should be parked when possible).

So, there are a few things that are expected for a videogame to be allocated on the correct X3D cores:
  • The program is recognised as a game, either because it uses that api, or by setting it as a game using the GameBar
  • The Balanced power profile is currently active
  • The GameMode is enabled in the Windows Settings->Gaming->Game Mode
  • The AMD PPM Provisioning Profile is installed and visible in the Device Manager
  • The "AMD 3D V-Cache Performance Optimizer Service" is installed and running
Regarding 4), it is not rare and not an edge case as you mentioned in your previous post. Most new games I've played since getting the 7950DX3D at launch have not been assigned to the correct (cache) CCD without either first updating game bar or manually setting it as a game via game bar. Even then, it has been a week or more after game launch before the game bar whitelist gets updated. You know it has been updated because the option to check this is a game disappears once updated from a game that were previously able to check 'this is a game'.
 
Gamers Nexus just posted a video discussing the 7900x3d, 7950x3d, 9900x, and 9950x setup to ensure the right CCDs are being used. I have also referenced techpowerup documentation in the past (which lines up with Gamers Nexus steps), and have always had core parking working correctly without the need for process lasso (which I also own a license, but got tired of managing another piece of software).

 

Attachments

7,841 - 7,860 of 9,076 Posts