Speed Up
There are 3 strategies to minimize the build time:
- Multicore support
- Icecream
- Prebuilt toolchain
You can use them combined if you want.
Multicore
If you have a multicore system, you can increase BB_NUMBER_THREADS and PARALLEL_MAKE values to speedup your build. These variables are set in local.conf file ($MAMONA_HOME/conf/local.conf).
You can use "-j multicore" in mamonarc source script to make these changes.
Icecream
It is possible to compile on a cluster of machines using Icecream.
Setting up Icecream a client
Edit build/conf/local.conf and uncomment the following lines setting according to your environment.
BB_NUMBER_THREADS = "3" # Depends on your machine
PARALLEL_MAKE = "-j 8" # Depends on your cluster, but don't use more than -j 15
INHERIT += "icecc"
ICECC_ENV_EXEC_icecc = "${MAMONA_HOME}/tools/icecc-create-env.sh"
Edit the /etc/icecc according to your environment:
ICECC_MAX_JOBS="3" # Depends on your machine ICECC_NETNAME="mamona-oe" # Use this if you are using the INdT internal cluster.
Restart the service:
sudo /etc/init.d/icecc restart
Setting up Icecream the scheduler
Don't do this except if you are really sure that there is no scheduler on you network using the same ICECC_NETNAME.
Setup everything like described above on client instructions.
Edit /etc/default/icecc:
START_ICECC_SCHEDULER="true"
Restart the service:
sudo /etc/init.d/icecc restart
Prebuilt Toolchain
Comming soon...
