DL4j 1.0.0-Beta6 Openblas не использует более одного потока - PullRequest
0 голосов
/ 24 января 2020

На моем тестовом сервере DL4j 1.0.0-Beta6 с Openblas использует только один поток. Первоначально это было сообщение о потоке, поэтому я экспортировал OMP_NUM_THREADS = 4, что заставило DL4j записывать правильное количество потоков при запуске:

[:19:30 CET 2020] org.nd4j.linalg.factory.Nd4jBackend      : Loaded [CpuBackend] backend
[:19:30 CET 2020] org.nd4j.nativeblas.NativeOpsHolder      : Number of threads used for linear algebra: 4
[:19:30 CET 2020] org.nd4j.nativeblas.Nd4jBlas             : Number of threads used for OpenMP BLAS: 4
[:19:30 CET 2020] o.n.l.a.o.e.DefaultOpExecutioner         : Backend used: [CPU]; OS: [Linux]
[:19:30 CET 2020] o.n.l.a.o.e.DefaultOpExecutioner         : Cores: [4]; Memory: [0.9GB];
[:19:30 CET 2020] o.n.l.a.o.e.DefaultOpExecutioner         : Blas vendor: [OPENBLAS]
[:19:30 CET 2020] o.d.nn.multilayer.MultiLayerNetwork      : Starting MultiLayerNetwork with WorkspaceModes set to [training: ENABLED; inference: ENABLED], cacheMode set to [DEVICE]

К сожалению, он все еще использует только 100% ЦП вместо ожидаемых 400% , То же приложение, работающее на моем ноутбуке с CUDA, работает нормально, nvidia-smi сообщает об использовании 7x%. Так что, похоже, это связано с настройкой Openblas на тест-сервере. Я помню какое-то время go с более старыми бета-версиями, когда полностью использовался процессор, который по умолчанию использовал MKL (который я больше не могу использовать, потому что в ЦП сервера нет AVX2).

Есть ли что-то не так с журналом выше или что я могу проверить?

1 Ответ

0 голосов
/ 24 января 2020

Было бы приятно увидеть ваш исходный код. Задайте вопрос, пожалуйста: https://github.com/deeplearning4j/deeplearning4j/issues

...