Jump to content

Intel or AMD


Recommended Posts

That's exactly what multithreading means. Hyperthreading is something different entirely as other users have explained.

 

Hyperthreading is just Intel's trademark name for CPU multithreading. AMD calls theirs simultaneous multithreading (SMT) which I don't believe is trademarked.

 

If you are using the term multithreading in the software sense only, sure DCS is software multithreaded. But we already knew that because DCS uses more than one core.

 

The reason why you are seeing no FPS difference in DCS by using hyperthreading is that the core thread singlehandedly saturates one CPU and that is your FPS cap. All the other threads use so little CPU that you can probably fit them into another core. If you were on a single core CPU with hyperthreading, you would see a difference.

 

If you have more than one physical core, hyperthreading does nothing for DCS because the load is spread too unevenly over its threads.

 

I'm pretty sure DCS would just crash or not load if you actually tried to run it on a single core CPU regardless of whether HT was enabled or not. DCS uses 2 cores.

 

MINIMUM SYSTEM REQUIREMENTS (LOW GRAPHICS SETTINGS):

OS 64-bit Windows 7/8/10; DirectX11; CPU: Intel Core i3 at 2.8 GHz or AMD FX; RAM: 8 GB (16 GB for heavy missions); Free hard disk space: 60 GB; Discrete video card NVIDIA GeForce GTX 760 / AMD R9 280X or better; requires internet activation.


Edited by Sn8ke_iis
added system requirements

 

 

Link to comment
Share on other sites

Youtube's algorithm popped up this video on my feed last night. It's from last July so there have been a lot of BIOS updates since then and focuses only on the 3900X and the 9900K.

 

His results were much closer for the games he tested. One that struck me in particular was Counterstrike:GO where the 3900X did beat the 9900K in 1080p outside the typical variance and margin of error.

 


Edited by Sn8ke_iis
typo

 

 

Link to comment
Share on other sites

oh my god this shit is confusing. All we really need to know is Intel and AMD both make a lot of great processors and at the high end they are very close in performance so you can't really go wrong with either.

Hyper-threading is great, but i think that physical cores are better than logical cores. My point is,,, your cpu will be obsolete before that Vulcan come in life in DCS. Speed is the key.

 

In a Hyper-threading situation, when 2 thread share the same core, and one of the threads is heavy, this thread will be slow down to work on the other one who already wait.


Edited by Demon_

Attache ta tuque avec d'la broche.

Link to comment
Share on other sites

If you are using the term multithreading in the software sense only, sure DCS is software multithreaded. But we already knew that because DCS uses more than one core.

 

 

That is how that term is usually used. I've been a programmer for 7 years now and nobody in the industry uses the terms like you do.

 

 

I'm pretty sure DCS would just crash or not load if you actually tried to run it on a single core CPU regardless of whether HT was enabled or not. DCS uses 2 cores.

 

That is a misconception. Just because an application is mutlithreaded doesn't mean that it needs a minimum number of cores to run. The operating system will manage the scheduling of threads even if there's only one core. You can test this by assigning all threads of DCS to one core. Performance will be abysmal but it's unlikely it would crash.

 

 

 

MINIMUM SYSTEM REQUIREMENTS (LOW GRAPHICS SETTINGS):

OS 64-bit Windows 7/8/10; DirectX11; CPU: Intel Core i3 at 2.8 GHz or AMD FX; RAM: 8 GB (16 GB for heavy missions); Free hard disk space: 60 GB; Discrete video card NVIDIA GeForce GTX 760 / AMD R9 280X or better; requires internet activation.

 

 

In case of the CPU, the requirement is for performance reasons. An application won't crash just because it doesn't have a second CPU core to run on (unless it is very poorly designed, which is not the case for DCS).

Good, fast, cheap. Choose any two.

Come let's eat grandpa!

Use punctuation, save lives!

Link to comment
Share on other sites

That is how that term is usually used. I've been a programmer for 7 years now and nobody in the industry uses the terms like you do...

 

