ARM Graviton jsou 64 bitove procesory a lze na nich spustit i 32-bitovy kod (coz neni tak samozrejme jak to vypada). Tady jsou detaily z EC2 instance typu a1.micro:
$ cat /proc/cpuinfo processor : 0 BogoMIPS : 166.66 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid CPU implementer : 0x41 CPU architecture: 8 CPU variant : 0x0 CPU part : 0xd08 CPU revision : 3
$ lspci 00:00.0 Host bridge: Amazon.com, Inc. Device 0200 00:01.0 Serial controller: Amazon.com, Inc. Device 8250 00:04.0 Non-Volatile memory controller: Amazon.com, Inc. Device 8061 00:05.0 Ethernet controller: Amazon.com, Inc. Elastic Network Adapter (ENA)
https://aws.amazon.com/blogs/aws/new-ec2-instances-a1-powered-by-arm-based-aws-graviton-processors/
Jeste poznamka k 32-bit SW. Processory AWS Graviton sice umi 32-bit ARM instrukce, ale v Ubuntu defaulte chybi 32-bitova podpora, takze lze spoustet jen staticky linkovane programy. Aby bylo mozne spustit i dynamicky linkovane 32-bit programy programy, je treba udelat nasledujci:
sudo dpkg --add-architecture armhf sudo apt update sudo apt-get install libc6:armhf
Neni to samozrejme, protoze nepouziva stejne procesory jako RPI nebo Android telefony; Amazon navrhl vlastni procesor, specialne pro sve servery v AWS.
Tak treba jiny cloud provider, Scaleway, pouziva take 64-bitove ARM procesory Cavium ThunderX SoCs a ty proste 32-bitove instukce vubec neumi, zrejme kvuli optimalizaci plochy chipu.. Tady je detail toho ARM, ktery umi POUZE aarch64. Lze to snadno overit, statickou binarku kompilovanou na 32-bitovem ARM se spustit nepodari.
# file hello-32 hello-32: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, for GNU/Linux 2.6.32, BuildID[sha1]=862ce30edb15c4c4ea8abbb8467a6662244fec81, not stripped # ./hello-32 Segmentation fault
# cat /proc/cpuinfo processor : 0 BogoMIPS : 200.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics CPU implementer : 0x43 CPU architecture: 8 CPU variant : 0x1 CPU part : 0x0a1 CPU revision : 1
Amazon nic nenavrhnul, jenom poskladal procesor z hotovych sablon. Ano - behem skladani lze nektere veci naklikat - napr. zda chcete ty palacinky se slehackou nebo bez, ale vetsi zasahy ani prekotny vyvoj za timto neni. Volba starych jader nejspis spociva ve faktu, ze sami nic neudelali - jen koupili firmu co to mela do urcite miry rozjete.
Pokud je pravda, ze AMD Seattle bylo navrhovano pro Amazon, tak se divim ze to tenkrat nesplnovalo per watt efektivitu, kdyz to bylo 28nm.. tyhle Gravitony jsou nejspis 16nm.
Zde je priklad klikatka kterym se dany cpu konfiguruje:
https://developer.arm.com/products/system-design/cycle-models/knowledge-articles/comparing-arm-cortex-a72-and-cortex-a57
Ti lidi v Amazonu jsou vlastne strasne nesikovni, to klikani konfigurace jim trvalo skoro tri roky... ;-)
http://www.eenewseurope.com/news/amazon-deploys-arm-based-graviton-processor