1) if their managed services (RDS, DynamoDB, etc) can run on ARM and it provides a better price/performance ratio, they'll use that internally, thus needing less x86 hardware
2) if most customers can run on ARM (interpreted languages run out of the box, compiled ones need more effort but is still doable) and it's better priced than x86 there is less demand on x86 again.
I think Go needs a flag specified at compile time to work on ARM. Instead of `go build`, run `env GOOS=linux GOARCH=arm64 go build`.
Rust is similar, except it requires the appropriate toolchain to be installed first (1-liner).
It’s probably less effort what I’ve described because there are GitHub Actions that will generate appropriate binaries out of the box.
(This holds true for JS/python/… too.)
Just tell Go to use the appropriate cross compilation chain for the C bits, e.g. `apt install gcc-aarch64-linux-gnu` and set the `CC=aarch64-linux-gnu-gcc` environment variable to compile for arm64. Compilation becomes a bit slower, but it's still manageable.
It's that easy thanks to the foundations laid by the distribution that ships a solid cross-compiler setup (in this example, thank you Debian!) and of course the brilliance of the Go design and toolchain.
I do think x86 will be phased out as you suggest. I feel either Intels foundry division and/or chip designs for ARM and/or RISC-V will very likely get incorporated into Graviton-X (and similar) if only as a bargaining tactic between Intel vs TSMC and Intel vs Qualcomm vs ARM.
The biggest thing not being talked about that hurts Intel is AWS’ pool of Intel CPUs that currently run S3, SQS, Dynamo, etc (m3s, c4s, etc) all being released to the public and offered at such a discount (especially on the spot market) that new onprem purchases (i.e. new Intel chips) are not cost effective.
Disclaimer: I used to work at Amazon but never in AWS. This is all based on public speculation.