DCS does not use CPU multi-threading. That is what Intel and AMD call it as well as the definitions I've linked to. The OP's question was in relation to "Intel or AMD". I correctly stated that Intel's 9700 and DCS do not use multithreading. This is why there is no advantage to buying a 9900K or a 12 core 3900X just for DCS unless you just have to have the the highest single core IPC. This could potentially get you a few frames in VR, but given that for TrackIR you have to lock to 60 or 120 fps to keep the frametime smooth I'm not sure what it would get you other than being able to turn up some settings like draw distance or shadows.

 

We already knew DCS has more than one thread. No one in this forum thread has said otherwise. The prefix multi simply means more than one. So by that rationale this forum is multithreaded too. :D

 

I tried running DCS on one core. Windows boots but painfully slowly, and DCS does run but you wouldn't want to play it. It's a slide show on 1080p low.

 

This is Intel's product description of the 9700K:

 

https://www.intel.com/content/www/us/en/products/processors/core/i7-processors/i7-9700k.html

 

In the description it says that it is 8 cores and 8 threads. How can a CPU have a thread unless they are referring to hardware threads?

 

This is from the wiki definition for SMT:

 

"Simultaneous multithreading is a technique for improving the overall efficiency of superscalar CPUs with hardware multithreading."

 

https://www.tomshardware.com/reviews/simultaneous-multithreading-definition,5762.html

 

"Simultaneous multithreading, abbreviated as SMT, is the process of a CPU splitting each of its physical cores into virtual cores, which are known as threads. This is done in order to increase performance and allow each core to run two instruction streams at once.

 

Intel branded this process as hyper-threading, but hyper-threading is the same thing as simultaneous multithreading. For example, AMD CPUs with four cores use simultaneous multithreading to provide eight threads, and most Intel CPUs with two cores use hyper-threading to provide four threads."

 

So obviously I am not the only one who uses that term. I used to work in IT myself but I don't think anybody really cares.

 

It's common in benchmarking videos to refer to cores and threads for example in the case of the 9900K as 8C/16T. That is the established convention so that's why I'm using the term in that sense. If you guys want to use the term exclusively in the software sense that's fine.


Edited by Sn8ke_iis
added definition link

 

 

Link to comment
Share on other sites

In the description it says that it is 8 cores and 8 threads. How can a CPU have a thread unless they are referring to hardware threads?

 

 

The CPU doesn't "have" a thread, the number simply states how many it can process quasi simultaneously.

Good, fast, cheap. Choose any two.

Come let's eat grandpa!

Use punctuation, save lives!

Link to comment
Share on other sites

From my understanding, the big difference is that real cores, like 9700k, each have their own L1+L2 Cache whereas 2 threads via SMT/HT share the Cache along with only 1 can work while the other has to wait, maybe due to that Cache thing. But I might be wrong, I do not consider myself an expert when it comes to the guts and blood of a CPU and how they work.

 

When I look at a PC's interior I always wonder how this all works, HAHAHA. Thousands of solder spots, millions and billions of Transistors and only ONE has to go haywire and the whole show stops...plus the stupid software that bugs.

 

IRL, with TiR and 60 locked fps, it becomes questionable if you need the best IPC and highest clocks. A 8700k, 8600k, R5-3600 will all get you there, rather get 32GB and2 SSDs over 1 9900k, 16GB and 1 512GB SSD in my personal view.

 

BTW, got an Aorus Ultra + 3800X + 5700XT inbound for a friend, we will test DCS a little bit, sadly only 16GB 3200-14-14-14-34 made for AMD/Ballistix but I will get a clue what I was talking about the last few months, LoL.

Gigabyte Aorus X570S Master - Ryzen 5900X - Gskill 64GB 3200/CL14@3600/CL14 - Asus 1080ti EK-waterblock - 4x Samsung 980Pro 1TB - 1x Samsung 870 Evo 1TB - 1x SanDisc 120GB SSD - Heatkiller IV - MoRa3-360LT@9x120mm Noctua F12 - Corsair AXi-1200 - TiR5-Pro - Warthog Hotas - Saitek Combat Pedals - Asus PG278Q 27" QHD Gsync 144Hz - Corsair K70 RGB Pro - Win11 Pro/Linux - Phanteks Evolv-X 

Link to comment
Share on other sites

This guy explains it really well for those that are confused by all this. He uses a simple program that calculates prime numbers on a single core Raspberry Pi and a 4 core PC. It shows why a monitoring program like Afterburner will show percentage utilization bouncing around from core to core and higher single core utilization while still showing lower utilization for the whole CPU.

 

 

