<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Yao Ren Jie</title>
    <description>The latest articles on DEV Community by Yao Ren Jie (@yaorenjie).</description>
    <link>https://dev.to/yaorenjie</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F333747%2F51b1ee98-a0a6-427b-ab76-dcdae0f4c9c4.jpeg</url>
      <title>DEV Community: Yao Ren Jie</title>
      <link>https://dev.to/yaorenjie</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yaorenjie"/>
    <language>en</language>
    <item>
      <title>CPU/Memory benchmarks of AWS EC2 5/4/3/AMD series</title>
      <dc:creator>Yao Ren Jie</dc:creator>
      <pubDate>Sat, 13 Jun 2020 06:26:32 +0000</pubDate>
      <link>https://dev.to/yaorenjie/benchmarks-of-aws-ec2-5-4-3-series-1kpl</link>
      <guid>https://dev.to/yaorenjie/benchmarks-of-aws-ec2-5-4-3-series-1kpl</guid>
      <description>&lt;h1&gt;
  
  
  Background
&lt;/h1&gt;

&lt;p&gt;In this post, I will do a detailed benchmark of different type of AWS EC2 instances, to get below results:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Performance improvements from c5/r5/m5 to c4/r4/m4? (for c3/r3/m3, definitely we need to replace)&lt;/li&gt;
&lt;li&gt;Comparison between AMD and Intel instances? e.g m5 vs. m5a&lt;/li&gt;
&lt;li&gt;Multiple small instances or one big instance? e.g 4 * (4 CPU, 8GB Memory) or 1 * (16 CPU, 32GB Memory)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To simplify the spelling, we defined some terms here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;C-Series&lt;/em&gt; or &lt;em&gt;C&lt;/em&gt;: Computer Optimized Instances&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;M-Series&lt;/em&gt; or &lt;em&gt;M&lt;/em&gt;: General Purpose Instances&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;R-Series&lt;/em&gt; or &lt;em&gt;R&lt;/em&gt;: Memory Optimized Instances&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;5th-Gen/4th-Gen/3rd-Gen&lt;/em&gt;: 5th/4th/3rd generation instances&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  TL;DR
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;em&gt;5th-Gen&lt;/em&gt; as much as possible

&lt;ol&gt;
&lt;li&gt;
&lt;em&gt;5th-Gen&lt;/em&gt; has better performance in CPU and Memory. &lt;strong&gt;~25% faster&lt;/strong&gt; in CPU and &lt;strong&gt;10 times faster&lt;/strong&gt; in memory.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;5th-Gen&lt;/em&gt; is &lt;strong&gt;15% cheaper&lt;/strong&gt; than &lt;em&gt;4th-Gen&lt;/em&gt; - $0.231 per hour for c4.xlarge and $0.196 per hour for c5.xlarge in Singapore.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;Use &lt;em&gt;C-Series&lt;/em&gt; for CPU-bound applications, &lt;em&gt;C-Series&lt;/em&gt; CPU performance is &lt;strong&gt;~20% better&lt;/strong&gt; than &lt;em&gt;M/R-Series&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;AMD&lt;/em&gt; instances is &lt;strong&gt;20% faster&lt;/strong&gt; in CPU but &lt;strong&gt;25% slower&lt;/strong&gt; in Memory.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Conclusions
&lt;/h1&gt;

&lt;p&gt;Before I listed long introductions of benchmark and charts, I guess it is better to write down the conclusions first.&lt;/p&gt;

