Difference between revisions of "Icecream"
imported>WikiSysop |
imported>WikiSysop |
||
Line 6: | Line 6: | ||
Make sure your firewall is stopped: | Make sure your firewall is stopped: | ||
rcSuSEfirewall2 stop | rcSuSEfirewall2 stop | ||
− | Icecream | + | Icecream links /opt/icecream/bin/gcc to /usr/bin/icecc, and you have to use this for a distributed compile. So, change your PATH variable so icecream's gcc is found before gnu's gcc: |
export PATH=/opt/icecream/bin:$PATH | export PATH=/opt/icecream/bin:$PATH | ||
and make this change persistent for login-shells: | and make this change persistent for login-shells: |
Revision as of 09:56, 10 August 2008
Icecream is a software suite that allows you to build up a compile cluster. The goal is to speed up compiling by distributing the jobs over several computers. To do that, you need one compile-driver (the scheduler) and one or more slaves (daemons).
Contents
Install it
To install icecream on SUSE, enter into a konsole:
yast -i icecream icecream-monitor
Make sure your firewall is stopped:
rcSuSEfirewall2 stop
Icecream links /opt/icecream/bin/gcc to /usr/bin/icecc, and you have to use this for a distributed compile. So, change your PATH variable so icecream's gcc is found before gnu's gcc:
export PATH=/opt/icecream/bin:$PATH
and make this change persistent for login-shells:
echo "export PATH=/opt/icecream/bin:\$PATH" >> /etc/profile
and make this change persistent for non-login-shells:
echo "export PATH=/opt/icecream/bin:\$PATH" >> /etc/bash.bashrc
Run it
On every slave, start the daemon:
export PATH=/opt/icecream/bin:$PATH iceccd -d
On your driver, start the scheduler:
export PATH=/opt/icecream/bin:$PATH scheduler -d
What happens
The daemon opens a socket on port 10245 and waits for requests to compile. You can check this with the following commands:
Show what ports are used by iceccd
duffman:/opt/icecream/bin # lsof -i | grep iceccd iceccd 13193 root 8u IPv4 119567 0t0 TCP *:10245 (LISTEN) [...]
Show that port 10245 is really open
duffman:/opt/icecream/bin # nmap -p10245 localhost [...] PORT STATE SERVICE 10245/tcp open unknown [...]
Kill your icecream daemon
duffman:/opt/icecream/bin # killall iceccd
Show the port is no longer open
duffman:/opt/icecream/bin # nmap -p10245 localhost [...] PORT STATE SERVICE 10245/tcp closed unknown [...]