Dicas & How To
Debian Day 09 – Amazonas
1
Debian Day é um evento realizado anualmente por vários grupos de Software Livre em todo o mundo. Também conhecido por Dia Debian e Dia D, este evento comemora o aniversário da distribuição GNU/Linux Debian, que neste ano (2009) completa 16 anos de existência.
Em Manaus, o Debian Day é realizado pelo Grupo de Usuários Debian do Amazonas, conhecido por Debian-AM, sendo patrocinado pela UniLaSalle e com o apoio do Projeto Zagaia, AIT Technologies e Gráfica Silva.
Neste ano, teremos um I Desafio DebianDay de Programação:
E também um convidado especial, o criador e mantenedor do site Viva o Linux (http://vivaolinux.com.br), Fábio Berbert de Paula.
Convidamos todos a participarem deste evento.
Data: 22 de Agosto de 2009.
Local: UniLaSalle, Dom Pedro I, em frente à praça de alimentação do Dom Pedro I.
Horário: 9h – 17:30h, credenciamento de 8h – 9h.
Entrada: 2Kg de alimentos não perecíveis, exceto sal.
Para saber como participar do desafio de programação, visite o site de evento.
Compilação distribuída com ICECC no Debian/Ubuntu
0Para quem já compilou um projeto grande, ou seja, que possui uma quantidade considerável de código fonte sabe que demora bastante tempo para compilar, um exemplo disso é o Qt, que demora aproximadamente ~2 horas em uma máquina com 2 núcleos.
Optando pela dica de um amigo, consegui diminuir esse tempo de compilação para aproximadamente ~50 minutos usando 6 núcleos no total, 2 núcleos do meu notebook e mais 4 da minha estação de trabalho.
É algo bem simples de fazer, let’s do it
Primeiramente você precisa instalar o ICECC nos computadores que você irá compartilhar recursos para compilação e nada mais óbvio do que usar o apt-get ou aptitude:
~$ aptitude install icecc
Depois de instalado nas máquinas que você deseja utilizar os recursos é necessário configura-lás em um grupo para que elas possam se comunicar, em uma analogia equivalente seria como configurar um grupo de rede onde cada máquina consegue enxergar as outras porque estão no mesmo grupo. Para configurar essa rede é preciso editar o arquivo /etc/icecc/icecc.conf e colocar a seguinte diretiva apontando para o nome da rede:
ICECC_NETNAME=”nome_da_sua_rede“
onde tem nome_da_sua_rede substitua pelo o nome de sua preferência para a rede de compilação e configure essa diretiva com o nome que você definiu para cada máquina que você irá utilizar para a compilação e depois reinicie o daemon delas com:
sudo invoke-rc.d icecc restart
Nessa rede é preciso que ao menos uma das máquinas seja a responsável por distribuir os dados de compilação, pegar o retorno e juntar tudo. A essa máquina damos o nome de “Scheduler”, para configurar uma máquina como scheduler é preciso que o arquivo /etc/default/icecc esteja da seguinte forma:
# Defaults for icecc initscript
# sourced by /etc/init.d/icecc
START_ICECC=”true”
START_ICECC_SCHEDULER=”true”
E depois reiniciar o daemon com:
ICECC_NETNAME=”nome_da_sua_rede”
Dai em diante é só compilar algum código grande que você verá a diferença, também existe uma ferramenta para você monitar a compilação é o icecc-monitor, para instalar (nada mais óbvio):
sudo aptitude install icecc-monitor
Depois adicione o path do icecc ao seu $PATH, inserindo o seguinte comando no seu ~/.bashrc :
export PATH=/usr/lib/icecc/bin/:$PATH
source ~/.bashrc
E boa compilação, keep hacking!
