如何在Keras中使用TensorFlow后端指定其他GPU?

这个问题与如何让Keras使用Theano来利用多个GPU相关,但我的需求不是使用多个GPU,而是想指定特定的模型在哪个GPU上训练或运行。

我的nvidia-smi输出如下所示:

+------------------------------------------------------+                       | NVIDIA-SMI 361.42     Driver Version: 361.42         |                       |-------------------------------+----------------------+----------------------+| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC || Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. ||===============================+======================+======================||   0  Tesla K80           Off  | 0000:03:00.0     Off |                    0 || N/A   38C    P0    60W / 149W |  11354MiB / 11519MiB |      0%      Default |+-------------------------------+----------------------+----------------------+|   1  Tesla K80           Off  | 0000:04:00.0     Off |                    0 || N/A   37C    P0    71W / 149W |    224MiB / 11519MiB |      0%      Default |+-------------------------------+----------------------+----------------------+|   2  GeForce GTX 750 Ti  Off  | 0000:06:00.0      On |                  N/A || 40%   29C    P8     1W /  38W |    120MiB /  2047MiB |      0%      Default |+-------------------------------+----------------------+----------------------+

当然,这是在没有运行任何程序时的输出。我的问题是,我不确定如何在Keras中指定使用哪个GPU。当然,在TensorFlow中我们可以使用with tf.device('/cpu:1'):这种方式,但我不知道这如何与Keras集成。

谢谢!


回答:

除了在你的keras.json文件中指定tensorflow作为后端之外,你还可以通过环境变量CUDA_VISIBLE_DEVICES来限制使用的GPU数量和/或使用特定的GPU(http://acceleware.com/blog/cudavisibledevices-masking-gpus)。在这里你可以指定使用哪个GPU。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注