And this is a great explanation of Hyperthreading (hardware multithreading) which DCS does not do currently and why a 9700K will get you the same approximate performance as a 9900K in DCS.

 

 

 

Link to comment
Share on other sites

And this is a great explanation of Hyperthreading (hardware multithreading) which DCS does not do currently

 

 

Applications don't "do Hyperthreading". On application level, you don't care about that at all. It's all abstract to you. If Hyperthreading is enabled, the operating system sees a higher number of cores available, everything else is handled by the much lower level drivers/firmware.

Good, fast, cheap. Choose any two.

Come let's eat grandpa!

Use punctuation, save lives!

Link to comment
Share on other sites

Applications don't "do Hyperthreading". On application level, you don't care about that at all. It's all abstract to you. If Hyperthreading is enabled, the operating system sees a higher number of cores available, everything else is handled by the much lower level drivers/firmware.

 

The OS sees a higher number of logical cores, not physical cores. There's nothing abstract about it, it's very straightforward. If you buy a CPU with Hyperthreading, DCS won't utilize the logical cores effectively as it's not currently implemented in DCS. Hopefully with the Vulkan API it will. But they have to convert 4.3 million lines of code so it's probably going to take awhile.

 

You can easily test this yourself by disabling and enabling HT in BIOS and you will see no significant performance difference. The developers can confirm this as well.

 

It's also likely you can overclock to a higher stable clockspeed with less voltage with hyperthreading disabled. But there's variance in clockspeeds and voltage from chip to chip.

 

 

Link to comment
Share on other sites

Abstract in the sense of you don't have to worry about it when you write a program on application level. Not abstract in the sense of complicated.

 

You can easily test this yourself by disabling and enabling HT in BIOS and you will see no significant performance difference. The developers can confirm this as well.

 

I've already explained the reason for this in a previous post of mine. It has nothing to do with DCS "not supporting hyperthreading" and everything with how DCS spreads its computational load over its threads. If the devs manage to spread the bulk of the CPU load evenly over many threads, you will most likely see a minor improvement from hyperthreading. You would see the same effect if it was possible to remove or add physical cores to your system. As long as you don't force additional threads into the CPU core that the main DCS thread runs in, removing physical OR logical cores has the same impact, namely none whatsoever.

 

 

But please, do tell me more about how to write multithreaded applications. /sarcasm


Edited by sobek

Good, fast, cheap. Choose any two.

Come let's eat grandpa!

Use punctuation, save lives!

Link to comment
Share on other sites

Abstract in the sense of you don't have to worry about it when you write a program on application level. Not abstract in the sense of complicated.

 

 

 

I've already explained the reason for this in a previous post of mine. It has nothing to do with DCS "not supporting hyperthreading" and everything with how DCS spreads its computational load over its threads. If the devs manage to spread the bulk of the CPU load evenly over many threads, you will most likely see a minor improvement from hyperthreading. You would see the same effect if it was possible to remove or add physical cores to your system. As long as you don't force additional threads into the CPU core that the main DCS thread runs in, removing physical OR logical cores has the same impact, namely none whatsoever.

 

 

But please, do tell me more about how to write multithreaded applications. /sarcasm

 

Oh, you're a coder, that's great. I just know a little R and had to take a class in C++ once. I actually need to learn Python. That's the common language in Finance and Economics. Have you thought about helping out with some of the community modules like the A-4? I bet they'd love to have your help. Or maybe put your resume in with ED so you can help DCS do multithreading in future builds.

 

 

Link to comment
Share on other sites

Oh, you're a coder, that's great. I just know a little R and had to take a class in C++ once. I actually need to learn Python. That's the common language in Finance and Economics. Have you thought about helping out with some of the community modules like the A-4? I bet they'd love to have your help. Or maybe put your resume in with ED so you can help DCS do multithreading in future builds.

 

I've spent 6 years moderating this forum, translating manuals for DCS to German, providing voiceovers for official modules and doing closed beta testing so where do you get off telling my what I have to do for this community? Jeez.


Edited by sobek

Good, fast, cheap. Choose any two.

Come let's eat grandpa!

Use punctuation, save lives!

Link to comment
Share on other sites

