Linux 是什么原因使一个程序在两台计算机上运行,并且ipc(每秒仪器数)相差很大?

Linux 是什么原因使一个程序在两台计算机上运行,并且ipc(每秒仪器数)相差很大?,linux,performance,tensorflow,Linux,Performance,Tensorflow,我有一个程序(基于TensorFlow 1.14进行一些LSTM模型推断),它运行在两台硬件相同的机器上,一台性能较差,另一台性能较好(大约10xdiff) 我使用intel pqos工具诊断了两个进程,得到了一个大不相同的IPC号(一个是0.07,另一个是2.5),这两个进程都绑定在某个指定的CPU内核上,并且每台机器的负载都不重。这个问题出现在两周前,在这台坏机器正常工作之前,history命令没有显示任何配置更改 我检查了许多环境信息,包括内核、fs、进程调度器、io调度器、程序和库md5

我有一个程序(基于TensorFlow 1.14进行一些LSTM模型推断),它运行在两台硬件相同的机器上,一台性能较差,另一台性能较好(大约
10x
diff)

我使用intel pqos工具诊断了两个进程,得到了一个大不相同的IPC号(一个是
0.07
,另一个是
2.5
),这两个进程都绑定在某个指定的CPU内核上,并且每台机器的负载都不重。这个问题出现在两周前,在这台坏机器正常工作之前,history命令没有显示任何配置更改

我检查了许多环境信息,包括内核、fs、进程调度器、io调度器、程序和库md5,它们都是相同的,坏计算机显示无错误,程序主要消耗CPU

我使用sysbench测试了两台机器(cpu和内存),这两台机器的性能差异约为
25%
,坏机器的基本计算速度较慢。可能是硬件问题吗


我不知道导致IPC差异的根本原因是什么(相当于性能),我如何深入了解这种情况?

还有什么其他原因在运行?top展示了什么?什么是niceness?没有其他东西在两台机器上运行,top显示绑定CPU核心的100%使用率(几乎是用户空间),niceness是相同的值0。然后使用perf来分析是的,我也使用perf profile,perf top显示相同的堆栈,并且成本时间比例几乎相同,perf stat显示不同的周期,而较慢的一个在同一运行时间内使用了更多的周期。对于如此大的差异,可能一台机器是HDD,另一台是SSD?还有什么在运行?top展示了什么?什么是niceness?没有其他东西在两台机器上运行,top显示绑定CPU核心的100%使用率(几乎是用户空间),niceness是相同的值0。然后使用perf来分析是的,我也使用perf profile,perf top显示相同的堆栈,并且成本时间比例几乎相同,perf stat呈现不同的周期,而慢的一个在相同的运行时间内使用了更多的周期。对于如此大的差异,可能一台机器是HDD,而另一台是SSD?
OS:  Linux 4.4.198-1.el7.elrepo.x86_64
CPU: Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz * 4
MEM: 376 GB