Jump to content

etherbattx

Members
  • Posts

    627
  • Joined

  • Last visited

Posts posted by etherbattx

  1. OK I seen a few of you guys say that DCS uses more then 2 cores do we know from the developers how many DCS does utilize these days or are we in the dark..

    we are not "in the dark".

     

    if you use a process diagnostics tool, you can see that DCS uses many threads (execution contexts), and the way operating systems work, the operating system will schedule those threads to an available cpu core when they are ready to run.

     

    if two (or more) one of them are ready to run at a given time, the operating system will schedule each thread onto a separate cpu core where they can run simultaneously and make use of multiple cores.

     

    if you feel like it, you can constrain your system and limit what cpu cores you allow DCS to use, either manually or by using a tool like Process Lasso. some users claim DCS runs faster when you constrain it, but i haven't seen that (and it doesn't make much sense that it would)

  2. Actually, the game basically uses a single thread for everything except audio. However, due to the way Windows distributes threads across multiple cores, it's now technically using multi-cores, but without any of the benefits, as it's only single threaded.

    so, what you're saying is, we can limit DCS to two physical cpu cores (tell Windows not to distribute threads across multiple cores), and it will run correctly with no performance loss?

  3. I am trying to find true facts and not just rumors and what people think.. I currently believe from what I just experimented on and from what ED them selves stated that DCS ONLY uses 2 cores, one for the simulation and the 2nd for sound..

    this is not correct. it maybe have been like that 5 years ago, but it's not that way today.

     

    if you use a process diagnostic tool, you will see there are many execution threads and more than two of them get significant execution time.

     

    if you want to test this theory yourself, set your cpu affinity to only 2 cpu cores and see how DCS runs. you'll know right away if it only needs 2 cores :)

  4. Best SSD to use for Dcs

     

    Personally I think it makes a difference, if you're using an M2 SSD for your OS. But I never benchmarked my system with my old SATA SSD and then with the new M2 SSD

    i have benchmarked my system.

    if you copy a lot of large files around between drives, it’s noticeable. but booting windows isn’t much (any?) faster.

     

    for loading games, in a blind test, you’d be hard pressed to see the difference.

  5. Multi core support would allow to implement advanced weather, advanced AI, more graphical effects, bigger maps, more physical calculations, dynamic campaign, more ground forces AND improved performance.

    double the cores , double the threads double the performance.

     

    smh

     

    it’s like free magic all rolled up into one.

  6. 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.

  7. 91% RAM, should i upgrade?

     

    16gb of ram here and i get 91%+ of ram usage during a free flight mission

     

    how are you measuring that?

     

    windows will take advantage of available ram and use it for temporary storage. even if it’s not needed by an application (like dcs).

     

    to measure dcs ram usage, take a look at the “working set” size. that’s the amount of ram the process is actually using while it’s “working”

  8. 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.

  9. With the Rift CV1 the frametime was 1/90 + a little fraction of a ms. means 11.2-11.3ms so always a bot of loss. Now with the Rift S it’s 12.5ms + the same fraction. means 12.6-12.7ms.

     

    those numbers look correct.

     

    rift cv1 is 90hz refresh ->. 11.1ms

    rift s is 80hz refresh ->. 12.5ms

     

    you can’t change that. it’s part of the headset design

  10. Intel or AMD

     

    If you were on a single core CPU with hyperthreading, you would see a difference

     

    yes mostly likely. and it would interesting to see the amount of difference in the real world.

     

    people sometimes think

    2 hyperthreads = twice the performance

    but since the cpu execution unit is shared and only able to process one thread at a time, the results are not even close to 2x

     

    even intel’s own technical literature makes multiple references to “up to” 20% increase. and most likely they are testing with optimized workloads to enhance the increase.

     

    for most users with desktop pc’s HT’jng can be ignored, other than being able to brag about how many threads they have! :)

  11. Hyperthreading, refers to a very specific hardware technology created by Intel, which allows a single processor core to interleave two threads. Hyperthreading is hardware (by including an extra set of CPU registers)

    yes, exactly. it's a hardware construct and enabled/disabled in the BIOS

     

    HT's can not be created, adjusted, tweaked or targeted by a software program. to DCS, they are completely invisible.

     

    when one of the DCS threads is ready to run, the operation system may schedule/assign it to any of the cpu cores (real or virtual) to execute. the only way you can 'adjust' or control this is through the cpu affinity setting (process lasso, manual adjustment in task manager, etc)

  12. What are you asking exactly then? I'm not sure I understand your question. You can't determine whether a program uses a processor's multi-threading capabilities by looking at the number of threads quantitatively in task manager.

     

    That's not what multithreading/hyperthreading means.

     

    i think you are confusing terms. multithreading and hyperthreading are two completely different things.

     

    multithreading/multithreaded - a SOFTWARE construct where you break the execution task into separate threads. you create multiple threads with the CreateThread() API in the windows operations system. multithreading has been supported in Windows NT since 1993 and in Windows 95 since 1995, 12 years before Intel released the first dual core cpu.

    a program is considered to be 'multithreaded' if it calls CreateThread() more than once and has more than 1 thread in the process.

     

     

    hyperthreads - is completely different. it is a HARDWARE construct, where some of the fetch, decode work can be done by the core in parallel. windows supports this by treating the extra pipeline as a VIRTUAL core, to simplify the scheduling of tasks. you can NOT create hyperthreads in your program and you can't target them in your algorithms.

    the setting to enable hyperthreads is in the BIOS, not the software program. it's done in HARDWARE and managed by windows.

    when designing and writing software, HT can be ignored. there is nothing DCS or any other program can do do with or without a hyperthread.

  13. Intel or AMD

     

    Multithreading use more on each of the cores.

     

    they might, but it’s not guaranteed. multithreaded programs have more than one thread and can use any number of cpu cores.

     

    there is no magic to it. you can use cpu affinity to test this yourself. just set a multithreaded process to use a single core. the process still runs.

     

    edit: maybe the following will help

     

    do you remember Windows 95? it supported muiltithreading programs (processes with more than 1 thread) back in 1995... yet, there were no multi-core cpu's to run it on until 2005, about 10 years later.

     

    multi-processing (more than one cpu) is not a requirement for multithreading or multithreaded execution.

     

    the only requirement for "multithreading" is for there to be more than one thread in the process.

  14. I'm not spreading misinformation. You are getting your definitions confused. DCS does not use multi threading. I'm not sure why you keep saying this.

     

    "In computer architecture, multithreading is the ability of a central processing unit (CPU) (or a single core in a multi-core processor) to provide multiple threads of execution concurrently, supported by the operating system.

     

    YES! this is exactly what DCS is doing.

     

    please, please open your favorite "process info" tool and see if the DCS process has more than one thread. (it does)

     

    then look at the cpu usage of each of those threads. are those threads using cpu time? (yes)

     

    think of this scenario - DCS can render graphics AND play at sound concurrently, at the same time on two different threads. this is literally the definition of a "multithreaded" application.

     

    i don't know how to explain this more clearly

  15. Joking aside, does using a separate thread mean it can or will be moved to another core ?

     

    unless explicitly limited by the program or user (cpu affinity), any thread, in any process, can be scheduled to run on any available core.

     

    that is the main purpose of an operating system, to manage limited resources between various programs (in this case limited cpu resources).

     

    if it didn't do this, you could not run hundreds of software programs (with their thousands of threads) on a 4-core cpu. there would be too many threads for the limited number of cpu's and only a few programs would work at a time.

  16. Intel or AMD

     

    open a process tool and look at the “threads” section. you can easily see that there are at least 40 threads in the process.

     

    next, take a look at how much cpu time is used by each thread. you will see that every thread has some cpu usage, so multiple threads in the process and they are each using cpu time

     

    dcs is multithreaded.

     

    if it wasn’t, you could lock it to a single (1) core and get the same or better performance.

×
×
  • Create New...