Elaborazione dati accelerata GPU per R in Windows


11

Attualmente sto prendendo un documento sui Big Data che ci fa usare R pesantemente per l'analisi dei dati. Mi capita di avere una GTX1070 nel mio PC per motivi di gioco. Quindi, ho pensato che sarebbe davvero bello se potessi usarlo per accelerare alcune delle elaborazioni per alcune delle cose che i miei docenti mi fanno fare, ma in realtà non sembra affatto facile farlo. Ho installato gpuR, CUDA, Rtools e alcuni altri bit e bob e posso ottenerlo per creare oggetti gpuMatrix dai dati dell'espressione genomica, ad esempio, ma devo ancora trovare una funzione che funzioni entrambi con gli oggetti gpuMatrix e fornisce anche qualsiasi notevole differenza nelle prestazioni. Forse questo si riferisce solo alle limitazioni inerenti al pacchetto gpuR: alcuni altri pacchetti sembrano parlare di avere funzioni che sembrano più simili al tipo di cosa che sto cercando,

Quasi tutti questi pacchetti sono esclusivamente per Linux, è particolarmente difficile implementare il supporto GPU per R in Windows? O c'è qualche altra ragione per cui ci sono così pochi pacchetti disponibili per farlo in Windows? In un certo senso sono solo curioso, ma sarebbe anche molto bello farlo funzionare davvero. Mi sorprende che ci sia così poco disponibile per Windows, di solito è il contrario.


1
Ho trovato il GPU Computing in Windows per essere impegnativo, indipendentemente dal linguaggio di programmazione. Gli strumenti hanno la tendenza a essere sviluppati in Linux o OS X. Potresti provare un sistema a doppio avvio con, diciamo, Linux Mint Cinnamon (la mia distribuzione preferita al momento, perché tutto funziona).
Adrian Keister,

Risposte:


4

Dalla mia esperienza, l'impostazione dell'elaborazione GPU per R è difficile, l'impostazione su un computer Windows è ancora più difficile. Inoltre, l'elaborazione della GPU può essere utilizzata solo per tipi di calcoli molto specifici.

Se vuoi solo configurare l'elaborazione della GPU per il gusto di farlo, allora la mia risposta è abbastanza inutile.

Se tuttavia ti interessa l'ottimizzazione generale delle prestazioni del tuo sistema e del tuo codice, ti consiglio di controllare i seguenti passaggi:

  • Usa Microsoft R Open invece di Base R perché abilita automaticamente l'elaborazione multicore sul tuo computer.

  • Vettorizza il tuo codice

  • Utilizzare librerie come data.table anziché dataframes

  • Evita oggetti in crescita

In generale, le prestazioni di R dipendono fortemente dalla qualità del codice. Un ottimo riassunto di ciò che puoi e dovresti fare è fornito in R Inferno da Patrick Burns.


Grazie per il commento. ho modificato la risposta di conseguenza.
jd1338,

Quindi il mio commento non è più utile.
42-
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.