Added thread safe ttrace support 28/37428/8
authorNick Holland <nick.holland@partner.samsung.com>
Thu, 26 Mar 2015 11:27:34 +0000 (11:27 +0000)
committerNick Holland <nick.holland@partner.samsung.com>
Wed, 15 Apr 2015 06:18:44 +0000 (23:18 -0700)
commitd121741213241cc22631ae4c820eea0488e0a0cb
treeb8b852e19626b7c152f0fb6b23e446ba0b82eff4
parent2b40587bb33fbb25644908495f0f24588f105012
Added thread safe ttrace support

To enable:

DALI_PERFORMANCE_TIMESTAMP_OUTPUT=4 dali-demo

If ttrace is not part of the build environment it will fall back on using
DALi log.
Without ttrace enabled Output will look like:

INFO: DALI: AsyncBegin: UPDATE : cookie -739011608
INFO: DALI: AsyncEnd: UPDATE : cookie -739011608
INFO: DALI: Marker: V_SYNC
INFO: DALI: Marker: V_SYNC
INFO: DALI: Marker: V_SYNC
INFO: DALI: Marker: V_SYNC
INFO: DALI: AsyncBegin: PROCESS_EVENT : cookie -172927739
INFO: DALI: AsyncEnd: PROCESS_EVENT : cookie -172927739
INFO: DALI: AsyncEnd: RENDER : cookie -869100763
INFO: DALI: AsyncBegin: RENDER : cookie -869100763
INFO: DALI: Marker: V_SYNC
INFO: DALI: AsyncBegin: UPDATE : cookie -739011608
INFO: DALI: AsyncEnd: UPDATE : cookie -739011608
INFO: DALI: AsyncBegin: PROCESS_EVENT : cookie -172927739
INFO: DALI: AsyncEnd: PROCESS_EVENT : cookie -172927739

To log custom markers in an application...
PerformanceLogger logger = PerformanceLogger::New("MyMarker");

logger.AddMarker(PerformanceLogger::START_EVENT);
// do stuff
logger.AddMarker(PerformanceLogger::END_EVENT);

Documentation for this patch is included in shared markdown file:
https://review.tizen.org/gerrit/#/c/37690/

Change-Id: I17b4e99399d4bdb9001f8a9bdf5b690865722b02
15 files changed:
adaptors/base/interfaces/adaptor-internal-services.h
adaptors/base/interfaces/performance-interface.h
adaptors/base/interfaces/trace-interface.h [moved from adaptors/base/interfaces/kernel-trace-interface.h with 60% similarity]
adaptors/base/performance-logging/performance-marker.cpp
adaptors/base/performance-logging/performance-marker.h
adaptors/base/performance-logging/performance-server.cpp
adaptors/base/performance-logging/performance-server.h
adaptors/common/adaptor-impl.cpp
adaptors/common/adaptor-impl.h
adaptors/common/file.list
adaptors/common/kernel-trace.cpp
adaptors/common/kernel-trace.h
adaptors/common/system-trace.cpp [new file with mode: 0644]
adaptors/common/system-trace.h [new file with mode: 0644]
build/tizen/configure.ac