Tenho R rodando no Amazon EC2, usando uma versão modificada do AMI do biocondutor . Atualmente, estou usando o putty para ssh no meu servidor, iniciando o R na linha de comando e copiando e colando meu script do bloco de notas ++ na minha sessão do putty.
O problema é que eu odeio cortar e colar. Parece uma idade da pedra e ocasionalmente recebo problemas de buffer estranhos que estragam meu código. Não posso usar o RStudio , porque ele não suporta multicore , do qual dependo fortemente.
Qual é a maneira mais elegante de fazer isso?
/ Edit: Obrigado por todas as ótimas sugestões. Por enquanto, passei a usar o foreach com o back-end do doRedis, que funciona muito bem no meu Mac, no meu PC e na amazon via RStudio. Essa opção foi bem fácil depois que aprendi a escrever uma função que emula "lapply" usando "foreach". (Além disso, doRedis é incrível!)
Respostas:
Eu posso pensar em algumas maneiras. Já fiz isso bastante e aqui estão as maneiras que achei mais úteis:
fonte
doRedis
só podemos fazer coisas de redis; uma entrada enorme não é a única razão para cálculos de HPC.A maneira mais conveniente é apenas instalar o servidor VNC e algum ambiente leve como o XFCE e criar uma sessão virtual que você possa usar de onde quiser (persiste desconexões), ou seja, algo como isto:
As vantagens adicionais são que você pode usar a área de transferência local na área de trabalho virtual e ver R plotando muito mais rápido do que via encaminhamento do X11 ou cópia de arquivos de imagem.
É preciso algum esforço para configurar tudo certo (X init, túnel ssh), mas a Internet está cheia de tutoriais sobre como fazê-lo.
fonte
Não sei como o Amazon EC2 funciona; talvez minhas soluções simples não funcionem. Mas normalmente uso scp ou sftp (através do WinSCP, se estiver no Windows) ou git.
fonte
Eu usaria o rsync para enviar os scripts e arquivos de dados ao servidor, depois "nohup Rscript myscript.R> output.out &" para executar as coisas e, quando terminar, o rsync para obter os resultados.
fonte
screen
outmux
são melhores do quenohup
eles - eles também desanexam o script para que não seja eliminado pelo logout, mas permitem reconectar a sessão e recomeçar, mesmo a partir de outro computador cliente.tmux
pode até ser usado como um tipo de gerenciador de janelas em modo de texto.VIM + tmux + VIM Slime. Você obtém o melhor editor de texto e a capacidade de enviar código do editor para a linha de comando do R (como no Rstudio).
fonte
Eu uso o R Studio no EC2 o tempo todo, graças às AMIs criadas por Louis Aslett . Você não precisa conhecer nenhum SSH nem nada (além de R, é claro). Você só precisa de uma conta EC2. Como mencionado em uma das outras respostas, o R Studio suporta computação paralela, por exemplo , por meio do pacote foreach . Isso realmente permite aproveitar o poder do EC2. Usando uma instância otimizada para computação (32 núcleos), pude reduzir significativamente o tempo de treinamento para meus modelos de ML quase sem nenhum custo (alguns dólares por hora).
fonte