Scalability 在虚拟化环境中测量时间

Scalability 在虚拟化环境中测量时间,scalability,virtualization,time-measurement,Scalability,Virtualization,Time Measurement,我使用一些共享内存库(例如openmp、tbb等)开发了一系列的微基准,以检查它们如何根据线程数量的变化进行缩放 目前我在一个4核处理器上运行它们,结果相当合理,但在加速图上我只得到了3分 为了获得更多的数据和更广泛的分析,我计划在32核的机器上运行它们 其中一个可能性是购买32核处理器,比如AMD Epyc或Intel Xeon,它们有点贵,但我知道我会得到什么。 我的第二个也是较便宜的选择是在云上运行它们,比如AmazonAWS或MicrosoftAzure 然后,在做出选择之前,我需要一些

我使用一些共享内存库(例如openmp、tbb等)开发了一系列的微基准,以检查它们如何根据线程数量的变化进行缩放

目前我在一个4核处理器上运行它们,结果相当合理,但在加速图上我只得到了3分

为了获得更多的数据和更广泛的分析,我计划在32核的机器上运行它们

其中一个可能性是购买32核处理器,比如AMD Epyc或Intel Xeon,它们有点贵,但我知道我会得到什么。 我的第二个也是较便宜的选择是在云上运行它们,比如AmazonAWS或MicrosoftAzure

然后,在做出选择之前,我需要一些澄清:

据我所知,AWS可以让一台机器拥有我想要的任意多个内核,但它们都是虚拟化的

当我运行应用程序时,它的执行时间度量有多可靠


我能否获得与在真正的32核处理器上运行应用程序时相同的可伸缩性?

从数十年的虚拟化性能经验来看,这是一个需要谨慎的领域。这在很大程度上取决于您的虚拟机与其他虚拟机之间的争用程度,在许多云环境中,没有工具很难知道这一点。 此外,还不清楚您是否在讨论运行时间和/或处理器时间。两者都会受到虚拟化的影响,尽管我的经验是,经过的时间更加多变。 我不能谈论列出的环境,但在IBMz虚拟化解决方案中,我们提供的指标涵盖了虚拟机和虚拟机监控程序所消耗的处理器时间。出于您的目的,您只希望虚拟机使用这些功能。对不起,我不知道你提到的任何一个平台是否提供了这些信息。 在这些类型的实验中,我们经常发现进行更多的测量迭代以查看运行时的可变性是有用的