i don’t think we are going to be able to help this guy.

 

he’s a youtube/wikipedia expert telling developers how the OS and cpu work.

 

Never asked for your help and I don't recall anyone else on this thread asking either. I was responding to the OP's question about Intel and AMD CPUs and the advantages and disadvantages for the DCS use case.

 

I'm not an expert in Youtube or Wikipedia. I've yet to make a YT video but I'm learning Blender so I can. I've never made a Wikipedia page either. But they're good to reference for people who have never built their own PC before, are confused about the terminology, or who don't understand that Hyperthreading is just a trademark name for multithreading.

 

 

Link to comment
Share on other sites

I've spent 6 years moderating this forum, translating manuals for DCS to German, providing voiceovers for official modules and doing closed beta testing so how about you just stop telling me what I need to do for this community? Jeez.

 

No need to get rude. Just making a suggestion. I'm not sure why you would get offended or take this personally. Perhaps something is getting lost in translation. I didn't realize you were a moderator. You aren't listed as one.

 

I like to build PCs, overclock, and benchmark them. I like to help people with their new builds as it can get a little intimidating for some people.

 

 

Link to comment
Share on other sites

:cheer3nc: and :drunk: but don't :argue::bomb:

 

:flowers: for all

 

Can we agree that we hope ED finds a way to offload more work from the main "who's name we cannot seem to agree about xyzTHREAD" to another core by definition, defined by the code.

 

I think we all know what we need and want, no need to argue terms and conditions we all don't know enough about to convince anybody with as much half wisdom as we have got ourselves.

 

 

Don't beat me now :D

Gigabyte Aorus X570S Master - Ryzen 5900X - Gskill 64GB 3200/CL14@3600/CL14 - Asus 1080ti EK-waterblock - 4x Samsung 980Pro 1TB - 1x Samsung 870 Evo 1TB - 1x SanDisc 120GB SSD - Heatkiller IV - MoRa3-360LT@9x120mm Noctua F12 - Corsair AXi-1200 - TiR5-Pro - Warthog Hotas - Saitek Combat Pedals - Asus PG278Q 27" QHD Gsync 144Hz - Corsair K70 RGB Pro - Win11 Pro/Linux - Phanteks Evolv-X 

Link to comment
Share on other sites

Intel or AMD

 

Never asked for your help and I don't recall anyone else on this thread asking either.

i was trying to help you understand that DCS is multithreaded and always has been. you said we were wrong and wanted to double down and argue.

 

i am happy to have this conversation with you in private, but i would ask that you stop spreading the “dcs doesn’t multithreaded” misinformation in the forums.

 

who don't understand that Hyperthreading is just a trademark name for multithreading.

please reread what we posted.

 

Hyperthreading is NOT a trademark name for multithreading. it’s a hardware feature that allows some workloads (almost never games) go a little faster in very specialized scenarios. it has very little to do with multithreaded applications and for most discussions it can basically be ignored altogether.


Edited by etherbattx
Link to comment
Share on other sites

I just did a quick test of Sobek's thesis on 2 and 4 cores with HT on and off. This was at 1440p High settings.

 

On 2 cores with HT disabled the cores were both pegged at 100% the whole time and the frame rate varied between 110-120 fps and was kind of choppy on the frametime graph.

 

On the rest of the tests frame rate rate varied between 110-120 fps as well but was smoother frametime wise and the cores never pegged to 100% and the utilization bounced around on the Afterburner OSD between the logical and physical cores. No noticeable difference in the 4 core HT on/off scenarios.

 

i was trying to help you understand that DCS is multithreaded and always has been. you said we were wrong and wanted to double down and argue...

 

I never said you were wrong and I'm not arguing. I said you were confusing terms and that's not what multithreading means in this context. We're talking about hardware multithreading and why for DCS and a lot of games it doesn't really make a difference. Hence you can save money buying the 9700K instead of the 9900K. I understand that DCS isn't a single threaded application. It definitely has more than one thread.

 

is NOT a trademark name for multithreading. it’s a hardware feature that allows some workloads (almost never games) go a little faster in very specialized scenarios. it has very little to do with multithreaded applications and for most discussions it can basically be ignored altogether.

 

From Intel's website:

 

