Windows 10: Is there a list of multi-threaded applications? Solved

  1.    24 Feb 2017 #1

    Is there a list of multi-threaded applications?


    There has been a lot of talk about new CPUs with 8 (or more) cores capable of running 16 (or more) simultaneous instruction streams (threads). But this has a real benefit only of an application is multi-threaded, meaning it can split it's processing job up into multiple, simultaneous instruction streams that the CPU can process in parallel.

    In the world of 3D product design and 3D printing this can make a huge difference - far greater than any difference due to CPU cycle time. But so far there are very few applications that can actually do multi-threading. It would be nice to see a list of apps that are multi-threaded, since these will run much faster than single threaded ones.
      My ComputerSystem Spec

  2.    25 Feb 2017 #2

    bbinnard said: View Post
    ...do multi-threading. It would be nice to see a list of apps that are multi-threaded, since these will run much faster than single threaded ones.
    Only if their workload can be spread across multiple threads. This can only be done for operations that are not dependent, that can run out of sequence.

    See: Parallel computing - Wikipedia


    And for the record, most applications are multi-threaded. Open Task Manager > Details > Right-Click on the column headers > Select Columns > Threads. Majority of the time an application is running UI threads, processing threads, and so forth.
      My ComputerSystem Spec


  3. Posts : 20,266
    Win10 Pro, Win10 Pro N, Win10 Home, Win10 Pro Insider Fast Ring, Windows 8.1 Pro, Ubuntu
       25 Feb 2017 #3

    logicearth said: View Post
    Only if their workload can be spread across multiple threads. This can only be done for operations that are not dependent, that can run out of sequence.

    See: Parallel computing - Wikipedia


    And for the record, most applications are multi-threaded. Open Task Manager > Details > Right-Click on the column headers > Select Columns > Threads. Majority of the time an application is running UI threads, processing threads, and so forth.
    Nice post, but I think the OP means CPU core threads, and that's different than program threads.
    • Programming abstraction. Dividing up work and assigning each division to a unit of execution (a thread) is a natural approach to many problems. Programming patterns that utilize this approach include the reactor, thread-per-connection, and thread pool patterns. Some, however, view threads as an anti-pattern. The inimitable Alan Cox summed this up well with the quote, "threads are for people who can't program state machines."



    • Parallelism. In machines with multiple processors, threads provide an efficient way to achieve true parallelism. As each thread receives its own virtualized processor and is an independently schedulable entity, multiple threads may run on multiple processors at the same time, improving a system's throughput. To the extent that threads are used to achieve parallelism—that is, there are no more threads than processors—the "threads are for people who can't program state machines" quote does not apply.

    If you are using threads as a programming abstraction to handle UI elements, for example, you'll have one thread per UI element (or whatever) regardless of whether you have 1 core or 12. Similarly, if you were using threads to perform blocking I/O, you'd scale your thread count with your I/O capacity, not your processing power.
    What is the relation between the number of threads and the number of CPU cores? - Quora

    I don't have a server motherboard with 4 XEON proccessors.
    Click image for larger version. 

Name:	2017_02_25_09_27_391.png 
Views:	11 
Size:	81.4 KB 
ID:	122683

    For the OP:
    Some programs have a multicore option in their preferences, but usually that's for their paid versions.
    A good example is MediaMonkey:
    Click image for larger version. 

Name:	2017_02_25_09_33_431.png 
Views:	9 
Size:	96.3 KB 
ID:	122684

    Most programs only need a single CPU thread.
    A good example is when overclocking my 6700K to 5.18986GHz: Official OC Leaderboard
    I needed to use only a single core, and turn off hyperthreading to boot into Windows 10 and not BSOD(keeps the CPU cooler).
    With this single thread, I was able to use Windows, have EDGE running, play music in Groove, and validate using CPU-Z, at the same time with no problems.
      My ComputersSystem Spec

  4.    25 Feb 2017 #4

    Cliff S said: View Post
    Nice post, but I think the OP means CPU core threads, and that's different than program threads.
    Well yes there is that, but when you are working in the confines of the Windows Programming Model, you generally don't work directly with CPU threads (We are not in the old DOS days anymore.) You go though Windows. Directly working with the CPU is usually something only done in very special cases on special hardware configurations and not in Windows.

    Old Days: Real mode - Wikipedia
    New Days: Protected mode - Wikipedia
      My ComputerSystem Spec

  5.    25 Feb 2017 #5

    Yes, I am fully aware of the differences between the multiple tasks shown by Task Manager and the ability of some applications to split their workload into multiple parallel processes that can run simultaneously. It is the latter concept I was addressing.

    One good example of this is the Vegas video editor program. As anyone who does video editing knows, rendering the final output to a viewable video file is the most CPU intensive part of the entire editing process. Vegas has the ability to break this into as many individual processes as its CPU can provide - on my i7 CPU I typcally specify 8; this allows the rendering process to finish in far less time than if there were only 1.

    Another example is slicing a 3D printable model to produce the required GCode to run a 3D printer. Most slicing programs today are single threaded, but the one I use (Craftware) uses all the CPU power from all the i7's cores, and so it slices complex 3D models far faster than any other slicer.

    My original question was whether or not there was a list of multi-thread capable programs, ,because these will always process far faster than comparable single-threaded ones. Of course, to be multi-threaded, an application's workload has to be able to be broken down into multiple parallel parts, and the application developers have to be able to write code that supports parallel processing. I recognize that this is a major departure from the single-threaded approach most software development has used to date, but my experience so far shows that multi-threading produces far greater performance improvements than relatively small improvements in CPU cycle times.
      My ComputerSystem Spec


  6. Posts : 20,266
    Win10 Pro, Win10 Pro N, Win10 Home, Win10 Pro Insider Fast Ring, Windows 8.1 Pro, Ubuntu
       25 Feb 2017 #6

    Something like this?: Thread-Optimized Software - Core i7-980X: Do You Want Six Cores Or 12 Threads? Page three title "Thread-Optimized Software"
      My ComputersSystem Spec

  7.    25 Feb 2017 #7

    That;s great - just what i was looking for. Thanks,
      My ComputerSystem Spec


  • Posts : 20,266
    Win10 Pro, Win10 Pro N, Win10 Home, Win10 Pro Insider Fast Ring, Windows 8.1 Pro, Ubuntu
       26 Feb 2017 #8

    bbinnard said: View Post
    That;s great - just what i was looking for. Thanks,
    You're welcome:)
      My ComputersSystem Spec


  •  

    Related Threads
    This is probably the most painful issue I have with Windows 10 right now (and likely previous versions as well, but I didn't have a multi-monitor setup back then). The monitors I have are as follows: 3840x2160 (4K UHD) monitor with preferred...
    I'm running Win10 Pro 64bit and Revo Uninstaller Pro v3.1.5. There is a huge discrepancy in the installed programs lists provided by Revo Uninstaller and the Win10 Programs and Features control panel. They both say there are 83 installs (that's...
    I am trying to set Quicken as my default PFM application (so that it will automatically open QFX file types), but even though the program is loaded and working it is not presented in the list of "applications" to be selected and used as a "default"...
    it's really getting annoying that i can't see any of the recent used files list as i have too many pinned list, can i have a separate list for task bar pinned list and quick access list in explorer?
    Our Sites
    Site Links
    About Us
    Windows 10 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 10" and related materials are trademarks of Microsoft Corp.

    © Designer Media Ltd
    All times are GMT -5. The time now is 09:14.
    Find Us