Hello,
I have implemented a service in Genode OS based on tz_vmm demo on i.mx53-qsb.
And I want to measure the performance of my service. I have included the
"timer driver" in my Genode OS and added the 'perf_counter' to specs.conf file.
Because my service implementation include some C language files, so I use
'gettimeofday()' function to get time in .c files. However, when the system
running, it prints "Warning: timestamp value too big" many times. And the
results is incorrect: I measure several period of the service, some of the
period is quite long(about 30 seconds I observe from the print message, I know
this is inaccuracy but I think it will not far from the actual execution time )
but the calculate time interval is about 9 seconds. Also, I use elapsed_time()
function at the beginning(t1) and the ending(t2) of the service respectively,
and t2-t1 is about 19193 ms, while I use time command to measure in linux is
about 1m19s. At the side of linux, I just open my help module to use SMC to
request my service in Genode OS and get back while the service is done, so I
think the linux measure time will not far from the service excution time.
So my question is, how can I measure quite long time period in the Genode ? It
seems the method I used above to measure time is inaccurate.
------------------
Best wishes
_______________________________________________
Genode users mailing list
[email protected]
https://lists.genode.org/listinfo/users