"Intel® Hyper-Threading Technology (Intel® HT Technology) uses processor resources more efficiently, enabling multiple threads to run on each core...

 

Processors with both Intel® HT Technology and Intel® Turbo Boost Technology (or Intel® Turbo Boost Technology 2.0, available in Intel® Core™ i5 processors and above) deliver better performance and can complete tasks more quickly. The combination of technologies enables simultaneous processing of multiple threads, dynamically adapts to the workload, and automatically disables inactive cores. This increases processor frequency on the busy cores, giving an even greater performance boost for threaded applications."

 

https://www.intel.com/content/www/us/en/architecture-and-technology/hyper-threading/hyper-threading-technology.html

 

From wiki:

 

"Hyper-threading (officially called Hyper-Threading Technology or HT Technology and abbreviated as HTT or HT) is Intel's proprietary simultaneous multithreading (SMT) implementation used to improve parallelization of computations (doing multiple tasks at once) performed on x86 microprocessors." It also states farther down that the process is transparent to the OS but performance improvements are application dependent.

 

From HP's website:

 

"According to Intel [1], hyper-threading your cores can result in a 30% increase in performance and speed when comparing two identical PCs, with one CPU hyper-threaded. In a study published on Forbes, hyper-threading an AMD® processor (Ryzen 5 1600) showed a 17% increase in overall processing performance [2].

Despite these results, hyper-threading your cores isn’t always the go-to solution. There will be tasks in which the speed of your processor does not increase despite hyper-threading. This is due in part to the fact that not all applications and strings of data can efficiently load into a multi-thread core.

In an experiment carried out by bit-tech.net, a hyper-threaded Intel i7 Core was compared to a single thread Intel i7 Core after being put through a few different tests [3]. When it came to image editing, multitasking, and power consumption, the hyper-threaded counterpart did worse than the single thread. However, it performed the same or better when it came to Handbrake Video Encoding, the Overall Custom PC Benchmark Score, and playing the popular game Crysis.

Hyper-threading the cores in your CPU improves performance and speed on a case by case basis depending on which tasks are compatible with a hyper-threaded core."

 

https://store.hp.com/us/en/tech-takes/hyper-threading-everything-to-know#!

 

I'm just going by what these websites say but if you want to only use multithreading in the software sense that's fine. And according to my tests it only seems to help when restricted to 2 cores. So if you are playing on a 2 core machine that is HT capable I would keep it on but as always YMMV from other variables.


Edited by Sn8ke_iis
fixed duplicate link

 

 

Link to comment
Share on other sites

I just did a quick test of Sobek's thesis on 2 and 4 cores with HT on and off. This was at 1440p High settings.

 

On 2 cores with HT disabled the cores were both pegged at 100% the whole time and the frame rate varied between 110-120 fps and was kind of choppy on the frametime graph.

 

On the rest of the tests frame rate rate varied between 110-120 fps as well but was smoother frametime wise and the cores never pegged to 100% and the utilization bounced around on the Afterburner OSD between the logical and physical cores.

with HT, if two threads get assigned to the same physical core, they have to share the single cpu execution unit. that's why you only see a 20% increase with HT (optimum case) instead of 200%

 

sharing mean means coordination overhead and one waiting for the other to finish. that's why you don't get 100% utilization.

Link to comment
Share on other sites

It's like a Revolver with 6 bullets preloaded, you can fire only one at a time but the next one is already preloaded, saving you valuable time. In my easy way of thinking it saves the time to load the next work set and can instantly switch over and do the other thread while again it will fill the now empty pipe to switch again once #2 has finished.

Not a two barrel Colt but better than to stuff the powder from the front.

Gigabyte Aorus X570S Master - Ryzen 5900X - Gskill 64GB 3200/CL14@3600/CL14 - Asus 1080ti EK-waterblock - 4x Samsung 980Pro 1TB - 1x Samsung 870 Evo 1TB - 1x SanDisc 120GB SSD - Heatkiller IV - MoRa3-360LT@9x120mm Noctua F12 - Corsair AXi-1200 - TiR5-Pro - Warthog Hotas - Saitek Combat Pedals - Asus PG278Q 27" QHD Gsync 144Hz - Corsair K70 RGB Pro - Win11 Pro/Linux - Phanteks Evolv-X 

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...