Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add options to split temporary artifacts in per-stage subdirectories #8

Closed
PhilippvK opened this issue Jan 26, 2022 · 1 comment
Closed
Assignees
Labels
enhancement New feature or request priority:low Low priority tasks

Comments

@PhilippvK
Copy link
Collaborator

PhilippvK commented Jan 26, 2022

A MLonMCU "run" typically consists of the following stages:

  • LOAD: Process the model in the frotend to produce e.g. a .tflite file
  • TUNE: Generate tuning records (Optional)
  • BUILD: Run the chosen backend to generate (wrapper) code for the model
  • COMPILE: Compile the target software using the generated code
  • RUN: Run the resulting ELF on the defined target platform.
  • (POSTPROCESS: unimplemented)

Currently the intermediate artifacts are dumped in a single directory $MLONMCU_HOME/temp/sessions/$SID/runs/$RID/ (with SID being the session ID and RID the run ID)

I would like to add an config option artifacts_per_stage=1/0 which can be defined on the command line of the the environments.yml to instead use subdiretories for every stage i.e. $MLONMCU_HOME/temp/sessions/$SID/runs/$RID/{load,build,compile,run,postprocess}

@PhilippvK PhilippvK self-assigned this Jan 26, 2022
@PhilippvK PhilippvK added enhancement New feature or request priority:low Low priority tasks labels Jan 26, 2022
@PhilippvK PhilippvK added this to the Second Release milestone Jan 26, 2022
@PhilippvK
Copy link
Collaborator Author

This is partly implemented. Currently it generates a stages directory with subdirectories for each used stage. Currently the stage numbers (e.g. 0,2,3,4) are used instead of their names. The platform directory stays in the top level run directory as it is used by several stages (i.e. (Micro)TVM is used for TUNE, BUILD, COMPILE, RUN)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request priority:low Low priority tasks
Projects
None yet
Development

No branches or pull requests

1 participant