• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Cyberpunk 2077 Does Not Leverage SMT on AMD Ryzen, Lower Core-Count Variants take a Bigger Hit, Proof Included

W1zzard

Administrator
Staff member
Joined
May 14, 2004
Messages
27,920 (3.71/day)
Processor Ryzen 7 5700X
Memory 48 GB
Video Card(s) RTX 4080
Storage 2x HDD RAID 1, 3x M.2 NVMe
Display(s) 30" 2560x1600 + 19" 1280x1024
Software Windows 10 64-bit
Whats the chance this was intentional and meant for console versions ?
Zero, there's no need to detect CPU vendor or core count on consoles, there is just one hardware configuration
 
Last edited:
Joined
Jul 16, 2014
Messages
8,215 (2.16/day)
Location
SE Michigan
System Name Dumbass
Processor AMD Ryzen 7800X3D
Motherboard ASUS TUF gaming B650
Cooling Artic Liquid Freezer 2 - 420mm
Memory G.Skill Sniper 32gb DDR5 6000
Video Card(s) GreenTeam 4070 ti super 16gb
Storage Samsung EVO 500gb & 1Tb, 2tb HDD, 500gb WD Black
Display(s) 1x Nixeus NX_EDG27, 2x Dell S2440L (16:9)
Case Phanteks Enthoo Primo w/8 140mm SP Fans
Audio Device(s) onboard (realtek?) - SPKRS:Logitech Z623 200w 2.1
Power Supply Corsair HX1000i
Mouse Steeseries Esports Wireless
Keyboard Corsair K100
Software windows 10 H
Benchmark Scores https://i.imgur.com/aoz3vWY.jpg?2
Zero, there's no need to detect CPU vendor or core count on consoles, there is just one hardware configuration
Wanted to make that clear, thanks.
 
Last edited by a moderator:
Joined
Jun 10, 2014
Messages
2,987 (0.78/day)
Processor AMD Ryzen 9 5900X ||| Intel Core i7-3930K
Motherboard ASUS ProArt B550-CREATOR ||| Asus P9X79 WS
Cooling Noctua NH-U14S ||| Be Quiet Pure Rock
Memory Crucial 2 x 16 GB 3200 MHz ||| Corsair 8 x 8 GB 1333 MHz
Video Card(s) MSI GTX 1060 3GB ||| MSI GTX 680 4GB
Storage Samsung 970 PRO 512 GB + 1 TB ||| Intel 545s 512 GB + 256 GB
Display(s) Asus ROG Swift PG278QR 27" ||| Eizo EV2416W 24"
Case Fractal Design Define 7 XL x 2
Audio Device(s) Cambridge Audio DacMagic Plus
Power Supply Seasonic Focus PX-850 x 2
Mouse Razer Abyssus
Keyboard CM Storm QuickFire XT
Software Ubuntu
Cyberpunk 2077 does not leverage simultaneous multi-threading (SMT) on AMD Ryzen processors, according to multiple technical reviews of the game that tested it with various processors. The game does leverage the analogous HyperThreading feature on rival Intel Core processors.

According to them, Cyberpunk 2077 reuses AMD GPUOpen pseudo-code to optimize its scheduler for the processor. It was originally designed to let an application use more threads when an AMD "Bulldozer" processor is used; but has the opposite effect when a non-Bulldozer AMD processor is detected. The game looks for "AuthenticAMD" processor brand, and "family = 0x15" (AMD K15 or Bulldozer/derivative), and only then engages "logical processors" (as identified by Windows OS scheduler as part of its Bulldozer-optimization). When any other, including a newer AMD processor is detected, the code makes the game scheduler only send traffic to the physical cores, and not to their logical processors.
This problem is really just about detecting the correct thread count, not about leaveraging SMT. Even if you spin up 8 threads on a 8 core/16 thread CPU, you don't control whether they run on separate cores or not, scheduling is up to the OS kernel, not the game.

I don't think this qualifies as optimization at all, it's just hardware detection. Software isn't "optimized" for SMT.

There were some comments of Intel's Compiler being involved in these shenanigans, again.
Can't help but think they're onto something.
Of course, those conspiracy theories never dies.
Rest assured those theories are nonsense, and this problem have nothing to do with compilers.

How in the earth this AAA game has still not been updated for the new ryzen cpus?
This is certainly not excusable for a studio of this size and a game with this kind of budget.
But it's still very understandable how it happened; this is not a bug that is glaringly obvious to a normal game tester, and the core development team may only have a very limited set of hardware they test continously throughout development.

