В настоящее время я работаю над большими данными, в которых мы активно используем R для анализа данных. У меня в компьютере GTX1070 по игровым причинам. Таким образом, я подумал, что было бы действительно здорово, если бы я мог использовать это для ускорения обработки некоторых вещей, которые мои лекторы заставляют делать, но на самом деле это совсем не так просто. Я установил gpuR, CUDA, Rtools и несколько других битов и бобов, и я могу получить его для создания объектов gpuMatrix, например, из данных геномного выражения, но мне еще предстоит найти функцию, которая работает с объектами gpuMatrix. а также обеспечивает любую заметную разницу в производительности. Возможно, это относится только к ограничениям, присущим пакету gpuR - некоторые другие пакеты, похоже, говорят о наличии функций, которые звучат так, как будто они больше похожи на те вещи, которые я ищу,
Почти все эти пакеты предназначены исключительно для Linux, особенно сложно реализовать поддержку R для графических процессоров в Windows? Или есть какая-то другая причина, по которой в Windows так мало пакетов для этого? В каком-то смысле мне просто любопытно, но было бы очень здорово, чтобы все заработало. Это меня удивляет, что так мало доступны для Windows, как правило, это наоборот.
Ответы:
Исходя из моего опыта, настроить обработку GPU для R сложно, а настроить ее на компьютере с Windows еще сложнее. Кроме того, обработка GPU может использоваться только для очень специфических типов вычислений.
Если вы просто хотите настроить обработку GPU ради этого, тогда мой ответ совершенно бесполезен.
Однако, если вас беспокоит общая оптимизация производительности вашей системы и вашего кода, я советую проверить следующие шаги:
Используйте Microsoft R Open вместо Base R, потому что он автоматически включает многоядерную обработку на вашем компьютере.
Векторизация вашего кода
Используйте библиотеки, такие как data.table вместо dataframes
Избегайте растущих объектов
В целом, производительность R сильно зависит от качества вашего кода. Очень хорошее резюме о том, что вы можете и должны делать, предоставлено в R Inferno Патриком Бернсом.
источник