From ad42e17a4f12a9a6fb131de216a11597f72e1e3c Mon Sep 17 00:00:00 2001 From: thibauth Date: Fri, 27 May 2011 15:25:00 +0000 Subject: Number of days was set to the peer degree (copy paste bug) git-svn-id: https://scm.gforge.inria.fr/svn/pacemaker@16 30fcff6e-8de6-41c7-acce-77ff6d1dd07b --- sources/thibaut/simul.ml | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) (limited to 'sources') diff --git a/sources/thibaut/simul.ml b/sources/thibaut/simul.ml index 560e6e6..a542b4f 100644 --- a/sources/thibaut/simul.ml +++ b/sources/thibaut/simul.ml @@ -75,7 +75,7 @@ let server_init_seed peer round duration = let data = { phase = SEEDING; duration = duration; - seed = Random.int (1 lsl 31); + seed = Random.int (1 lsl 29); hmap = HashMap.empty; included = 0; replies = [] @@ -190,7 +190,7 @@ let seed = ref 0 let arg_list = [ "--peers", Arg.Set_int npeers, " number of peers"; "--degree", Arg.Set_int degree, " maximum number of neighbours"; - "--days", Arg.Set_int degree, " numbers of days"; + "--days", Arg.Set_int days, " numbers of days"; "--tpm", Arg.Set_int tpm, " number of ticks per minute"; "--accuracy", Arg.Set_int accuracy, " number of ticks between rounds"; "--duration", Arg.Set_int duration, " number of ticks during seeding"; @@ -198,34 +198,35 @@ let arg_list = [ ] let _ = - Arg.parse (Arg.align arg_list) (fun s -> ()) ""; + Arg.parse (Arg.align arg_list) (fun s -> ()) "Pacemaker simulator"; Random.init !seed let peers = Array.init !npeers (fun i -> { id = i; - con_state = ON; + con_state = OFF; neighbours = Array.make !degree None; rounds_data = RoundMap.empty; messages = Queue.create(); history = RoundMap.empty }) -let nticks = !days*24*60*(!tpm) +let nticks = (!days)*24*60*(!tpm) let round = ref 0 -let _ = for i = 0 to (nticks-1) do - if i mod !accuracy = 0 then begin - incr round; - server_init_seed peers.(0) !round !duration - end - else if i mod !accuracy = !duration then - server_init_pulse peers.(0) !round; - - do_server peers.(0); - for i = 1 to (!npeers-1) do - let peer = peers.(i) in - if peer.con_state = ON then - do_peer peer +let _ = + for i = 0 to (nticks-1) do + if i mod !accuracy = 0 then begin + incr round; + server_init_seed peers.(0) !round !duration + end + else if i mod !accuracy = !duration then + server_init_pulse peers.(0) !round; + + do_server peers.(0); + for i = 1 to (!npeers-1) do + let peer = peers.(i) in + if peer.con_state = ON then + do_peer peer + done done -done -- cgit v1.2.3-70-g09d2