我与用于远程站点数据采集的6台Mac minis进行交互。我写了一个bash脚本,它使用了bash" find"用于制作数据文件清单的实用程序,但我发现在两台计算机上,"找到"步骤比其他步骤慢约100倍。
我使用的测试命令是:
time find . -type f > /dev/null
一台计算机需要0.5秒才能找到201,000个文件;另一个需要49秒才能找到184,000个文件。
我检查过数据目录中的文件和子目录的数量大致相同。操作系统很旧,但是慢速计算机运行的是较新的OSX(10.8.5)而不是速度较快的计算机(10.6.8)。最慢的计算机有2.5 GHz处理器和4 GB RAM;最快的计算机有2.4 GHz处理器和2 GB RAM。所有计算机都运行相同版本的相同专有数据采集软件,处理负载相似。
我还使用" dd"进行了光盘写入速度测试,如http://www.amsys.co.uk/2013/04/using-command-line-to-benchmark-disks/所示。系统之间没有真正的区别。
因此,如果它不是操作系统或硬件,并且找到的文件数量大致相同,那么可以解释性能上如此巨大的差异呢?