1.    24 Feb 2017 #1
    Join Date : Jan 2015
    Posts : 152
    Win7

    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
    Join Date : Mar 2015
    Posts : 234
    Windows 10 Pro (x64)

    Quote Originally Posted by bbinnard 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.    25 Feb 2017 #3
    Join Date : Feb 2015
    Bamberg Germany
    Posts : 17,550
    Win10 Pro, Win10 Pro N, Win10 Home, Win10 Pro Insider Fast Ring, Windows 8.1 Pro, Ubuntu

    Quote Originally Posted by logicearth 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
    Join Date : Mar 2015
    Posts : 234
    Windows 10 Pro (x64)

    Quote Originally Posted by Cliff S 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
    Join Date : Jan 2015
    Posts : 152
    Win7
    Thread Starter

    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.    25 Feb 2017 #6
    Join Date : Feb 2015
    Bamberg Germany
    Posts : 17,550
    Win10 Pro, Win10 Pro N, Win10 Home, Win10 Pro Insider Fast Ring, Windows 8.1 Pro, Ubuntu

    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
    Join Date : Jan 2015
    Posts : 152
    Win7
    Thread Starter

    That;s great - just what i was looking for. Thanks,
      My ComputerSystem Spec
  8.    26 Feb 2017 #8
    Join Date : Feb 2015
    Bamberg Germany
    Posts : 17,550
    Win10 Pro, Win10 Pro N, Win10 Home, Win10 Pro Insider Fast Ring, Windows 8.1 Pro, Ubuntu

    Quote Originally Posted by bbinnard View Post
    That;s great - just what i was looking for. Thanks,
    You're welcome
      My ComputersSystem Spec

 


Similar Threads
Thread Forum
Blurry text on secondary monitor in multi-resolution, multi-DPI setup
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...
Graphic Cards
Revo Uninstaller List Differs from Win10 Progs and Features List
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...
Software and Apps
Programs (Applications) not in list to be chosen as "defaults"
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"...
Software and Apps
Can i separate quick access from explore list to taskbar pinned list?
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?
Customization
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 02:00.
Find Us
Twitter Facebook Google+ Ten Forums iOS App Ten Forums Android App



Windows 10 Forums