我使用带有TensorFlow后端的Keras来训练一个神经网络模型。这是一个简单的模型(从一个教程),一切都很好。模型预测了它应该采取的方式。只有tensorflow似乎在输出信息,我不知道我是否能够安全地忽略它/它意味着什么。有人能解释一下下面的输出告诉我们什么吗?尤其是从OMP开始的所有行我都不清楚。不赞成的警告并不真正让我担心。
Using TensorFlow backend.
OMP: Info #212: KMP_AFFINITY: decoding x2APIC ids.
OMP: Info #210: KMP_AFFINITY: Affinity capable, using global cpuid leaf 11 info
OMP: Info #154: KMP_AFFINITY: Initial OS proc set respected: 0-7
OMP: Info #156: KMP_AFFINITY: 8 available OS procs
OMP: Info #157: KMP_AFFINITY: Uniform topology
OMP: Info #179: KMP_AFFINITY: 1 packages x 4 cores/pkg x 2 threads/core (4 total cores)
OMP: Info #214: KMP_AFFINITY: OS proc to physical thread map:
OMP: Info #171: KMP_AFFINITY: OS proc 0 maps to package 0 core 0 thread 0
OMP: Info #171: KMP_AFFINITY: OS proc 1 maps to package 0 core 0 thread 1
OMP: Info #171: KMP_AFFINITY: OS proc 2 maps to package 0 core 1 thread 0
OMP: Info #171: KMP_AFFINITY: OS proc 3 maps to package 0 core 1 thread 1
OMP: Info #171: KMP_AFFINITY: OS proc 4 maps to package 0 core 2 thread 0
OMP: Info #171: KMP_AFFINITY: OS proc 5 maps to package 0 core 2 thread 1
OMP: Info #171: KMP_AFFINITY: OS proc 6 maps to package 0 core 3 thread 0
OMP: Info #171: KMP_AFFINITY: OS proc 7 maps to package 0 core 3 thread 1
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 5252 thread 0 bound to OS proc set 0
WARNING: Logging before flag parsing goes to stderr.
W0820 14:05:56.256548 5252 deprecation.py:323] From C:\Users\Gebruiker\Anaconda3\envs\Anaconda3.7\lib\site-packages\tensorflow\python\ops\nn_impl.py:180: add_dispatch_support.<locals>.wrapper (from tensorflow.python.ops.array_ops) is deprecated and will be removed in a future version.
Instructions for updating:
Use tf.where in 2.0, which has the same broadcast rule as np.where
2019-08-20 14:05:56.449349: I tensorflow/core/platform/cpu_feature_guard.cc:145] This TensorFlow binary is optimized with Intel(R) MKL-DNN to use the following CPU instructions in performance critical operations: AVX AVX2
To enable them in non-MKL-DNN operations, rebuild TensorFlow with the appropriate compiler flags.
2019-08-20 14:05:56.451182: I tensorflow/core/common_runtime/process_util.cc:115] Creating new thread pool with default inter op setting: 8. Tune using inter_op_parallelism_threads for best performance.
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 13256 thread 1 bound to OS proc set 2
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 5064 thread 2 bound to OS proc set 4
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 8904 thread 3 bound to OS proc set 6
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 9408 thread 4 bound to OS proc set 1
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 14360 thread 5 bound to OS proc set 3
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 14616 thread 6 bound to OS proc set 5
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 2692 thread 7 bound to OS proc set 7
OMP: Info #250: KMP_AFFINITY: pid 14400 tid 14172 thread 8 bound to OS proc set 0发布于 2019-08-20 14:23:40
OpenMP是将线程绑定到您的cpu以运行。这只是后勤产出,我不担心。您可以找到类似的输出文档化的这里。
Intel编译器的OpenMP*运行时库能够将OpenMP*线程绑定到物理处理单元。 本文将向您展示如何使用来自英特尔编译器的KMP_AFFINITY环境变量扩展,即高级关联接口,以确定机器拓扑,并根据处理器在机器中的物理位置将OpenMP*线程分配给处理器。 示例1: 您有一个启用了Intel超线程技术(Intel HT Technology)的四核系统。默认情况下,Intel编译器OpenMP*运行时库将创建8个线程,在操作系统提供的8个逻辑处理器上自由运行。
如前所述,基于物理CPU配置,线程被分配到不同的核心。
https://stackoverflow.com/questions/57573338
复制相似问题