5 ms·
Completely agree... the only exception I've run into is that for small operations build tooling often doesn't work well with arm64. EG: GitHub actions can buil
by arecurrence 4y ago
Completely agree... the only exception I've run into is that for small operations build tooling often doesn't work well with arm64.
EG: GitHub actions can build a container in a few minutes in x64 or 35 minutes in arm64... likewise aws-cdk literally could not run an arm64 fargate ecs deployment for months after support was added (They simply did not support the required attribute in the container definition).
I would love to see this change as I've had nothing but great experiences with graviton for virtually anything arm supported.
- _joel 4y agoAre you building on arm64 natively or via qemu. A few mins vs 35 for the same roughish spec of CPU, seems a bit off, even with optimisation considerations. I've found arm64 builds on amd64 take longer when using one build context/arch (but doing multiple platforms), but that's as it's being emulated. It's the oppostite on my M1, the buildx amd64 takes longer.
- arecurrence 4y agooh it was with buildx (which uses qemu) as GitHub Actions run in x64. I was showing a specific example of arm64 build tooling challenges small startups encounter (Github Actions lack of arm job runners in this case). My arm64 builds on arm64 architecture scream.
- _joel 4y agoYou can do a self hosted runner on arm though, even on a Raspberry Pi (if inclined), so not sure it's prohibitively expensive to a startup, could even afford a spot graviton :D I've got to say though, I've not experience that delta in build times, even emulated on my machine.
- sofixa 4y ago> GitHub actions can build a container in a few minutes in x64 or 35 minutes in arm64 What type of container, and on what runner? That has not been my experience at all, a cross-compiling buildx build with Python and a bunch of libraries takes only slightly longer for arm64 than it did for x86.
- waych 4y agoMy favorite way to watch this slow down is to introduce some node workloads into the build workflow.