为什么t2.large的定价与m4.large相似?

时间:2016-12-11 10:57:44

标签: amazon-web-services amazon-ec2

他们都有2vcpus和8G ram。 但是使用t2.large,你只能使用单个vcpu的60%,两个vcpus的平均值都是30%。即使考虑“cpu credits”,t2.large似乎远比m4.large弱。

2 个答案:

答案 0 :(得分:9)

import tkinter root = tkinter.Tk() root.geometry("300x300") root.title("Try code") entry = tkinter.Entry(root) entry.pack() def on_button(): if entry.get() == "Screen""screen": slabel = tkinter.Label(root, text="Screen was entered") slabel.pack() else: tlabel = tkinter.Label(root, text="") tlabel.pack() button = tkinter.Button(root, text="Enter", command=on_button) button.pack() root.mainloop() 实例与t2实例之间的主要区别在于m4实例的突发性质。 (见T2 instance type documentation。)

虽然这些计算机具有相似的规格,但正在爆发的t2实例的性能比t2.large实例高出约<60%。。但是,如果实例耗尽信用,则其性能将受到限制。

有关说明,请参阅AWS re:Invent 2016的T2: From Startups to Enterprise, Performance for a Low Cost演示文稿。不同之处在演示文稿的7m:30s点进行了解释:

T2 performance comparison

答案 1 :(得分:0)

我本人对此进行了研究,无论您到哪里,每个人都在谈论爆裂。

但是事实是例如t2.largem4.large完全相同或大致相同。这意味着即使您在t2上爆裂,您也可以获得与m4上相同的效果。

但是,正如John Rotenstein所链接的视频所示,AWS声称您在t2上的性能仍然提高了60%。这是由于AWS定义vCPU的方式略有不同。

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html

  

每个vCPU都是CPU核心的线程,T2实例除外。

因此,在m4上,vCPU只是一个线程,而在t2上,您将获得一个完整核心。< br /> 2 vCPUs上的m4只是 1个具有2个线程的内核,而t2上的是{strong> 2个完整的内核,但没有超线程。

阅读/proc/cpuinfo时可以看到此内容。我使用此script使其更易于阅读:

t2.large:

  

CPU型号:Intel(R)Xeon(R)CPU E5-2676 v3 @ 2.40GHz 1 CPU,
  每个CPU 2个物理核心,总共2个逻辑CPU单元

m4.large:

  

CPU型号:Intel(R)Xeon(R)CPU E5-2686 v4 @ 2.30GHz 1 CPU,
  每个CPU 1个物理核心,总共2个逻辑CPU单元

因此,根据您的应用程序,在1个内核上使用2个超线程线程可能会导致与2个内核相同的性能,在其他用例中,这2个内核的性能最高可提高60%。

因此,似乎没有人提到或知道的这个小笔记在他们的文档中有所作为。 希望这能解决它。