Skip to content

[Queries] Regarding usage of LLVM built with Pretrained Models and Development Mode #348

@quic-garvgupt

Description

@quic-garvgupt

Hi,

I have successfully built a toolchain using the model inlining-Oz-v1.1 released [here(https://github.com/google/ml-compiler-opt/releases). However, I have some queries regarding its usage while building an application in release mode, as well as some questions pertaining to development mode.

Release Mode

  1. Should the -mllvm -enable-ml-inliner=release flag be added only to the clang driver, or to both the clang driver and the linker? The application I am building invokes compiler and linker through separate command line invocations.
  2. While building llvm for release mode, is it necessary to disable LTO?
  3. After building llvm for release mode, are there any restrictions on the usage of certain flags which cannot be used like -flto etc. while building the application. Can LTO (both thin and full) be enabled when building the application?

Development Mode

  1. While building llvm to generate the corpus for training mode, is it necessary to disable LTO?
  2. When building the application to generate the corpus, can LTO (both thin and full) be enabled, or should LTO be disabled while building the application?
  3. The paper published two different strategies for training (PG and ES). Is there a way for a user to specify which training method to use through command line flags or other means while in development mode?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions