Skip to content
José Fonseca edited this page Jan 23, 2014 · 7 revisions

To Do - CLI

  • Rewrite tracediff in C++:

  • Add some common command-line options:

    Most commands acting on a trace accept the following common options:

    --calls=[RANGE]       Operate only on calls with index numbers within
                          the specified range.
    
    --frames=[RANGE]      Operate only on frames with index numbers within
                          the specified range.
    
    --functions=[REGEXP]  Operate only on function calls which have a
                          name that matches the given regular expression.
    

    A [RANGE] can be any of the following:

     Example    Description
     -------    -----------
     4          A single number specifying a single call or frame.
     
     10-20      Two numbers separated by '-' (FIRST-LAST) specifying a
                range of consecutive calls/frames from FIRST to LAST. If
                either of FIRST or LAST is omitted, the first or last
                call/frame index in the trace will be used.
     
     1-100/5    Either of the above range specifications followed by '/'
                and a number (INTERVAL). This specifies the inclusion of
                only each INTERVAL call/frame within the range. For
                example, 1-100/5 species frame 1, frame 5, frame 10,
                ... up to frame 100.
     
     4,10-20/2  A comma separated list of any of the above range
                specifications, specifying the union of the ranges.
    
  • Add some trim-specific options (--every={draw,framebuffer,frame})

  • Add an "apitrace bisect" for trimming down a trace based on user input at each stage.

  • Add an "apitrace git-bisect-helper" for calling from git-bisect.

  • Add a histogram feature to show the number of calls to each GL function. Sort the output from most-called to least-called.

Clone this wiki locally