Как я могу убедиться, что моя программа tenorFlow Java использует мой графический процессор на Windows? - PullRequest
0 голосов
/ 04 февраля 2020

Итак, у меня была реализация Java tenorFlow для CPU в Windows. Теперь, когда версии после tf 1.10 разрешают вычисления на GPU в windows, я попытался установить соединение. Теперь в maven pom я вызываю tennsflow_jni_gpu вместо tenorflow_jni. программа не выходит из строя, но, похоже, нет никакой разницы в вычислениях. Как я могу проверить, использует ли моя программа графический процессор или как заставить его использовать его?

1 Ответ

1 голос
/ 25 марта 2020

Чтобы использовать GPU, у вас должны быть следующие зависимости в POM, обеспечивающие libtensorflow, а не тензорный поток: `

<dependency>
    <groupId>org.tensorflow</groupId>
    <artifactId>libtensorflow</artifactId>
    <version>1.15.0</version>
</dependency>

<dependency>
    <groupId>org.tensorflow</groupId>
    <artifactId>libtensorflow_jni_gpu</artifactId>
    <version>1.15.0</version>
</dependency>

<dependency>
    <groupId>org.tensorflow</groupId>
    <artifactId>proto</artifactId>
    <version>1.15.0</version>
</dependency>

`

И следующий код:

byte[] config = ConfigProto.newBuilder()
            .setGpuOptions(GPUOptions.newBuilder().setAllowGrowth(true))
            .build().toByteArray();       
    final Runner runner = Session.runner();
    runner.setOptions(config);

Относительно того, работает ли он на ЦП или ГП, вы должны увидеть его в журнале приложений, либо не был создан тензор потока в отношении определенной инструкции ЦП, либо тензор потока может загрузить CUDA dll или, таким образом, в отношении ОС

...