-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SPU linux arm64 wheel? #224
Comments
Hi @lidh15 We do not have a Linux arm64 build for now, but we can try to provide later. Thanks |
I know. |
I'm actually trying now. There are just too many missing pieces on arm64 Centos7. Out of curious, can you provide glibc version of I'm seriously consider raise glibc requirement for arm64 Linux... |
kylin 10 is basically a wrapped centos 8, so glibc is 2.28 and libstdc++ is 6.0.24, raise it from centos 7 to centos 8 looks good to me. |
stay tune, won't be a long wait :D |
Okay I'm working on it, but the first thing is that jaxlib doesn't provide with arm64 wheel. |
Jax has an open issue here Linux arm still has a long way to go, our ci provider circleci has no Linux arm docker executor as well... |
we built arm64 jax 0.4.8 and run spu based on that, unfortunately, yacl brpc is not working:
shall I report this issue to YACL repo? |
Can you provide repro steps? |
well, it was my fault that I didn't configure the link address correctly, now the story is:
what I'm doing is like: conf = spu.psi.BucketPsiConfig(
psi_type=spu.psi.PsiType.Value('ECDH_OPRF_UB_PSI_2PC_OFFLINE'),
bucket_size=int(5e7),
curve_type=spu.psi.CurveType.CURVE_FOURQ,
# and some data IO configs...
)
spu.psi.bucket_psi(some_link, conf) |
thanks for repro steps, will take a look :D |
I looked into microsoft 4qlib and I found tons of stuffs around ARM... there are many implementations for maybe there are other curve choices for |
SPU is using fourq provided by apsi |
I tried other protocols and it seems okay, but there is another error:
Have I configured something wrong? I think the same code is working well on x86_64. |
@zhanglei486 Can you take a look? |
@warriorpaw any idea? Looks like a brpc bug? |
Ignore this error for now, it should be a warn. And this warn is due to the change in the behavior of the internal network interface: stop_link needs to be called before destroy it. But it should not cause any trouble, and we will fix it. |
cool! then I think the only concern in our arm64 PSI use case is FourQ not working |
benchmark of ecdh-psi using 25519 curve, please reference: on Intel Xeon Gen2 platform , ecdh-psi using fourq is the fast, fourq > 25519 >> sm2 = 256k1 on Intel Xeon Gen3(support AVX512-IFMA ) platform , ecdh-psi using 25519 is the fast, 25519 > fourq >> sm2 = 256k1 |
Issue Type
Feature Request
Modules Involved
SPU runtime
Have you reproduced the bug with SPU HEAD?
Yes
Installation Kind
binary
SPU Version
spu0.4.0
OS Platform and Distribution
Linux Kylin 10 sp3
Python Version
3.8
Compiler Version
GCC 10.2.1
Current Behavior?
No supported wheels!
Standalone code to reproduce the issue
# https://pypi.org/project/spu/#files
Relevant log output
No response
The text was updated successfully, but these errors were encountered: