ctuning / ck-env

CK repository with components and automation actions to enable portable workflows across diverse platforms including Linux, Windows, MacOS and Android. It includes software detection plugins and meta packages (code, data sets, models, scripts, etc) with the possibility of multiple versions to co-exist in a user or system environment.
https://github.com/mlcommons/ck
BSD 3-Clause "New" or "Revised" License
72 stars 25 forks source link

Questions Regarding Software Detection #115

Closed younghyunc closed 3 years ago

younghyunc commented 3 years ago

Hi all,

I am working on an autotuning project (called GPTune) for HPC applications. We are also interested in providing an automatation interface based on CK, which we call CK-GPTune, as an additional interface for GPTune.

I have two questions about the CK soft detection module:

Thank you,

Younghyun

gfursin commented 3 years ago

Hi Younghyun,

Thank you for your interest!

Regarding your questions: 1) There is a way to customize search directories for a given software using "soft" customization plugins. Here are a few examples of such customization:

If I remember correctly, the "dirs" list contains the default search directories and you can substitute it completely.

If this logic is not enough, we can always update the CK "soft" module. Here is the place where we assemble a list of search paths depending on the operating system, host/target platform and other parameters.

2) You are right, "soft_file" does not differentiate between linux and macos (they considered as Linux dialect). If it's needed, we usually search for some file from a given soft that has the same name in both Linux and MacOS. Then we specialize the environment and other file names depending on a host/target OS (Linux vs MacOS) via the customize.py plugin.

A few examples:

Hope it's of any help! GPTune project sounds cool - good luck and thanks again for your interest!

CC @phesse001 @joy369

younghyunc commented 3 years ago

Thank you for your reply. These are very helpful. I have resolved my issues by patching the CK's soft module and having separated meta.json files for Linux/Mac.

Also, thank you very much for providing the CK framework! We are interested re-using (expensive) performance data obtained from multiple HPC centers. The CK's technology and ideas will be very helpful to our framework too.

gfursin commented 3 years ago

Glad to hear that, @yhcho614, and thank you for your nice words - I am really glad if CK was useful!

I expect to get some funding to continue improving the CK technology soon and will keep in touch about that!