cecream is based on ideas and code from distcc.
But unlike distcc Icecream uses a central server that schedules the compile jobs to the fastest free server and is as this dynamic. This advantage pays off mostly for shared computers, if you're the only user on x machines, you have full control over them anyway.
How to use icecream:
One machine that runs the scheduler ("./scheduler -d")
Many machines that run the daemon ("./iceccd -d")
If you want to compile using icecream, make sure $prefix/bin is the first first entry in your path, e.g. type
(Hint: put this in ~/.bashrc or /etc/profile to not have to type it in everytime)
Then you just compile with make -j < num >, where < num > is the amount of jobs you want to compile in parallel. As a start, take the number of logical processors multiplied with 2. But note that numbers >15 normally cause trouble. Here is an example:
make CC=icecc -j6
WARNING: Never use icecream in untrusted environments. Run the daemons and the scheduler as unprivileged user in such networks if you have to! But you will have to rely on homogeneous networks then.
If you want funny stats, you might want to run "icemon".