So I want to start off by saying I'm a gamer so I'm planning to apply what I learn from this thread to games. Now the issue stems from my recently bought CPU, my ryzen 1800x, not the greatest for gaming but it was cheaper than any K skew i7 at the time. But certain games I play have an issue with using 100% utilization on what I assume to be a logical core instead of a physical one. Now this assumption is based on two things that I tested and one game in particular that faces this issue. In Farcry 4, the game utilizes 3 cores more than the rest and pegs one at almost 100% all the time when running. I assume the first 8 cores are physical and the last 8 are logical seeing as most programs will tend to cap out the first 8 cores instead of the last 8 and I remember reading somewhere that most programs tend to run on physical cores before allocating resources to other cores. In the case of farcry 4 though, the core that gets capped at 100% is always, at least every time I've monitored it, core #16 and the performance in game is terrible. Not unplayable but terrible given that I have a 1080 ti. I'm talking 60 FPS with regular dips to 30-40 even when standing still with shadow, AA, hairworks all on lowest settings and at 1440p. But when I go into bios and disable SMT so that the CPU runs only on physical cores I get FPS of 90+ and in certain places 140+ with a low of only 69. Now I know from reading tech journals and stuff that logical cores tend to be weaker and less efficient than physical ones, which is why I assumed that the game was capping out on a logical core. But I can't say for sure that core # 16 which farcry 4 gets capped by is in fact a logical core. With SMT disabled it displays cores 1 to 8 in both MSI afterburner and in taskmanage and CPUz but I don't know if it's because those are they physical cores or if the programs simply counts the number of cores and not their placement on the socket for example I heard that intel's physical and logical cores are in pairs where every other number is from zero is a physical core (0,2,4,6, etc.) and every other core from 1 is logical (1,3,5, etc.) but I don't know if when hyper threading is disabled that if MSI etc would still count 1,2,3,4,5 cores or if it would only count physical cores like 0,2,4,6. Additionally I don't know how cores are arranged for ryzen. SO here comes the question, HOW do I tell which cores are physical and logical because I want to be able to set affinity for certain games or programs such as farcry 4 to run only on physical cores without disabling SMT. Before you say it, I'm not a programmer or anything so I need something simple and pre existing. Like a windows function or something. Or if you know the layout of how Ryzen cores are presented on the socket like how I described above how intel's cores are organized I can hopefully use that info to. It would save me a ton of trouble and time if I didn't have to spend time testing a bunch of core affinities.