aboutsummaryrefslogtreecommitdiffstats
path: root/lib/test_server/src
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2011-02-28 16:59:56 +0100
committerLukas Larsson <[email protected]>2011-02-28 16:59:56 +0100
commit5822b43e9acd3cfa0b6f9dea2a0fd25eb48c99e7 (patch)
tree5264e0e04039444fa0a7959135c9119d10511289 /lib/test_server/src
parente170c7f2ce8e0ac2cd45c922afc138305ca34b79 (diff)
parent1b4303f812d5968fc6de961146b39a1b20f75e42 (diff)
downloadotp-5822b43e9acd3cfa0b6f9dea2a0fd25eb48c99e7.tar.gz
otp-5822b43e9acd3cfa0b6f9dea2a0fd25eb48c99e7.tar.bz2
otp-5822b43e9acd3cfa0b6f9dea2a0fd25eb48c99e7.zip
Merge branch 'lukas/tools/cover_mem_footprint/OTP-9043' into dev
* lukas/tools/cover_mem_footprint/OTP-9043: Update testcases which need crypto to be skipped on platforms which does not have crypto Update internal pmap to have a process limit Add write concurrancy to cover masters ?COVER_TABLE Update documentation to reflect performance enhancement changes of cover Add aync_analyse_to_file function to cover Split the cover ets tables into two tables, one with the clause info and one with the bump info. This will make it faster to search the tables when analyzing and exporting data. Add process debug tags Update remote collect to handle multiple requests at once Remove io printout warnings when exporting an imported module Make the call to cover parallel so that the test_server takes advantage of the new cool parallel cover features. Update cover to allow multiple analyse and analyze_to_file calls at the same time. For each call a seperate process will be spawned to handle the request. Refactor cover to prepare it for making analysis parallel Update remote loading to only load a certain number of modules at a time to prevent memory usage explosion Conflicts: lib/tools/test/cover_SUITE.erl
Diffstat (limited to 'lib/test_server/src')
-rw-r--r--lib/test_server/src/test_server.erl15
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/test_server/src/test_server.erl b/lib/test_server/src/test_server.erl
index e0bf50bc43..2ab4e9c28a 100644
--- a/lib/test_server/src/test_server.erl
+++ b/lib/test_server/src/test_server.erl
@@ -470,7 +470,7 @@ cover_analyse(Analyse,Modules) ->
overview ->
fun(_) -> undefined end
end,
- R = lists:map(
+ R = pmap(
fun(M) ->
case cover:analyse(M,module) of
{ok,{M,{Cov,NotCov}}} ->
@@ -486,6 +486,19 @@ cover_analyse(Analyse,Modules) ->
stick_all_sticky(node(),Sticky),
R.
+pmap(Fun,List) ->
+ Collector = self(),
+ Pids = lists:map(fun(E) ->
+ spawn(fun() ->
+ Collector ! {res,self(),Fun(E)}
+ end)
+ end, List),
+ lists:map(fun(Pid) ->
+ receive
+ {res,Pid,Res} ->
+ Res
+ end
+ end, Pids).
unstick_all_sticky(Node) ->
lists:filter(