Community
cancel
Showing results for 
Search instead for 
Did you mean: 
ballontt_L_
Beginner
42 Views

Multi-threaded performance issues

I have a multi-threaded programs. We use an own implementation of the thread pool. First, the load of the project is enough.  compred to single thread, the program of two threads is more faster.

When we increase the number of threads, greater than 2, performance begins  terrible. Obviously, we encountered a multi-threaded performance issues. Then, we started using Intel® VTune ™ Amplifier XE 2017

Performance analysis, we put this tool integrated into the VS2013. Then a surprising thing happened when I click on the star button of Intel® VTune ™ Amplifier XE , the project begin to run, plug collects

Data . We found that when we started this project through the plug-in, with the increase in the number of threads, the performance becomes higher, the running time is shortened. We can open up to 20 threads. And time is shortened 20 times

So, we want to know, can Intel® VTune ™ Amplifier XE 2017  change the operation mode of multithreaded programs ? Why does this happen.

I have been troubled by this problem for a long time.

0 Kudos
1 Reply
Dmitry_P_Intel1
Employee
42 Views

Hello,

Could you please provide more details to understand the problem:

Time of single-threaded application, time of multi-threaded application with 20 thread, time of multi-threaded application with 20 threads under VTune profiling.

What VTune analysis type did you use? (Hotspots? Concurrency? Locks & Waits or any other?) 

What kind of synchronization objects do you use to implement your own thread pools?

Thanks & Regards, Dmitry

 

Reply