Update README and documentation
[lttv.git] / lttv / lttv / sync / README
index ada0210b99f01ddc71a64450ea0b4fecbca17b00..fe242e9778a7818f71e449d2dd614d5ba0d7824a 100644 (file)
@@ -1,6 +1,6 @@
 Benjamin Poirier
 benjamin.poirier@polymtl.ca
-2009
+2009, 2010
 
 + About time synchronization
 This framework performs offline time synchronization. This means that the
@@ -129,7 +129,7 @@ There are also other, less common, types. See the enum ApproxType in
 event_analysis_chull.h.
 
 +++ Linear Regression
-linreg sometimes gives more accurate results than chull but it provides no
+linreg sometimes gives more precise results than chull but it provides no
 garantee
 
 +++ Synchronization evaluation
@@ -137,8 +137,11 @@ eval is a special module, it doesn't really perform synchronization, instead
 it calculates and prints different metrics about how well traces are
 synchronized. Although it can be run like other analysis modules, it is most
 useful when run in a postprocessing step, after another synchronization module
-has been run. Eval is most common run in text mode. To do this, run
-lttv -m eval [usual options, ex: -t traces/node1 -t traces/node2 --sync ...]
+has been run. Eval is most commonly run in text mode. To do this, run:
+lttv -m sync_chain_batch [usual options, ex: -t traces/node1 -t traces/node2
+--sync ...]
+It can also be run from the lttv source tree via runlttv:
+./runlttv -m eval [usual runlttv options, ex: traces/node1 traces/node2]
 
 eval provides a few more options:
 --eval-rtt-file  -  argument: FILE
@@ -160,7 +163,9 @@ fields are separated by whitespace. '#' comments a line.
 Many commands can be used to measure the RTT, for example:
 ping -s 8 -A -c 8000 -w 10 192.168.112.57
 
-Note that this must be repeated in both directions in the file.
+Note that this must be repeated in both directions in the file, that is:
+192.168.112.49 192.168.112.50 0.057
+192.168.112.50 192.168.112.49 0.050
 
 ++++ Linear Programming and GLPK
 The synchronization evaluation can optionally perform an analysis similar to
@@ -170,7 +175,12 @@ measure of the accuracy of the synchronization in any point (this is seen in
 the graph output).
 
 This is enabled by default at configure time (--with-glpk) if the GNU Linear
-Programming Kit is available (libglpk).
+Programming Kit is available (libglpk). On Debian-like systems (ex. Ubuntu),
+install the package "libglpk-dev".
+
+To see the output of this mode, run:
+lttv -m sync_chain_batch --eval-graphs [usual options, ex: -t traces/node1 -t
+traces/node2 --sync ...]
 
 + Design
 This part describes the design of the synchronization framework. This is to
@@ -192,9 +202,11 @@ This reads parameters, creates SyncState and calls the processing init
 function. The "sync chain" is the set of event-* modules. At the moment there
 is only one module at each stage. However, as more module are added, it will
 become relevant to have many modules at the same stage simultaneously. This
-will require some modifications. I've kept this possibility at the back of my
-mind while designing. It is already partly supported at the matching stage
-through encapsulation of other matching modules.
+will require some modifications. It is already partly supported at the
+matching stage through encapsulation of other matching modules.
+
+sync_chain_unitest:main() provides a fairly simple example of sync chain
+implementation.
 
 ++ Stage 1: Event processing
 Specific to the tracing data source.
This page took 0.024958 seconds and 4 git commands to generate.