tools:monitor:start
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
tools:monitor:start [2020/06/26 12:54] – [Save terminal output on a host computer via SSH] ursgraf | tools:monitor:start [2020/08/12 10:02] (current) – [Measuring a Single Block] ursgraf | ||
---|---|---|---|
Line 2: | Line 2: | ||
It is often desirable to determine whether realtime performance criteria are met or how long a certain time domain takes to run. For this purpose each time domain as well as the safety system comprises of a dedicated timer. | It is often desirable to determine whether realtime performance criteria are met or how long a certain time domain takes to run. For this purpose each time domain as well as the safety system comprises of a dedicated timer. | ||
===== How the Timer Works ===== | ===== How the Timer Works ===== | ||
- | The timer function | + | The timer is implemented in '' |
* run time: tock() - tick() | * run time: tock() - tick() | ||
* period: tick()[t=n] - tick()[t=n-1] | * period: tick()[t=n] - tick()[t=n-1] | ||
Line 91: | Line 91: | ||
===== Measuring a Single Block ===== | ===== Measuring a Single Block ===== | ||
- | Especially when implementing your own blocks one wishes to measure the time it takes to run it. This can be very useful for blocks with complex algorithms or in cases your timedomain with many blocks takes to much time to run and you want to pinpoint the culprit. For this purpose add a '' | + | Especially when implementing your own blocks one wishes to measure the time it takes to run it. This can be very useful for blocks with complex algorithms or in cases your timedomain with many blocks takes to much time to run and you want to pinpoint the culprit. For this purpose add a '' |
+ | <code cpp> | ||
+ | #include < | ||
+ | |||
+ | eeros:: | ||
+ | virtual void run() { | ||
+ | pc.tick(); | ||
+ | ... // algorithm | ||
+ | pc.tock(); | ||
+ | </ | ||
+ | You can then periodically print the mean and maximum run time. |
tools/monitor/start.txt · Last modified: 2020/08/12 10:02 by ursgraf