the code says something like:
if AuthenticAMD than:kookoo: then use this
if (Bulldozer than Threadcount=logical)
if not (than threadcount=corecount)
yeah it´s from 2017 when Win10 didn´t have its threading optimizations, so eventually it´s very dull to make anything like this, every game should get all logical threads, in some very old code or rare cornercases it can be manually fixed with affinity in taskmanager or SMT turned off, but in general that part of the 2017 code is idiotic now.
Should only take a couple of minutes/seconds to fix.
This is about reading the CPUID instruction to detect CPU features, it has nothing to do with Windows.
The same instruction is used to detect CPU features on all platforms, inlcuding the cpuinfo tool on Linux.
Unfortunately, some extensions to CPUID is not standardized across CPU makers (and even microarchitectures), so it may require some extra interpretation to detect the correct core and thread count on various AMD, Intel and VIA CPUs.
But nevertheless, this "problem" is well known and only takes a few lines of code to detect correctly (at least for known CPUs so far, I can't guarantee for future CPUs).

This still makes little sense to me, most threading frameworks used everywhere typically only expose logical threads with no real way of targeting cores and the reason for that is very simple, trying to take SMT into the way equation is a terrible idea with mostly negative results. The OS will typically prioritize the distribution of threads across cores first anyway…
You are mostly right.
The bug here is only about detecting the correct amount of available threads, not whether a specific thread is using SMT or not, that's normally not controlled by the application. So the article claiming SMT is not leveraged is technically incorrect.

AMDs technical dev support is rather like a good looking single guy at a pub perving at all the hotties thinking damn I could smash that 9 times on a sunday then going home to jerk off in a sock or worse taking the drunk fattatoe in the corner home and shashin that!
Didn't AMD boast about having hundreds of engineers dedicated to this?
At least this bug comes down to reading a single instruction, not something that requires any major effort from anyone.

-----

One additional thought;
If this is hard, just wait until Alder Lake with different cores arrives. There may be a lot of software relying on the CPUID instruction to fetch capabilities, but this instruction returns the features of the core, not the whole CPU, which can get messy if different cores have different ISA features.
 
Last edited:
Joined
Jan 31, 2010
Messages
5,553 (1.02/day)
Location
Gougeland (NZ)
System Name Cumquat 2021
Processor AMD RyZen R7 7800X3D
Motherboard Asus Strix X670E - E Gaming WIFI
Cooling Deep Cool LT720 + CM MasterGel Pro TP + Lian Li Uni Fan V2
Memory 32GB GSkill Trident Z5 Neo 6000
Video Card(s) Sapphire Nitro+ OC RX6800 16GB DDR6 2270Cclk / 2010Mclk
Storage 1x Adata SX8200PRO NVMe 1TB gen3 x4 1X Samsung 980 Pro NVMe Gen 4 x4 1TB, 12TB of HDD Storage
Display(s) AOC 24G2 IPS 144Hz FreeSync Premium 1920x1080p
Case Lian Li O11D XL ROG edition
Audio Device(s) RX6800 via HDMI + Pioneer VSX-531 amp Technics 100W 5.1 Speaker set
Power Supply EVGA 1000W G5 Gold
Mouse Logitech G502 Proteus Core Wired
Keyboard Logitech G915 Wireless
Software Windows 11 X64 PRO (build 23H2)
Benchmark Scores it sucks even more less now ;)
Didn't AMD boast about having hundreds of engineers dedicated to this?
At least this bug comes down to reading a single instruction, not something that requires any major effort from anyone.

yeah they did but ask most dev how helpful are they and you'll most likely get the same response "What AMD engineers" in this particular case nVidia does a better job at actually helping devs and AMD need to be doing the same thing
 
Joined
Apr 6, 2019
Messages
162 (0.08/day)
So, I wonder how many of you actually played the game before dropping your pants and dumping your opinion on every outlet you have available... (hint: my guess is very few)

Onto some actual discussion on the topic:

I made the modification to my exe and here is a sample scene. CPU is a 2950x (16c/32t) and GPU is a 3080, running 3440*1440.

Original:, CPU is at 50% utilisation, GPU is at 65-76%. Result = 42FPS
Modded: CPU is at 66% utilisation, GPU is at 51-62%. Result = 33FPS.

How many people tested this on their own rigs? Might be worth posting your specs and A/B comparisons as CPU utilisation != better experience on my end.
 
D

Deleted member 24505

