Git Product home page Git Product logo

Comments (10)

PhilippvK avatar PhilippvK commented on August 27, 2024 1

@zhouxinyu0723 Is there a way where we do not have to hardcode the following lines?
https://github.com/tum-ei-eda/mlonmcu/blob/less_pip_install_issue51/mlonmcu/setup/setup.py#L191-L239
Maybe something like this could be used:

if config.name in requirements:
    ...

I can hardly think of a method to do this without hardcode because the config structures are nested. image

For example how to check whether autotuning is activated?

It is also possible that certain feature names can be shared by two different modules. So I think it will be safe to check both the module name and feature name for requirements group like "tvm-autotuning" "tflite-visualization"

Then let’s keep it hardcoded as-is until we have resolved #33 which removes the nested structure of the config.

from mlonmcu.

zhouxinyu0723 avatar zhouxinyu0723 commented on August 27, 2024

check the branch less_pip_install_issue51.

from mlonmcu.

zhouxinyu0723 avatar zhouxinyu0723 commented on August 27, 2024

The command is "mlonmcu setup -g".

from mlonmcu.

PhilippvK avatar PhilippvK commented on August 27, 2024

First some feedback, which is not related to your implementation:

It seems like, a lot of packages are required even if ther are not used just because they are included in some mlonmcu source files such i.e.:

  • tflite
  • flatbuffers
  • matplotlib

I will think about if we can do anything about this.

from mlonmcu.

PhilippvK avatar PhilippvK commented on August 27, 2024

In

https://github.com/tum-ei-eda/mlonmcu/blob/main/mlonmcu/cli/init.py#L64-L69

I initially wanted to create a MLonMCU-managed virtual environment for the user (optional), however I never bothered implementing it. With this new feature we could take care of this automatically by some degree.

from mlonmcu.

PhilippvK avatar PhilippvK commented on August 27, 2024

@zhouxinyu0723

The following does not work as expected when installed into an python environment (e.g. using make install):

output_dir = Path(__file__).parents[2] / "requirements_addition.txt"

Could you write the requirements_addition.txt to the environment directory instead?

from mlonmcu.

PhilippvK avatar PhilippvK commented on August 27, 2024

@zhouxinyu0723 Is there a way where we do not have to hardcode the following lines?

https://github.com/tum-ei-eda/mlonmcu/blob/less_pip_install_issue51/mlonmcu/setup/setup.py#L191-L239

Maybe something like this could be used:

if config.name in requirements:
    ...

from mlonmcu.

PhilippvK avatar PhilippvK commented on August 27, 2024

After adressing these comments, feel free to open a PR

from mlonmcu.

zhouxinyu0723 avatar zhouxinyu0723 commented on August 27, 2024

@zhouxinyu0723

The following does not work as expected when installed into an python environment (e.g. using make install):

output_dir = Path(__file__).parents[2] / "requirements_addition.txt"

Could you write the requirements_addition.txt to the environment directory instead?

will check it.

from mlonmcu.

zhouxinyu0723 avatar zhouxinyu0723 commented on August 27, 2024

@zhouxinyu0723 Is there a way where we do not have to hardcode the following lines?

https://github.com/tum-ei-eda/mlonmcu/blob/less_pip_install_issue51/mlonmcu/setup/setup.py#L191-L239

Maybe something like this could be used:

if config.name in requirements:
    ...

I doubt whether it is necessary to do it without hardcode. The problem is that the config structures are nested.
image

For example how to check whether autotuning is activated?

It is also possible that certain feature names can be shared by two different modules. So I think it will be safe to check both the module name and feature name for requirement groups like "tvm-autotuning" "tflite-visualization".

Then this style of naming conventions like "tvm-autotuning" need to be distinguished from "tvm". Which means branching is needed.

from mlonmcu.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.