Patent ID: 9183109
Filing Date: 2015-11-10
Classification: G06F

Abstract:
1. A method of analyzing performance of a multi-threaded application executing on a multi-threading framework comprising: determining that parallel overheads of a parallel region of the multi-threaded application exceed a threshold by determining that a frequency of execution of queued tasks for each of one or more worker threads exceeds the threshold, wherein the determining that the frequency of execution of queued tasks for each of one or more worker threads exceeds the threshold comprises determining the frequency of execution of queued tasks for a worker thread based on counting a number of tasks taken from a queue by the worker thread over a monitoring period; and determining that one or more causes of the parallel overheads of the parallel region includes that each worker thread is spending too much of its lifetime taking tasks out of a queue, in response to the determination that the parallel overheads of the parallel region of the multi-threaded application exceed the threshold, wherein the parallel overheads comprise active parallel overheads and inactive parallel overheads, and wherein determining whether the parallel overheads of the parallel region of the multi-threaded application exceed the threshold comprises determining whether the active parallel overheads and/or the inactive parallel overheads of the parallel region of the multi-threaded application exceed the threshold.