Skip to content

Create JSON output in LLVM  #14

@mcopik

Description

@mcopik

Right now our runtime outputs JSON which is suboptimal. Instead, it should just dump binary data straight to a profile file and another pass over the file should use it and generate full output. The approach would be similar to PGO and it would help to decrease overheads while removing JSON processing from the run.

New features:

  • Add environment variable to define output file.
  • Dump binary output from a run.
  • Pass flag to only generate output instead of instrumenting file.
  • Insert full debug information into every loop. Right now the report is hard to read because of the agnostic output.
  • Generate full statistics for functions pruned statically, functions pruned dynamically and dependencies for each function.
  • Include entire postprocessing inside LLVM pass.
  • Use hash of the file to determine if it changed.
  • Include information to split loop across functions.
  • Sort loops according to their order in a function.
  • Provide debug information for each callstack.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions