Mercurial > hg > ltpda
diff m-toolbox/test/aorepo_proto_test/repo_test_obj_number.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/m-toolbox/test/aorepo_proto_test/repo_test_obj_number.m Wed Nov 23 19:22:13 2011 +0100 @@ -0,0 +1,104 @@ +% REPO_TEST_OBJ_NUMBER Test repository submission/retrieval of different +% number of AOs of the same size +% +% M HUeller 05-12-08 +% +% $Id: repo_test_obj_number.m,v 1.7 2009/03/02 16:28:19 mauro Exp $ +% +function results = repo_test_obj_number() + + %% Prepares the plist for AOs + NSECS = 3.6e3; + + % nobjs = [linspace(1,10,10) linspace(20,100,9) linspace(200,1000,9)]'; + nobjs = [linspace(1,10,10) linspace(20,60,3)]'; + + NOBJS_STEPS = length(nobjs); + + n_freqs = 10; + fs = 10; + f_m = linspace(0.001, 0.01, n_freqs); + A = linspace(0.1, 1, n_freqs); + phi = linspace(0, pi, n_freqs); + + pl_ao = plist('waveform', 'sine wave', ... + 'fs', fs, ... + 'f', f_m, ... + 'A', A, ... + 'phi', phi, ... + 'nsecs', NSECS); + + + + %% Prepares a plist with the needed parameters + pl_run = plist('RAND_N_OBJ', false, ... + 'N_OBJ', [], ... + 'OBJ_TYPE', 'ao', ... + 'RAND_AO', false, ... + 'AO_PARAMS', pl_ao, ... + 'HOSTNAME', 'btlab.science.unitn.it', ... + 'DBASE', 'ltpda_test', ... + 'SAVE_OBJS', false, ... + 'SUBMIT', true, ... + 'CONN', [], ... + 'SAVE_RESULTS', false, ... + 'DIR', [], ... + 'RESULTS_FILENAME','repo_test' ... + ); + + % Empty arrays for the results + results = cell(NOBJS_STEPS, 1); + ret_time_xml = zeros(NOBJS_STEPS, 1); + ret_time_bin = zeros(NOBJS_STEPS, 1); + sub_time = zeros(NOBJS_STEPS, 1); + + %% Runs the tests with AOs + + for kk = 1 : NOBJS_STEPS + results{kk} = repo_test_func(pl_run.pset('N_OBJ', nobjs(kk))); + end + + %% Puts together a report + import utils.const.* + utils.helper.msg(msg.MNAME, '%s\n%s\n%s\n%s\n%s\n%s\n%s', ... + ' ','%%%%%%%%%%%%%',' ',... + ['Test started at: ' datestr(find(results{1}, 'start_time')) ... + ' and ended at: ' datestr(find(results{end}, 'stop_time'))], ... + ' ','%%%%%%%%%%%%%',' '); + + % TODO: add more info here (which repo etc) + + % Collects the results into a matrix + for kk = 1 : NOBJS_STEPS + ret_time_xml(kk) = find(results{kk}, 'ret_time_xml'); + ret_time_bin(kk) = find(results{kk}, 'ret_time_bin'); + sub_time(kk) = find(results{kk}, 'sub_time'); + end + + % Plot submit times for objects as a function of number of objects + fig_sub_time = figure; + plot(nobjs, sub_time, 'b.'); + hold on; + grid on; + + xlabel('Number of objs []'); + ylabel('Submit time [s]'); + title(['AO, fs = ' num2str(fs) ' nsecs = ' num2str(NSECS) ' s']); + legend('XML + Binary submission'); + + + % Plot retrieval times for objects as a function of object size + fig_ret_time = figure; + plot(nobjs, ret_time_xml, 'b.'); + hold on; + plot(nobjs, ret_time_bin, 'r.'); + grid on; + + xlabel('Number of objs []'); + ylabel('Retrieval time [s]'); + title(['AO, fs = ' num2str(fs) ' nsecs = ' num2str(NSECS) ' s']); + legend('XML retrieval','Binary retrieval'); + + +end +% END \ No newline at end of file