AWS のクレジットが使い切れないので、興味があったけど使ったことがない、c7g インスタンス(AWS Graviton3 プロセッサ)を試してみたいと思います。
せっかくなので、c6g インスタンス(AWS Graviton2 プロセッサ)と比べてみたいと思います。
クレジットが余っているとはいえ、基本的にケチなので一番安いバージニア北部の medium サイズを使って比較してみます。あと、参考におもちゃで使っている t4g.nano も比べてみよう。
まずは、表面的なスペックから。
インスタンス名 | オンデマンドの時間単価 | vCPU | メモリ | ストレージ | ネットワークパフォーマンス |
---|---|---|---|---|---|
c6g.medium | 0.0340 USD | 1 | 2GiB | EBS のみ | 最大 10 ギガビット |
c7g.medium | 0.0363 USD | 1 | 2GiB | EBS のみ | 最大 12500 メガビット |
t4g.nano | 0.0042 USD | 2 | 0.5GiB | EBS のみ | 最大 5 ギガビット |
vCPU数やストレージは変わりませんが、ネットワークパフォーマンスは25%向上しています。
30日間使った場合の費用は、1ドル135円として、c6g.medium が 3,305円、c7g.medium が 3,528円、t4g.nano が 408円。
※2022/12/09 時点
続いて、lscpu で表示される内容を比較。
c6g の結果。※t4g も vCPU が2つになるだけで、同様の結果。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Architecture: aarch64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 1 On-line CPU(s) list: 0 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 1 NUMA node(s): 1 Vendor ID: ARM Model: 1 Model name: Neoverse-N1 Stepping: r3p1 BogoMIPS: 243.75 L1d cache: 64K L1i cache: 64K L2 cache: 1024K L3 cache: 32768K NUMA node0 CPU(s): 0 Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp ssbs |
続いて、c7g の結果。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Architecture: aarch64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 1 On-line CPU(s) list: 0 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 1 NUMA node(s): 1 Vendor ID: ARM Model: 1 Stepping: r1p1 BogoMIPS: 2100.00 L1d cache: 64K L1i cache: 64K L2 cache: 1024K L3 cache: 32768K NUMA node0 CPU(s): 0 Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm ssbs paca pacg dcpodp svei8mm svebf16 i8mm bf16 dgh rng |
BogoMIPS の値が、243.75 から 2100.00 になってる。キャッシュの量は変わらず。
Flags にある、命令セットがたくさん増えてる。
続いて、BYTE UNIX Benchmarks の結果を見てみた。
結果の読み方はとても分かりやすく説明されているサイトがあったので参考にさせていただきました。
まずは、c6g の結果。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
======================================================================== BYTE UNIX Benchmarks (Version 5.1.3) System: c6g: GNU/Linux OS: GNU/Linux -- 5.10.147-133.644.amzn2.aarch64 -- #1 SMP Fri Oct 14 01:16:25 UTC 2022 Machine: aarch64 (aarch64) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") CPU 0: (243.8 bogomips) 13:43:07 up 48 min, 1 user, load average: 0.02, 0.02, 0.00; runlevel 2022-12-09 ------------------------------------------------------------------------ Benchmark Run: Fri Dec 09 2022 13:43:07 - 14:11:04 1 CPU in system; running 1 parallel copy of tests Dhrystone 2 using register variables 41094978.0 lps (10.0 s, 7 samples) Double-Precision Whetstone 5935.2 MWIPS (9.6 s, 7 samples) Execl Throughput 6029.0 lps (29.9 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 951893.0 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 264759.1 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 2552536.2 KBps (30.0 s, 2 samples) Pipe Throughput 1508856.2 lps (10.0 s, 7 samples) Pipe-based Context Switching 285421.9 lps (10.0 s, 7 samples) Process Creation 13347.8 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 6701.4 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 900.5 lpm (60.0 s, 2 samples) System Call Overhead 1130191.9 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 41094978.0 3521.4 Double-Precision Whetstone 55.0 5935.2 1079.1 Execl Throughput 43.0 6029.0 1402.1 File Copy 1024 bufsize 2000 maxblocks 3960.0 951893.0 2403.8 File Copy 256 bufsize 500 maxblocks 1655.0 264759.1 1599.8 File Copy 4096 bufsize 8000 maxblocks 5800.0 2552536.2 4400.9 Pipe Throughput 12440.0 1508856.2 1212.9 Pipe-based Context Switching 4000.0 285421.9 713.6 Process Creation 126.0 13347.8 1059.4 Shell Scripts (1 concurrent) 42.4 6701.4 1580.5 Shell Scripts (8 concurrent) 6.0 900.5 1500.8 System Call Overhead 15000.0 1130191.9 753.5 ======== System Benchmarks Index Score 1516.3 |
続いて、c7g の結果。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
======================================================================== BYTE UNIX Benchmarks (Version 5.1.3) System: c7g: GNU/Linux OS: GNU/Linux -- 5.10.147-133.644.amzn2.aarch64 -- #1 SMP Fri Oct 14 01:16:25 UTC 2022 Machine: aarch64 (aarch64) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") CPU 0: (2100.0 bogomips) 13:43:08 up 1:25, 1 user, load average: 0.01, 0.03, 0.00; runlevel 2022-12-09 ------------------------------------------------------------------------ Benchmark Run: Fri Dec 09 2022 13:43:08 - 14:11:03 1 CPU in system; running 1 parallel copy of tests Dhrystone 2 using register variables 54076757.1 lps (10.0 s, 7 samples) Double-Precision Whetstone 6533.5 MWIPS (9.6 s, 7 samples) Execl Throughput 5690.6 lps (30.0 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 1019266.7 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 276674.6 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 3216582.6 KBps (30.0 s, 2 samples) Pipe Throughput 1535633.0 lps (10.0 s, 7 samples) Pipe-based Context Switching 340877.7 lps (10.0 s, 7 samples) Process Creation 12815.0 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 7809.8 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 1069.9 lpm (60.0 s, 2 samples) System Call Overhead 995576.8 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 54076757.1 4633.8 Double-Precision Whetstone 55.0 6533.5 1187.9 Execl Throughput 43.0 5690.6 1323.4 File Copy 1024 bufsize 2000 maxblocks 3960.0 1019266.7 2573.9 File Copy 256 bufsize 500 maxblocks 1655.0 276674.6 1671.7 File Copy 4096 bufsize 8000 maxblocks 5800.0 3216582.6 5545.8 Pipe Throughput 12440.0 1535633.0 1234.4 Pipe-based Context Switching 4000.0 340877.7 852.2 Process Creation 126.0 12815.0 1017.1 Shell Scripts (1 concurrent) 42.4 7809.8 1841.9 Shell Scripts (8 concurrent) 6.0 1069.9 1783.1 System Call Overhead 15000.0 995576.8 663.7 ======== System Benchmarks Index Score 1649.4 |
ゆらぎはありそうですが、やっぱり全般的に10~30%くらい向上している感じ。
c6g と c7g の1か月の利用料金は220円ほど c7g が高くなりますので、処理速度をそれほど求めないような用途であれば、まだまだ c6g も選択肢に入ると思います。
あと、t4g は最小構成でも vCPU が2つになってしまうので、単純に比較できませんが、参考までに。今回はCPUクレジット満タンで試しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
======================================================================== BYTE UNIX Benchmarks (Version 5.1.3) System: mail.e-kamo.net: GNU/Linux OS: GNU/Linux -- 5.10.149-133.644.amzn2.aarch64 -- #1 SMP Tue Oct 18 16:52:38 UTC 2022 Machine: aarch64 (aarch64) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") CPU 0: (243.8 bogomips) CPU 1: (243.8 bogomips) 13:46:01 up 1 day, 52 min, 1 user, load average: 0.07, 0.02, 0.00; runlevel 2022-12-08 ------------------------------------------------------------------------ Benchmark Run: Fri Dec 09 2022 13:46:01 - 14:13:57 2 CPUs in system; running 1 parallel copy of tests Dhrystone 2 using register variables 40869766.2 lps (10.0 s, 7 samples) Double-Precision Whetstone 5924.2 MWIPS (9.6 s, 7 samples) Execl Throughput 5715.5 lps (30.0 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 900301.7 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 256153.2 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 2294460.2 KBps (30.0 s, 2 samples) Pipe Throughput 1443659.9 lps (10.0 s, 7 samples) Pipe-based Context Switching 49439.0 lps (10.0 s, 7 samples) Process Creation 8437.6 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 7340.1 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 1511.4 lpm (60.0 s, 2 samples) System Call Overhead 1096517.1 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 40869766.2 3502.1 Double-Precision Whetstone 55.0 5924.2 1077.1 Execl Throughput 43.0 5715.5 1329.2 File Copy 1024 bufsize 2000 maxblocks 3960.0 900301.7 2273.5 File Copy 256 bufsize 500 maxblocks 1655.0 256153.2 1547.8 File Copy 4096 bufsize 8000 maxblocks 5800.0 2294460.2 3956.0 Pipe Throughput 12440.0 1443659.9 1160.5 Pipe-based Context Switching 4000.0 49439.0 123.6 Process Creation 126.0 8437.6 669.6 Shell Scripts (1 concurrent) 42.4 7340.1 1731.2 Shell Scripts (8 concurrent) 6.0 1511.4 2518.9 System Call Overhead 15000.0 1096517.1 731.0 ======== System Benchmarks Index Score 1290.7 ------------------------------------------------------------------------ Benchmark Run: Fri Dec 09 2022 14:13:57 - 14:41:55 2 CPUs in system; running 2 parallel copies of tests Dhrystone 2 using register variables 81153538.2 lps (10.0 s, 7 samples) Double-Precision Whetstone 11738.4 MWIPS (9.6 s, 7 samples) Execl Throughput 9294.2 lps (30.0 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 1264512.3 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 366646.8 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 3139570.4 KBps (30.0 s, 2 samples) Pipe Throughput 2921869.3 lps (10.0 s, 7 samples) Pipe-based Context Switching 443937.1 lps (10.0 s, 7 samples) Process Creation 20573.0 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 11220.5 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 1550.6 lpm (60.0 s, 2 samples) System Call Overhead 1866053.5 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 81153538.2 6954.0 Double-Precision Whetstone 55.0 11738.4 2134.3 Execl Throughput 43.0 9294.2 2161.4 File Copy 1024 bufsize 2000 maxblocks 3960.0 1264512.3 3193.2 File Copy 256 bufsize 500 maxblocks 1655.0 366646.8 2215.4 File Copy 4096 bufsize 8000 maxblocks 5800.0 3139570.4 5413.1 Pipe Throughput 12440.0 2921869.3 2348.8 Pipe-based Context Switching 4000.0 443937.1 1109.8 Process Creation 126.0 20573.0 1632.8 Shell Scripts (1 concurrent) 42.4 11220.5 2646.3 Shell Scripts (8 concurrent) 6.0 1550.6 2584.3 System Call Overhead 15000.0 1866053.5 1244.0 ======== System Benchmarks Index Score 2439.8 |
t4g はバースト可能なインスタンスタイプで、CPUクレジットという考え方があって、これが残っていれば全力疾走(バースト)してくれるんだけど、頑張り続けるとCPUクレジットが少しずつ減っていって、これがなくなると、走るどころか歩くのもしんどい感じで、メチャクチャ遅くなります。お金で解決もできるけど、もったいない。そんなにアクセスがない、個人のブログなら、月に400円くらいですし、パフォーマンスも高いし、これでいい気がしています。
参考まで。
結局のところ、t4g でいいかなと再認識しました。