&lt;p&gt;After several benchmarks, we can have conclusions from chart and data:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Single-core CPU performance is almost the same in one series.&lt;/li&gt;
&lt;li&gt;Differences among &lt;em&gt;C/M/R-Series&lt;/em&gt; are not only the ratio between CPUs and memory - &lt;em&gt;C-Series&lt;/em&gt; is 1:2, &lt;em&gt;M-Series&lt;/em&gt; is 1:4; &lt;em&gt;R-Series&lt;/em&gt; is 1:8. &lt;em&gt;C-Series&lt;/em&gt; single-core performance is &lt;strong&gt;~20%&lt;/strong&gt; better than &lt;em&gt;M/R-Series&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;C-Series&lt;/em&gt; CPU Compute Optimized Instances CPU performance is &lt;strong&gt;~20%&lt;/strong&gt; better than &lt;em&gt;M-Series&lt;/em&gt; and &lt;em&gt;R-Series&lt;/em&gt; Instances.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;C/M/R-Series&lt;/em&gt; single-core performance in multiple-cores benchmark &lt;strong&gt;decay&lt;/strong&gt; significantly when testing cores &lt;strong&gt;bigger than half of cores&lt;/strong&gt; - performance running on all cores drops &lt;strong&gt;~20%&lt;/strong&gt; than running on less or equal to half of cores. This may be caused by over-sell of virtual machines.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Amazon Linux 2&lt;/em&gt; CPU performance is &lt;strong&gt;8%&lt;/strong&gt; better than &lt;em&gt;CentOS 7&lt;/em&gt;, &lt;em&gt;Ubuntu Server 18.04 LTS&lt;/em&gt; and &lt;em&gt;Ubuntu Server 16.04 LTS&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;5th-Gen&lt;/em&gt; memory performance is &lt;strong&gt;10 times faster&lt;/strong&gt; in sequential read/write than &lt;em&gt;4th-Gen&lt;/em&gt; and &lt;em&gt;3th-Gen&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;5th-Gen&lt;/em&gt; memory performance is &lt;strong&gt;2-3 times faster&lt;/strong&gt; in random read/write than &lt;em&gt;4th-Gen&lt;/em&gt; and &lt;em&gt;3th-Gen&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;C5-Series/R5-Series&lt;/em&gt; CPU is &lt;strong&gt;~25%&lt;/strong&gt; faster than &lt;em&gt;C4-Series/R4-Series&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;M5-Series&lt;/em&gt; CPU is &lt;strong&gt;~20%&lt;/strong&gt; faster than &lt;em&gt;M4-Series&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;C-Series&lt;/em&gt; memory performance is &lt;strong&gt;~8% faster&lt;/strong&gt; than &lt;em&gt;R-Series/M-Series&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;M-Series&lt;/em&gt; with AMD, CPU performance is &lt;strong&gt;~20% faster&lt;/strong&gt; than &lt;em&gt;M-Series&lt;/em&gt; with Intel.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;M-Series&lt;/em&gt; with AMD, memory performance is &lt;strong&gt;~25% slower&lt;/strong&gt; than &lt;em&gt;M-Series&lt;/em&gt; with Intel.&lt;/li&gt;
&lt;/ol&gt;

&lt;h1&gt;
  
  
  Preparations
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Benchmark Tools
&lt;/h2&gt;

&lt;p&gt;We used &lt;a href="https://github.com/akopytov/sysbench"&gt;Sysbench&lt;/a&gt; and &lt;a href="https://www.geekbench.com/"&gt;Geekbench&lt;/a&gt; to run the benchmarks.&lt;/p&gt;

&lt;p&gt;I read a lot of different benchmarks before and sometimes it is hard to understand because authors usually put my emphasis on the results, not the procedures. I think not only the benchmark results are important, also the procedures. So in this section I will write the commands which generated benchmark results. Please feel free to skip.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sysbench
&lt;/h3&gt;

&lt;p&gt;Sysbench is a scriptable multi-threaded benchmark tool based on LuaJIT. It is most frequently used for database benchmarks, but can also be used to create arbitrarily complex workloads that do not involve a database server.&lt;/p&gt;

&lt;p&gt;We will test on these aspects:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;cpu&lt;/strong&gt;: a simple CPU benchmark&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;memory&lt;/strong&gt;: a memory access benchmark&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  CPU benchmark commands
&lt;/h4&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;sysbench cpu &lt;span class="nt"&gt;--threads&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1 run
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Parameters:&lt;br&gt;
--threads, The total number of worker threads to create. Each thread will run on one CPU core.&lt;/p&gt;
&lt;h4&gt;
  
  
  Memory benchmark commands
&lt;/h4&gt;

&lt;p&gt;Memory tests will run for &lt;code&gt;read&lt;/code&gt; performance and &lt;code&gt;write&lt;/code&gt; performance in &lt;code&gt;seq&lt;/code&gt;(sequential) and  &lt;code&gt;rnd&lt;/code&gt;(random) mode.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;sysbench memory &lt;span class="nt"&gt;--memory-oper&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;read&lt;/span&gt; &lt;span class="nt"&gt;--memory-access-mode&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;seq &lt;/span&gt;run
sysbench memory &lt;span class="nt"&gt;--memory-oper&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;write &lt;span class="nt"&gt;--memory-access-mode&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;seq &lt;/span&gt;run
sysbench memory &lt;span class="nt"&gt;--memory-oper&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nb"&gt;read&lt;/span&gt; &lt;span class="nt"&gt;--memory-access-mode&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;rnd run
sysbench memory &lt;span class="nt"&gt;--memory-oper&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;write &lt;span class="nt"&gt;--memory-access-mode&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;rnd run
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h3&gt;
  
  
  Geekbench
&lt;/h3&gt;

&lt;p&gt;Geekbench is a cross-platform benchmark that measures your system's performance. It will run several built-in tests on Single-Core and Multiple-Cores. The results are shown one &lt;code&gt;Single-Core Score&lt;/code&gt; and one &lt;code&gt;Multi-Core Score&lt;/code&gt;, like below:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kC3Aipju--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xsmijbbwxpwpvorfvhkp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kC3Aipju--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xsmijbbwxpwpvorfvhkp.png" alt="Geekbench example result"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Benchmark commands
&lt;/h4&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd &lt;/span&gt;Geekbench-5.1.0-Linux/
./geekbench5
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;
  
  
  Benchmark Plans
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Single-core performance differences among different instance types
&lt;/h3&gt;

&lt;p&gt;According to AWS “C5 and C5d instances feature either the 1st or 2nd generation Intel Xeon Platinum 8000 series processor (Skylake-SP or Cascade Lake) with a sustained all core Turbo CPU clock speed of up to 3.6 GHz.”, we need to know which type has the best single-core performance.&lt;/p&gt;

&lt;p&gt;We will test on:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;c5 families:

&lt;ol&gt;
&lt;li&gt;c5.large&lt;/li&gt;
&lt;li&gt;c5.xlarge&lt;/li&gt;
&lt;li&gt;c5.2xlarge&lt;/li&gt;
&lt;li&gt;c5.4xlarge&lt;/li&gt;
&lt;/ol&gt;


&lt;/li&gt;
&lt;li&gt;m5 families:

&lt;ol&gt;
&lt;li&gt;m5.large&lt;/li&gt;
&lt;li&gt;m5.xlarge&lt;/li&gt;
&lt;li&gt;m5.2xlarge&lt;/li&gt;
&lt;li&gt;m5.4xlarge&lt;/li&gt;
&lt;/ol&gt;


&lt;/li&gt;
&lt;li&gt;r5 families

&lt;ol&gt;
&lt;li&gt;r5.large&lt;/li&gt;
&lt;li&gt;r5.xlarge&lt;/li&gt;
&lt;li&gt;r5.2xlarge&lt;/li&gt;
&lt;li&gt;r5.4xlarge&lt;/li&gt;
&lt;/ol&gt;


&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Multiple-cores performance is linear with cores number
&lt;/h3&gt;

&lt;p&gt;EC2 servers are always multiple-cores, and the pricing usually grows with cores linearly. For example, c5.large instances have 2 CPUs, $0.098 per hour; c5.xlarge instances have 4 CPUs, $0.196 per hour.&lt;/p&gt;

&lt;p&gt;In this test, we want to make sure the performance grows linearly, like the relation between pricing and cores. We only need to test single-core performance on different generations instances if multiple-cores performance is linear with cores number. It will save a lot of time and make the whole benchmark easier to understand.&lt;/p&gt;

&lt;p&gt;We will test on:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;c5.large&lt;/li&gt;
&lt;li&gt;c5.xlarge&lt;/li&gt;
&lt;li&gt;c5.2xlarge&lt;/li&gt;
&lt;li&gt;c5.4xlarge&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Performance of different Operating systems
&lt;/h3&gt;

