Estoy trabajando en el modelo Seq2Seq usando LSTM de Keras (usando el fondo Theano) y me gustaría paralelizar los procesos, porque incluso unos pocos MB de datos necesitan varias horas para el entrenamiento.
Está claro que las GPU son mucho mejores en paralelo que las CPU. Por el momento, solo tengo CPU para trabajar. Pude acceder a 16 CPU (2 subprocesos por núcleo X 4 núcleos por socket X 2 sockets)
Desde el documento de soporte multi-core en Theano, logré usar los cuatro núcleos de un solo socket. Entonces, básicamente la CPU tiene un uso del 400% con 4 CPU usadas y las 12 CPU restantes permanecen sin usar. ¿Cómo hago uso de ellos también? Tensorflow también podría usarse en lugar del fondo Theano, si funciona.
fuente