pq-code-package / tsc

PQ Code Project Technical Steering Committee resources
https://pq-code-package.github.io/tsc/
Creative Commons Attribution 4.0 International
4 stars 4 forks source link

Access to ARM github runners #55

Open planetf1 opened 1 month ago

planetf1 commented 1 month ago

Currently the open-quantum-safe team is using circleci to build arm code.

Github made ARM64 runners available this year. Though initially private beta (Feb-Jun), our organization has access . However we don't currently have funding for the usage.

Related:

mkannwischer commented 1 month ago

Thanks for bringing this up @planetf1. Testing on github's AArch64 runners sounds useful in general, but I'd assume we cannot reliably benchmark on there.

For the mlkem-c-aarch64, we will require benchmarking (at least on the platforms we are targeting) and I hope that we can get that done by CI as well (see https://github.com/pq-code-package/mlkem-c-aarch64/issues/34). If we have that up there is little to no benefit running on Github's AArch64 runners as well.

So unless it's low effort and negligible cost, I don't think mlkem-c-aarch64 or mlkem-c-embedded need access to the Github AArch64 runners for now.

We do have some experience with emulating AArch64 using qemu running on the default Github runners: https://github.com/slothy-optimizer/pqax/blob/main/.github/workflows/tests.yaml. That is free, but of course if there is a choice running it natively would be preferred.

planetf1 commented 1 month ago

@mkannwischer Thanks for the reply. I would hope the effort and costs are low, and would give similar results to your existing qemu tests, except easier. But for benchmarking it seems as if dedicated hw is needed (either custom integration - building a pool of custom github runners possible too - but my concern would be overhead on benchmarking systems?).

Perhaps this is one to monitor, to see how the oqs team progress. That will help clarify costs, and in July the capability should be GA in any case.

hanno-becker commented 1 month ago

I agree with @mkannwischer that we don't need Arm runners for functional testing -- qemu is good enough. We do need access to specific hardware (see the README) for benchmarking, but it appears that github's AArch64 runners would not give that flexibility.

planetf1 commented 6 hours ago

As per last TSC on 20240620, I think we can close this now @hanno-becker as #75 will continue the followup to get AWS environment for benchmarking?