Guest
I have it and have played it. From reviews etc was expecting it to be pretty easy to run, it's not. I have a 1440/75 monitor and to run it at a playable frame rate I am at medium at the monitors resolution. If I run it at 1080 it is fine all high. I have a 5700xt red devil btw.
 
Joined
Mar 24, 2011
Messages
2,356 (0.47/day)
Location
VT
Processor Intel i7-10700k
Motherboard Gigabyte Aurorus Ultra z490
Cooling Corsair H100i RGB
Memory 32GB (4x8GB) Corsair Vengeance DDR4-3200MHz
Video Card(s) MSI Gaming Trio X 3070 LHR
Display(s) ASUS MG278Q / AOC G2590FX
Case Corsair X4000 iCue
Audio Device(s) Onboard
Power Supply Corsair RM650x 650W Fully Modular
Software Windows 10
I have it and have played it. From reviews etc was expecting it to be pretty easy to run, it's not. I have a 1440/75 monitor and to run it at a playable frame rate I am at medium at the monitors resolution. If I run it at 1080 it is fine all high. I have a 5700xt red devil btw.
In my experience, AMD cards are on the struggle bus (really any non-RTX card). Without DLSS, we have a harder time running the game at 1440p and higher. I would say check out Digital Foundries optimal settings video. I can run it at 1440p high-ish settings and get a comfortable 45-60 fps which is playable just fine (I haven't tried the DF settings yet).
 
D

Deleted member 24505

Guest
In my experience, AMD cards are on the struggle bus (really any non-RTX card). Without DLSS, we have a harder time running the game at 1440p and higher. I would say check out Digital Foundries optimal settings video. I can run it at 1440p high-ish settings and get a comfortable 45-60 fps which is playable just fine (I haven't tried the DF settings yet).

Tbh at the moment i am not too worried. It will probably get better with a few more patches. I will play it as it is for now until then, or i manage to jump on the RTX bus. Shame really Nvidia has kinda forced RTX on the gaming industry as it means more games will need it to run playably, and until AMD has something comparable their cards will be always on the back foot.
 
Joined
May 12, 2006
Messages
1,576 (0.23/day)
Location
The Gulag Casino
System Name ROG 7900X3d By purecain
Processor AMD Ryzen 7 7900X3D
Motherboard ASUS Crosshair X670E Hero
Cooling Noctua NH U12A
Memory 64Gb G.Skill Trident Z5 neo RGB 6400@6000mhz@1.41v
Video Card(s) Aorus RTX4090 Extreme Waterforce
Storage 990Pro2Tb-1TbSamsung Evo M.2/ 2TbSamsung QVO/ 1TbSamsung Evo780/ 120gbKingston Now
Display(s) LG 65UN85006LA 65" Smart 4K Ultra HD HDR LED TV
Case Thermaltake CoreX71 Limited Edition Etched Tempered Glass Door
Audio Device(s) On board/NIcomplete audio 6
Power Supply Seasonic FOCUS 1000w 80+
Mouse M65 RGB Elite
Keyboard K95 RGB Platinum
Software Windows11pro
Benchmark Scores [url=https://valid.x86.fr/gtle1y][img]https://valid.x86.fr/cache/banner/gtle1y-6.png[/img][/url]
Ive tried the hex fix and seem to be able to produce a less laggy mess now for my stream. :toast:
 
Joined
May 12, 2006
Messages
1,576 (0.23/day)
Location
The Gulag Casino
System Name ROG 7900X3d By purecain
Processor AMD Ryzen 7 7900X3D
Motherboard ASUS Crosshair X670E Hero
Cooling Noctua NH U12A
Memory 64Gb G.Skill Trident Z5 neo RGB 6400@6000mhz@1.41v
Video Card(s) Aorus RTX4090 Extreme Waterforce
Storage 990Pro2Tb-1TbSamsung Evo M.2/ 2TbSamsung QVO/ 1TbSamsung Evo780/ 120gbKingston Now
Display(s) LG 65UN85006LA 65" Smart 4K Ultra HD HDR LED TV
Case Thermaltake CoreX71 Limited Edition Etched Tempered Glass Door
Audio Device(s) On board/NIcomplete audio 6
Power Supply Seasonic FOCUS 1000w 80+
Mouse M65 RGB Elite
Keyboard K95 RGB Platinum
Software Windows11pro
Benchmark Scores [url=https://valid.x86.fr/gtle1y][img]https://valid.x86.fr/cache/banner/gtle1y-6.png[/img][/url]
Top