Processamento de dados acelerado por GPU para R no Windows

11

Atualmente, estou escrevendo um artigo sobre Big Data, que utiliza R fortemente para análise de dados. Por acaso tenho um GTX1070 no meu pc por motivos de jogos. Assim, achei que seria muito legal se eu pudesse usar isso para acelerar parte do processamento de algumas das coisas que meus professores me fazem, mas realmente não parece fácil fazer isso. Instalei gpuR, CUDA, Rtools e alguns outros bits e bobs e posso criar objetos gpuMatrix a partir de dados de expressão genômica, por exemplo, mas ainda não encontrei uma função que funcione com os objetos gpuMatrix e também fornece qualquer diferença notável no desempenho. Talvez isso esteja relacionado apenas às limitações inerentes ao pacote gpuR - alguns outros pacotes parecem falar em ter funções que parecem mais com o tipo de coisa que estou procurando,

Quase todos esses pacotes são exclusivamente para Linux, é particularmente difícil implementar o suporte de GPU para R no Windows? Ou existe algum outro motivo pelo qual existem tão poucos pacotes disponíveis para fazer isso no Windows? Em certo sentido, estou curioso, mas também seria muito legal realmente fazê-lo funcionar. Surpreende-me que haja tão pouco disponível para o Windows, geralmente é o contrário.

Jesse Maher
fonte
1
Eu achei a computação de GPU no Windows um desafio, independentemente da linguagem de programação. As ferramentas tendem a ser desenvolvidas no Linux ou no OS X. Você pode tentar um sistema de inicialização dupla com, digamos, o Linux Mint Cinnamon (minha distro favorita no momento, porque tudo funciona).
Adrian Keister

Respostas:

4

Pela minha experiência, configurar o processamento de GPU para R é difícil, configurá-lo em uma máquina Windows é ainda mais difícil. Além disso, o processamento da GPU pode ser usado apenas para tipos muito específicos de cálculos.

Se você apenas deseja configurar o processamento da GPU por causa disso, minha resposta é bastante inútil.

No entanto, se você se preocupa com a otimização geral do desempenho do seu sistema e seu código, aconselhamos verificar as seguintes etapas:

  • Use o Microsoft R Open em vez do Base R, pois ele habilita automaticamente o processamento multicore na sua máquina.

  • Vetorize seu código

  • Use bibliotecas como data.table em vez de quadros de dados

  • Evite objetos em crescimento

Em geral, o desempenho de R depende muito da qualidade do seu código. Um resumo muito bom sobre o que você pode e deve fazer é fornecido no R Inferno por Patrick Burns.

jd1338
fonte
Obrigado pelo comentário. eu mudei a resposta de acordo.
Jd1338 # 11/19
Então meu comentário não é mais útil.
42-