Question
edwardyu on Thu, 11 Apr 2013 09:49:23
I have been reading the VS2010 concurrency runtime walkthrough :-
http://msdn.microsoft.com/en-us/library/vstudio/ee624185(v=vs.100).aspx
It said lightweight tasks has less overhead than PPL parallel_invoke. If my parallel_invoke tasks do not require load-balancing nor cancellation, how can we adapt the concurrency runtime to the following example to get maximum performance :-
parallel_invoke( [&] { PPL_searchRoot(2, spboard, alpha, beta, size, m_depth, movetab, incheck, m_bestmove, old_alpha, root_nodes, nUnchanged, pv_i ); }, [&] { PPL_searchRoot(1, spboard2, alpha2, beta, size, m_depth, movetab, incheck, m_bestmove2, old_alpha, root_nodes, nUnchanged, pv_i2 ); } );I think it would been most convenient if there is something like parallel_invoke_light() in PPL for paralleling lightweight functions without coding the thread data-structure, low-level calls to scheduler etc.