Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Próxima revisão
Revisão anterior
dicas:ccad [2010/05/11 15:27] – criada paulojusdicas:ccad [2011/10/07 11:32] (atual) paulojus
Linha 1: Linha 1:
-====== Configuração e uso do LCPAD ======+====== Configuração e uso do CCAD para usuários do LEG ======
  
 O CCAD - Centro de Computação de Alto Desempenho -  O CCAD - Centro de Computação de Alto Desempenho - 
Linha 7: Linha 7:
  
 Este é um sistema alternativo a outro existente na UFPR, o [[dicas:lcpad|LCPAD]] com algums configurações e filosofias de uso diferentes. Este é um sistema alternativo a outro existente na UFPR, o [[dicas:lcpad|LCPAD]] com algums configurações e filosofias de uso diferentes.
 +
 +**O CCAD procura estimular/incentivar o uso de programas que rodem em paralelo!!**
 +
 +Informações detalhadas na **[[http://www.ccad.ufpr.br|Página do CCAD]]**
  
 ==== Conta no CCAD ==== ==== Conta no CCAD ====
Linha 16: Linha 20:
   * O usuário cadastrado receberá email com login e senha de acesso.   * O usuário cadastrado receberá email com login e senha de acesso.
   * o acesso deve ser feito sempre à servidora ''ccad.ufpr.br''    * o acesso deve ser feito sempre à servidora ''ccad.ufpr.br'' 
-  * a partir desta servidora é possível acessar as demais máquinas do LCPAD via o comando ''rlogin'' (mais detalhes abaixo) 
   * O acesso à servidora  ''ccad.ufpr.br'' pode ser feito por ''ssh'' (inclusive gráfico com ''ssh -X'') via programa gráfico de ssh (putty, etc) ou linha de comando com:<code>   * O acesso à servidora  ''ccad.ufpr.br'' pode ser feito por ''ssh'' (inclusive gráfico com ''ssh -X'') via programa gráfico de ssh (putty, etc) ou linha de comando com:<code>
-ssh LOGIN@ccad.ufpr.br</code>+ssh LOGIN@ccad.ufpr.br</code>
   * ssh só é possível a partir de máquinas na UFPR. Se estiver acessando de fora acesse primeiro uma servidora da UFPR (do leg por exemplo) e dela acesse o CCAD   * ssh só é possível a partir de máquinas na UFPR. Se estiver acessando de fora acesse primeiro uma servidora da UFPR (do leg por exemplo) e dela acesse o CCAD
   * Recomenda-se trocar a senha no primeiro uso com o comando:<code>   * Recomenda-se trocar a senha no primeiro uso com o comando:<code>
-passwd </code>+ccad:~> passwd </code>
 ==== Uso ==== ==== Uso ====
   * O sistema operacional das máquinas do CCAD é LINUX (SuSe). É portanto recomandado que usuários estejam familiarizados com [[http://www.leg.ufpr.br/~paulojus/restrito/dicas/node2.html|comandos básicos do LINUX]]   * O sistema operacional das máquinas do CCAD é LINUX (SuSe). É portanto recomandado que usuários estejam familiarizados com [[http://www.leg.ufpr.br/~paulojus/restrito/dicas/node2.html|comandos básicos do LINUX]]
Linha 27: Linha 30:
  
 ==== Uso do R no CCAD ==== ==== Uso do R no CCAD ====
-O R foi compilado na servidora do CCAD e está em um diretório **não usual**: 
-  /cluster/sw/R 
  
-Portando binário para execução está em: +=== Rodando o R ===
-  /cluster/sw/R/bin/R+
  
-Para evitar ter que digitar todo este caminho quando for iniciar o R voce pode adicionar no seu arquivo ''.bashrc'' a seguinte linha+**IMPORTANTE:**\\ 
-  alias R="/cluster/sw/R/bin/R"+Para rodar o R (em formato interativo sou submetendo jobs) o primeiro passo é digitar:<code> 
 +ccad:~> module load mod_R </code>
  
 +Se voce é um usuário regular do R este comando de carregar o modulo  pode ser colocado em seu ''.bashrc'' para que seja rodado automaticamente sempre que voce acessar o CCAD.
  
 +No momento o modulo do R faz duas coisas:
 +  - define o diretório do executável do R no seu ''PATH''
 +  - define o camilho de procura de bibliotecas adicionais do R na conta da ''paulojus'' (para evitar que todos tenham que instalar os pacotes)
  
-Existem duas versões do programa ''R'' disponíveis no LCPAD +== Rodando na forma interativa =
-  - Uma versão disponível para acesso **apenas na servidora ''lcpad.ufpr.br''** que pode ser usada inclusive interativamente e graficamente. Para iniciar esta versão do R em modo interativo digite:<code> +
-% R </code> +
-e para modo BATCH o comando usual e acompanha o andamento do //job// com:<code> +
-% R CMD BATCH seu_programa.R & +
-% tail -f seu_programa.Rout +
-</code>  +
-  - Nas demais máquinas do LCPAD não é possivel utilizar o R gráfico e foi compilada uma versão sem suporte gráfico do ''R'' que chamamos de ''Rnox''. Par usar esta versão voce deve primeiro criar um //alias// nos seu arquivo ''.bashrc'' e/ou ''.zshrc'' (se voce copiou estes arquivos da conta de PJ isto não é necessário pois o //alias// já está nos arquivos copiados): <code> +
-alias Rnox="nice -n 19 /home/users/est/paulojus/R/bin/R"  +
-source .bashrc +
-source .zshrc +
-</code> +
-Depois disto voce pode rodar processos **em qualquer máquina ** com:  +
-<code> +
-% Rnox CMD BATCH seu_programa.R & +
-</code> +
  
 +Depois de carregar o modulo do R voce poderá usar o programa de forma interativa simplesmente digitando 
 +  ccad:~> R
  
-==== Processos, logout, interrupções, etc ====+== Rodando como em "background" ("BATCH job"==
  
-**Usando o Z-shell (zsh)** se um processo em BATCH é iniciado com <code> +Lembrando usualmente trabalhos de R em background são submetidos com o modo BATCH  e o comando usual e acompanhamento do andamento do //job// é feito com:<code> 
-% Rnox CMD BATCH seu_programa.R & </code> +ccad:~> R CMD BATCH seu_programa.R & 
-ele será interrompido caso se voce se deslogar da máquina.+ccad:~> tail -f seu_programa.Rout 
 +</code> 
  
-Existem diferentes estratégias para contornar isto: +  No ''R'' sugere-se sempre colocar no seu programa comandos ''print()'' (por exemplo imprimir o número da simulaçãoque permitam que voce acompanhe o andamento com<code> 
-  Mudar o seu //shell// para o ''bash'' ([[lcpad#shell|ver sessão SHELL]] abaixo) +ccad:~> tail -f seu_programa.Rout
-  Utilizar ''disown'' ou ''nohup'' no //Z-shell// como nos exemplos a seguir (válido tanto para uso do ''R'' quanto ''Rnox'')<code> +
-a02% Rnox CMD BATCH ap.R  & +
-a02% disown % +
-a02% exit+
 </code> </code>
-//job// continua. Ou então:<code> +  - Numa máquina voce pode ver se processo está rodando com um dos seguintes comandos do linux: <code> 
-a02% nohup Rnox CMD BATCH ap.R  &+ccad:~> ps -u SEU_LOGIN  
 +ccad:~> top
 </code> </code>
  
-No caso do ''Rnox'' esta última solução pode ser //automatizada// mudando o seu //alias//  em ''.zshrc'' para:<code> +<note warning> Entretanto, para rodar no CCAD vamos adaptar este procedimento um pouco para seguir os padrões e aproveitar as vantagens do cluster. Ou seja, ao invés de fazer como descrito acima devemos submeter processos R da seguinte forma:</note> 
-alias Rnox="nice -n 19 nohup /home/users/est/paulojus/R/bin/R"  + 
-source .zshrc+Os passos básicos são (adaptar para suas configurações) 
 +  - Definir o ambiente de trabalho, basicamente: 
 +    * criar e entrar em um diretório para rodar o seu programa (substituir abaixo o nome deste diretório em ''SEU_DIRETORIO'')<code> 
 +ccad:~> mkdir SEU_DIRETORIO 
 +ccad:~> cd SEU_DIRETORIO
 </code> </code>
 +    * criar um arquivo de comandos em R (//script// R) com o que vai rodar tal como código de análise, simulação, etc. (substituir abaixo em ''seu_programa.R'')
 +  - Criar um arquivo (formato texto) para chamar o R com o seguinte conteúdo básico. Vamos chamar este arquivo de ''run.sh''.<code>
 +#!/bin/bash
 +#PBS -S /bin/bash               
 +#PBS -V              
 +#PBS -m ae                    
 +#PBS -M paulojus@leg.ufpr.br     
 +#PBS -l walltime=6:00:00
 +cd $PBS_O_WORKDIR
  
-==== SHELL ==== +R CMD BATCH seu_programa.R </code> 
-  * O LINUX utiliza ''interpretadores de comandos'' (chamados de //shell//) no terminal para executar as instruções dos usuáriosExistem diversos interpretadores de comandos que são muito semelhantes na sintaxe dos comandos mas possuem algumas diferenças entes eles. +  Submeter ao cluster <code> 
-    * O interpretador de comandos talvez mais comum (usado no LEG e instalação padrão de LINUX tais como debian e Ubuntu) é o ''bash'' (//born again shell//) e o arquivo de configuração na área do usuário é o ''.bashrc'' +ccad:~> qsub run.sh </code> 
-    * No LCPAD utiliza-se outro, o ''zsh'' (//Z-shell//) e o arquivo de configuração na área do usuário é o ''.zshrc'' +  - Monitorar progresso com<code> 
-      * na servidora principal ''lcpad.ufpr.,br'' é possível mudar o interpretador de comandos padrão com<code> +ccad:~qstat </code> 
-% chsh </code> +  - E também monitorar da forma usual o arquivo de saída do R<code> 
-       nas demais servidoras este comando não pode ser utilizado, mas pode-se trocar interpretador de comando para o ''bash'' digitando-se:<code> +ccad:~tail -f seu_programa.Rout
-a01% /bin/bash </codeE para retornar ao ''zsh'' basta digitar <code> +
-a01% /bin/zsh</code> +
-      * para fazer esta mudança parmanente e obter ''bash'' toda vez que acessar as máquinas voce pode colocar na ultima linha do seu arquivo ''.zshrc'' o comando de mudança de shell: <code> +
-/bin/bash </code> +
-  * se voce não quiser se preocupar com nada destas configurações pode ainda copiar os arquivos de configuração de PJ:<code> +
-% cp ../paulojus/.zshrc . +
-% cp ../paulojus/.bashrc .+
 </code> </code>
  
 +<note>Não esqueça de carregar o modulo do R  como descrito acima quando acessar a sua conta !!!</note>
  
-==== Acompanhando seus processo ==== 
-  - No ''R'' sugere-se sempre colocar no seu programa comandos ''print()'' (por exmeplo imprimir o número da simulação) que permitam que voce acompanhe o andamento com <code> 
-% tail -f seu_programa.Rout 
-</code> 
-  - Numa náuqina voce pode ver se o processo está rodando com um dos seguintes comandos do linux: <code> 
-% ps -u SEU_LOGIN  
-% top 
-</code> 
-  - O LCPAD disponibiliza ainda comandos para acompanha processos:<code> 
-% carga 
-% carga -u  
-% carga -U  
-% carga -j  
-</code> 
-  * A primeira forma mostra o //load// das máquinas. (útil para escolher em qual máquina está menos carregada submeter o próximo //job//), 
-  * a segunda mostra o número total de processos que o usuário está rodando em cada máquina, 
-  * a terceira mostra o número de processos do usuário que efetivamente consomem cpu.  
-  * a quarta sintaxe mostra o nome dos programas daquele usuário rodando em cada máquina. 
  
-==== Finalmente .... ==== +O CCAD disponibiliza informações adicionais sobre [[http://www.ccad.ufpr.br/wiki/index.php/Submiss%C3%A3o|submissão e controle de processos em sua página]].\\ 
-Vale insistir: não deixe  de digitar na servidora o comando abaixo para ter mais informações sobre recursos e uso do sistema!!!<code> +Se tiverem dicas de uso para o R coloquem aqui!!! 
-% normas </code>+ 
 +=== Tempo de processamento === 
 + 
 +Por //default// o CCAD interrompe os processos após uma (1) hora de processamento. 
 +No exemplo de arquivo ''run.sh'' acima já modificamos 
 +este tempo, para seis (6) horas, incluindo no seu arquivo: 
 +   #PBS -l walltime=6:00:00 
 +Ajuste este tempo de acordo com a sua necessidade. 
 + 
 +=== Pacotes do R === 
 +Pacotes adicionais podem ser instalados em sua conta se desejado. 
 +Entretanto para evitar replicação de instalações estamos centralizando a instalação de pacotes na conta de PJ. 
 +O módulo do R (''mod_R'') faz este direcionamento.  
 +  .libPaths("/home/paulojus/Rlibs"
 + 
 +Se precisar de algum pacote não instalado solicite por email para PJ.
  
  
 ==== Agradecimento ==== ==== Agradecimento ====
-Agradecemos ao Prof. Carlos Carvalho (Depto de Físicaapoio, instruções e soluções para uso do LCPAD.+Agradecemos ao Prof. Manoel Cunha (CESEC e Christian (POP) pelo apoio, instruções e soluções para uso do CCAD. 
 + 
 +==== Mais informações ==== 
 +Informações detalhadas na **[[http://www.ccad.ufpr.br|Página do CCAD]]** 
  

QR Code
QR Code dicas:ccad (generated for current page)