По крайней мере, вплоть до CSS3, включая CSS3, вы не можете выбрать это. Но это может быть сделано довольно легко в настоящее время в JS, вам просто нужно добавить немного ванильного JavaScript, обратите внимание, что код довольно короткий.
cells = document.querySelectorAll('div');
[].forEach.call(cells, function (el) {
//console.log(el.nodeName)
if (el.hasChildNodes() && el.firstChild.nodeName=="A") {
console.log(el)};
});
<div>Peter</div>
<div><a href="#">Jackson link</a></div>
<div>Philip</div>
<div><a href="#">Pullman link</a></div>
Если вы хотите заставить Keras использовать CPU
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID" # see issue #152
os.environ["CUDA_VISIBLE_DEVICES"] = ""
до импорта Keras / Tensorflow.
Запустите свой скрипт как
$ CUDA_VISIBLE_DEVICES="" ./your_keras_code.py
См. также
Просто импортируйте shadowortflow и используйте keras, это так просто.
import tensorflow as tf
# your code here
with tf.device('/gpu:0'):
model.fit(X, y, epochs=20, batch_size=128, callbacks=callbacks_list)
tf.device('/cpu:0')
, я все еще вижу, что память выделяется на python позже с помощью nvidia-smi
.
– CMCDragonkai
27 April 2018 в 03:04
Я просто потратил некоторое время на это. Ответ Томы не завершен. Скажите, что ваша программа test.py
, вы хотите использовать gpu0 для запуска этой программы и не допускать других gpus.
Вы должны написать CUDA_VISIBLE_DEVICES=0 python test.py
Обратите внимание, что это DEVICES
не DEVICE
Довольно изящным и разделяемым способом этого является использование
import tensorflow as tf
from keras import backend as K
num_cores = 4
if GPU:
num_GPU = 1
num_CPU = 1
if CPU:
num_CPU = 1
num_GPU = 0
config = tf.ConfigProto(intra_op_parallelism_threads=num_cores,\
inter_op_parallelism_threads=num_cores, allow_soft_placement=True,\
device_count = {'CPU' : num_CPU, 'GPU' : num_GPU})
session = tf.Session(config=config)
K.set_session(session)
Здесь, где booleans
GPU
и CPU
вы можете указать, следует ли использовать GPU или GPU при запуске код. Обратите внимание, что я делаю это, указав, что есть 0 графических устройств, когда я хочу просто использовать CPU. В качестве дополнительного бонуса с помощью этого метода вы можете указать, сколько графических процессоров и процессоров использовать тоже! Кроме того, через num_cores
вы можете установить количество ядер процессора.
Все это выполняется в конструкторе моего класса перед любыми другими операциями и полностью отделяется от любой модели или другой код я использую.
Единственное, что нужно отметить, это то, что вам понадобятся tensorflow-gpu
и cuda
/ cudnn
, потому что вы всегда даете возможность использовать графический процессор.
Это должно заставить tensorflow
использовать CPU
:
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID" # see issue #152
os.environ["CUDA_VISIBLE_DEVICES"] = "-1"
Это сработало для меня (win10), место перед импортом keras:
import os
os.environ['CUDA_VISIBLE_DEVICES'] = '-1'
В соответствии с keras учебником вы можете просто использовать ту же область tf.device
, что и в обычном тензорном потоке:
with tf.device('/gpu:0'):
x = tf.placeholder(tf.float32, shape=(None, 20, 64))
y = LSTM(32)(x) # all ops in the LSTM layer will live on GPU:0
with tf.device('/cpu:0'):
x = tf.placeholder(tf.float32, shape=(None, 20, 64))
y = LSTM(32)(x) # all ops in the LSTM layer will live on CPU:0
with
может быть любым кодом Keras.
– sygi
20 November 2016 в 00:06
os.environ['CUDA_VISIBLE_DEVICES'] = '-1'
, как в ответе ниже – desertnaut 11 October 2017 в 12:13