&lt;p&gt;We will test single-core performance on different operating systems:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Amazon Linux 2&lt;/li&gt;
&lt;li&gt;CentOS 7 (x86_64) - with Updates HVM&lt;/li&gt;
&lt;li&gt;Ubuntu Server 18.04 LTS&lt;/li&gt;
&lt;li&gt;Ubuntu Server 16.04 LTS&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  c5/c4/c3, r5/r4/r3, m5/m4/m3
&lt;/h3&gt;

&lt;p&gt;This test is the main target for this benchmark - we want to know the performance improvements among c5/c4/c3, r5/r4/r3, m5/m4/m3.&lt;/p&gt;

&lt;p&gt;We will test on:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;c5.large, c4.large, c3.large&lt;/li&gt;
&lt;li&gt;r5.large, r4.large, r3.large&lt;/li&gt;
&lt;li&gt;m5.large, m4.large, m3.large&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  m5 vs. m5a
&lt;/h3&gt;

&lt;p&gt;“a” in m5a means AMD CPU, which is cheaper than Intel CPU. In this test we want to know the difference between AMD and Intel CPU.&lt;/p&gt;

&lt;p&gt;We will test on:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;m5.2xlarge - tested in previous test&lt;/li&gt;
&lt;li&gt;m5a.2xlarge&lt;/li&gt;
&lt;/ol&gt;

&lt;h1&gt;
  
  
  Results
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Single-core performance
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MBBjepoS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qmmqqt9wmpgptzt5xu86.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MBBjepoS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qmmqqt9wmpgptzt5xu86.png" alt="Single-core performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Multiple-cores performance and its decay
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mKp-D7sV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3l6d6o6y3oug9yoz2hxf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mKp-D7sV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3l6d6o6y3oug9yoz2hxf.png" alt="Multiple-cores performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  OS Performance
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NK25kA9k--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/v8v98n6zrifclvmm9b4s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NK25kA9k--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/v8v98n6zrifclvmm9b4s.png" alt="OS Performance of Sysbench"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0yeFzrOe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cgd9x8spirhuvlaialgt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0yeFzrOe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cgd9x8spirhuvlaialgt.png" alt="OS Performance of Geekbench"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  C-Series Performance - c5/c4/c3
&lt;/h2&gt;

&lt;h3&gt;
  
  
  CPU
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0yeFzrOe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cgd9x8spirhuvlaialgt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0yeFzrOe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cgd9x8spirhuvlaialgt.png" alt="C-Series CPU Performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Memory
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mncX5jgL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xnd7m0b42dakyqimmgho.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mncX5jgL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/xnd7m0b42dakyqimmgho.png" alt="C-Series Memory Performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  R-Series Performance - r5/r4/r3
&lt;/h2&gt;

&lt;h3&gt;
  
  
  CPU
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Xx6PRM_C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/udegsj4kv2gxfa5t2ytl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Xx6PRM_C--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/udegsj4kv2gxfa5t2ytl.png" alt="R-Series CPU Performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Memory
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--YVaI8uUG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qz57ya9yp0ko1su9fvne.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--YVaI8uUG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/qz57ya9yp0ko1su9fvne.png" alt="R-Series Memory Performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  M-Series Performance - m5/m4/m3
&lt;/h2&gt;

&lt;h3&gt;
  
  
  CPU
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SuWuon_9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/nhaqlbyarf0qmuk7xktj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SuWuon_9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/nhaqlbyarf0qmuk7xktj.png" alt="M-Series CPU Performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Memory
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SuWuon_9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/nhaqlbyarf0qmuk7xktj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SuWuon_9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/nhaqlbyarf0qmuk7xktj.png" alt="M-Series Memory Performance"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  References
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://docs.google.com/spreadsheets/d/1QpA1Ow7pUTcAuo-vMSRx4VhBzNlr0KPNhjO3z0H3pC4/edit?usp=sharing"&gt;Benchmark data in Google Sheets&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>benchmark</category>
    </item>
  </channel>
</rss>
