看到 AWS 推出使用 ARM 架構的 EC2 instance 了:「New – EC2 Instances (A1) Powered by Arm-Based AWS Graviton Processors」。
在 Quick Start 頁面有 Ubuntu 18.04 (ARM) 可以選,開起來後操作跟標準的 Ubuntu 差不多... 連進去後 uname -a
可以看到是 aarch64:
ubuntu@ip-172-30-2-207:~$ uname -a
Linux ip-172-30-2-207 4.15.0-1028-aws #29+nutmeg8-Ubuntu SMP Tue Nov 20 02:59:41 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
然後來看硬體規格,從最大台的 a1.4xlarge
來看是 16 vCPU + 32 GB RAM,定價是 $0.408/hr (這邊都拿 us-east-1
比較)。
對照 General Purpose 的 m5.4xlarge
是 16 vCPU + 60 GB RAM,定價是 $0.768/hr。如果看記憶體比較接近的 m5.2xlarge
則是 8 vCPU + 31 GB RAM,定價是 $0.384/hr。
對照 Compute Optimized 的 c5.4xlarge
是 16 vCPU + 68 GB RAM,定價是 $0.68/hr。
實際跑一些測試,包括 md5、sha256 與 aes (最後 aes 這個通常都有硬體加速),都用 -mutli 16
跑。
ARM 的 a1.4xlarge
:
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
md5 1064103.21k 2484789.44k 4436178.60k 5521370.45k 5943380.65k 5963896.15k
sha256 2059690.93k 5652827.82k 11792656.30k 16108863.15k 18086602.36k 18250851.29k
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
aes-128 cbc 1593981.48k 1723960.38k 1752940.20k 1767321.94k 1770212.01k 1768281.43k
aes-192 cbc 1400010.40k 1496414.83k 1516962.99k 1527643.82k 1529834.15k 1527563.26k
aes-256 cbc 1222067.79k 1296972.50k 1313348.18k 1321350.83k 1322947.93k 1321850.20k
blowfish cbc 1384982.01k 1500548.63k 1529793.02k 1540091.22k 1540937.05k 1540767.74k
Intel 的 m5.4xlarge
:
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
md5 1370869.17k 3276978.66k 5929591.13k 7441276.93k 8026330.45k 8071796.05k
sha256 592719.47k 1325135.04k 2506009.09k 3184234.50k 3455729.66k 3480365.74k
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
aes-128 cbc 1060996.96k 1121951.87k 1135376.21k 1141487.96k 1143270.06k 1143499.43k
aes-192 cbc 890438.97k 934047.98k 943446.44k 947576.49k 948857.51k 949026.82k
aes-256 cbc 768686.53k 800152.85k 806883.93k 809804.12k 810784.09k 810937.00k
blowfish cbc 1735490.97k 1884059.78k 1923876.10k 1932711.94k 1934477.99k 1928680.79k
Intel 的 c5.4xlarge
:
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
md5 1501870.92k 3593434.20k 6503591.25k 8162811.90k 8804605.95k 8855147.86k
sha256 650179.22k 1453635.18k 2749318.83k 3492912.13k 3791164.76k 3818105.51k
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
aes-128 cbc 1163898.98k 1230539.07k 1244414.63k 1252080.98k 1254110.55k 1254206.12k
aes-192 cbc 976610.23k 1024570.03k 1034886.66k 1039442.26k 1040872.79k 1041143.13k
aes-256 cbc 843184.42k 877695.30k 885125.46k 888408.06k 889503.74k 889766.83k
blowfish cbc 1877162.34k 2056925.74k 2107008.26k 2119893.67k 2121979.22k 2115720.53k
這些數字頗有趣的... 看起來 ARM 上面應該有對某些演算法加速,使得常見的情境會快很多。不過如果是其他應用的話看起來就會比較辛苦了... 目前就價錢來看未必有絕對的優勢,還是得看應用來決定。