• Andreas Gampe's avatar
    ART: Streaming trace mode · 40da286d
    Andreas Gampe authored
    Add a streaming mode for tracing. Streaming uses a buffer of 16KB
    and writes to the output when that buffer gets full. Streaming mode
    can be enabled with -Xmethod-trace-stream and is currently not
    exposed otherwise.
    
    Add a python script that can parse the streaming format, which
    simply contains strings for newly encountered threads and methods
    inline, and create output that can be used with traceview.
    
    Add Trace::Pause and Trace::Abort, which can pause and abort tracing.
    Abort is different from Stop in that it does not write the data.
    
    Add code to the zygote hooks JNI implementation that pauses tracing
    before the fork, making sure that a child cannot clobber the parent's
    data.
    
    Add code to the zygote hooks JNI implementation that aborts old
    tracing and starts new tracing in the child after the fork. Currently
    base the output on the pid. This will not work on an unmodified
    device, as the profiles directory is not generally writable, but
    we do not have enough information at that po...
    40da286d
instrumentation.h 22.7 KB