TuxML / tuxml

The main repository of the TuxML project contains the scripts for building Linux kernel configurations in the large.
Apache License 2.0
4 stars 2 forks source link

roadmap for testing compiler versions (and results over tinyconfig with gcc 6.3 and 8) #33

Open FAMILIAR-project opened 3 years ago

FAMILIAR-project commented 3 years ago

some ad-hoc experiments and manual compilation for gcc 8 (instead of gcc 6.3) using a custom Docker image (the old tuxml/tuxml3:dev)

root@ad1cc9a80f87:/linux-4.17# ls -alrth /TuxML/linux-4.13.3/vmlinux
-rwxr-xr-x. 1 root root 3.1M Jan  7 17:01 /TuxML/linux-4.13.3/vmlinux
root@ad1cc9a80f87:/linux-4.17# ls -alrth /linux-4.15/vmlinux
ls: cannot access '/linux-4.15/vmlinux': No such file or directory
root@ad1cc9a80f87:/linux-4.17# ls -alrth /linux-4.17/vmlinux
-rwxr-xr-x. 1 root root 12M Jan  7 18:09 /linux-4.17/vmlinux
root@ad1cc9a80f87:/linux-4.17# ls -alrth /linux-5.0/vmlinux
-rwxr-xr-x. 1 root root 12M Jan  7 17:16 /linux-5.0/vmlinux
root@ad1cc9a80f87:/linux-4.17# ls -alrth /linux-5.4/vmlinux
-rwxr-xr-x. 1 root root 12M Jan  7 16:57 /linux-5.4/vmlinux
root@ad1cc9a80f87:/linux-4.17# ls -alrth /linux-5.8/vmlinux
-rwxr-xr-x. 1 root root 12M Jan  7 16:05 /linux-5.8/vmlinux
root@ad1cc9a80f87:/linux-4.17# gcc --version
gcc (Debian 8.3.0-6) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

there is a "surprising" and noticeable decrease for 4.13.3 (3Mb for gcc 8 instead of 7Mb for gcc 6)... it actually motivated this experiment

but then for other kernel versions, gcc 8 is very similar to gcc 6.3 (12Mb all along)

see data that have been gathered for gcc 6.3 https://github.com/TuxML/evolution-showcase https://github.com/TuxML/evolution-showcase/blob/master/evo-kernel-linux.png

these results suggest two hypothesis that are worth investigating in the future:

It calls to implement the following: