ctuning / reproduce-milepost-project

Collective Knowledge workflow for the MILEPOST GCC (machine learning based compiler). See how it is used in the collaborative project with the Raspberry Pi foundation to support collaborative research for multi-objective autotuning and machine learning techniques, and prototype reproducible papers with portable workflows:
http://cKnowledge.org/rpi-crowd-tuning
GNU General Public License v2.0
47 stars 6 forks source link

Applying DNN to classify cknowledge.org/repo stats #2

Open gfursin opened 7 years ago

gfursin commented 7 years ago

Now, when we have enough statistics about GCC and LLVM distinct optimizations across different programs, datasets and hardware such as Android mobiles and RPi3 (see http://cKnowledge.org/repo), as well as CK-powered DNN frameworks, we can classify these optimization and then try to find relevant program, dataset and hardware features either manually (if they do not exist in the system - see our important example in https://arxiv.org/abs/1506.06256 or using DNN by feeding in program sources, intermediate representations, MILEPOST features, datasets, etc - see https://scholar.google.com/citations?view_op=view_citation&hl=en&user=IwcnpkwAAAAJ&citation_for_view=IwcnpkwAAAAJ:LkGwnXOMwfcC and https://scholar.google.com/citations?view_op=view_citation&hl=en&user=IwcnpkwAAAAJ&cstart=20&citation_for_view=IwcnpkwAAAAJ:KlAtU1dfN6UC for further details.

It can be a nice internship or GSOC project.

gfursin commented 6 years ago

Actually, we tried DNN frameworks to classify compiler optimizations in our collaborative project with @raspberrypi (unified CK APIs and meta information allows us to quite easily plug in and evaluate different ML techniques). You can see results in this interactive CK report: http://cKnowledge.org/rpi-crowd-tuning . You can see shared workflows here: https://github.com/dividiti/ck-rpi-optimization .