ATL's XGRAPH allows interactive zooming, panning, printing, as well as export of timelines into publishing tools such as FrameMaker, InterLeaf, PowerPoint and MS-Word for annotation and manipulation for incorporation into documents, reports and presentations. This unique capability allows selective editing, shading, and highlighting of data objects, as well as font modifications. See XGRAPH.
The TimeLine utility reads an event history file produced by ATL's performance model libraries for CSIM or VHDL. Event history files contain lines in the following format:
/Device_name @ time : event_type_name optional_event_info For example: /sensor2 @ 2005 : Completed data write.All file lines not beginning with a "/" as the first character are assumed to be comments and are ignored.
The event_type_name can be any string. For the purposes of the TimeLine utility, it consists of two parts:
Data_Write_Complete addr=234 length=512 Data_Write_Complete addr=3879 length=32are the same event type.
There is a graphical front-end for TimeLine, called TLPP-GUI.
TimeLine will prompt you for options from the text window.
Alternatively, you can invoke TimeLine from the command-line or from a script file by calling timeline with the name of your event history file, as in:
timeline EventHist.dat Or, in the case of the SCHEDULER's history file: timeline IdealEvHist.dat
(The "on" event-name would be the "pen-down" event, and the "off" event would be the "pen-up" event (in the sense of a plotter). For instance, a processing time-line could use:
"on" = begin_process, "off" = completed_process.For instantaneous events, the "on" and "off" event-names would be the same event, and this would draw a single point on the graph, instead of a line-segment.)
For the time-line annotations, use: 0. No Annotations. 1. Event Number. 2. Event Name. 3. Event Info string. 4. Full event string. 5. Hyper-Notes.Usually you would choose (3), but if the text is too crowded, you may try shorter versions (1-3), none (0), or hyper-notes (5). With hyper-notes, the annotations will not appear on the graph. The annotation for each a specific trace appears only when clicked.
It will tell you the span of times that the events in the event file span. And it will ask over what range you would like output for. This allows you to focus on a sub-range.
Similarly, it will tell you the range of devices and allow you to select a subset if you would like. It also allows you to rearrange their order from top-to-bottom on the graph.
These features enable you to tailor the time-line graph to show just the resources you are interested in, in an order that is logical to you, and over specific time spans or interest.
In this way, TimeLine is helpful for data-reduction when analyzing the results from simulations of complex systems over long durations. Reducing the resultant plot-file size speeds-up the interactive response of the ultimate plotter/displayer, while saving file-space.
You may assign colors to specific event types. For each event-type you want colored, enter enough of the event string to uniquely identify that event-type, followed by the color.
Choose colors from: black, white, red, green, blue, cyan, violet, orange, yellow, pink, light-gray, dark-gray, and fuchsia.
(example: suppose your timeline data file contains entries such as: /brd3/dev8 @ 345.2: start modem9_3a /brd3/dev8 @ 345.2: done modem9_3a Then a valid color entry for any 'modem' event could be: modem blue Special thought should be given to your event-type naming convention so as to distinguish appropriate events. )
TimeLine will then produce a time-line plot file that shows the event history of devices versus time. The plot-file has a ".tln" suffix, such as:
"DTN.tln".
xgraph DTN.tlnA graph window will then appear on your screen. XGRAPH contains several easy to use buttons on its panel for viewing or printing the graph. See XGRAPH for further information, such as producing hardcopy printout without running it interactively.
Hint: It is recommended that a command file be set-up with all the anticipated responses to the TimeLine program. To do this, you would run the TimeLine program only once interactively with the -capture option to capture your responses to a log-file, which becomes, in-effect, a command-file. Then run the TimeLine postprocessor from your command-file ever after. For example, run the TimeLine utility with input directed from that file, as in: timeline events.dat < tline_log.com
The log-file is called: tline_log.com
An example command file appears below. It appears as generated by the TimeLine tool. Note that your command files can contain helpful comments. You can conveniently edited it and re-apply it to TimeLine by directing the file as input.
/************************************************/ /* TimeLine PostProcessor Command File */ /* (Item) (Response) */ /************************************************/ /* ------------------------- */ /* Pen-down event name: */ begin /* (I.E. Start of compute.) */ /* ------------------------- */ /* ------------------------- */ /* Pen-up event name: */ end /* (I.E. End of task.) */ /* ------------------------- */ /* ------------------------- */ /* Annotation style: */ 3 /* ( 0. No Annotations. */ /* 1. Event Number. */ /* 2. Event Name. */ /* 3. Event string. */ /* 4. Full event string. */ /* 5. Hyper-notes. ) */ /* ------------------------- */ /* ------------------------- */ /* Tick-marks (y,n) */ y /* ------------------------- */ /* ------------------------- */ /* Device position list: */ /* device number */ /* device number */ /* ... */ /* end */ /* ------------------------- */ end /* ------------------------- */ /* Your devs ranged 1 - 456. */ /* */ /* Range of Devices To View. */ 50 200 /* (Min_device Max_device) */ /* ------------------------- */ /* ------------------------- */ /* Time Range To View. */ 2000.0 30000.0 /* ( Min_Time Max_Time ) */ /* ------------------------- */ /* ------------------------- */ /* Event Color List: */ /* event_substring color */ /* event_substring color */ /* ... */ /* end */ /* ------------------------- */ endNote: Old versions of TimeLine used '-1' to end lists. Versions after 7-1-02 enable using end instead.
If ~2 devices, thickness=6.
If ~25 devices, thickness=3.
If ~200 devices, thickness=1.
Format:
Comm src t1 dst t2 {color}
Example:
Comm /board1/pe1 58.56 /board2/pe9 123.7 4
Color must be a number (See colors) and is optional. The example above would appear as shown in figure 2 in green. (The processing events were added for context.)

Figure 2 - Example communication arrow.