Skip to content
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

MacOS M1 neon support #49

Open
jianshu93 opened this issue Apr 22, 2023 · 5 comments
Open

MacOS M1 neon support #49

jianshu93 opened this issue Apr 22, 2023 · 5 comments

Comments

@jianshu93
Copy link

Hello Team,

It is not supported on aarch64 or (arm64) platform such as macOS M1? Any plan to support it in the future?

Thanks,
Jianshu

@pierrebarbera
Copy link
Owner

Hi Jianshu, I think you should be able to run it on apple silicon using rosetta, which allows x86 programs to run. The performance impact should be minimal.

Pierre

@jianshu93
Copy link
Author

Hello Pierre,
Yes I can run it using rosetta after trying. Just wondering whether there will be neon instruction support such as x86, which will be faster and more convenient for us to use.

Thanks,

Jianshu

@pierrebarbera
Copy link
Owner

Jianshu,

there is no plans from my side to add apple silicon native vector intrinsics, no. It was my impression that when processing data large enough for it to matter, users were running that on supercomputers. Also I no longer work in academia and can't justify the time investment.

Pierre

@jianshu93
Copy link
Author

jianshu93 commented Sep 18, 2023

Hello again,
the brew install channel is not working for the same reason I think because I have no problem on intel MACs?

Last 15 lines from /Users/jianshuzhao/Library/Logs/Homebrew/epa-ng/02.make:
__cpuid_count(__leaf, __subleaf, *__eax, *__ebx, *__ecx, *__edx);
^
/Library/Developer/CommandLineTools/usr/lib/clang/14.0.3/include/cpuid.h:259:11: note: expanded from macro '__cpuid_count'
: "=a"(__eax), "=r" (__ebx), "=c"(__ecx), "=d"(__edx)
^
/tmp/epa-ng-20230918-23224-12j46qj/epa-ng-0.3.8/build/genesis_unity_sources/lib/all.cpp:27664:9: error: invalid output constraint '=a' in asm
__cpuid_count( 1, 0, info[0], info[1], info[2], info[3] );
^
/Library/Developer/CommandLineTools/usr/lib/clang/14.0.3/include/cpuid.h:259:11: note: expanded from macro '__cpuid_count'
: "=a"(eax), "=r" (ebx), "=c"(ecx), "=d"(edx)
^
5 errors generated.
make[2]: *** [libs/genesis/lib/genesis/CMakeFiles/genesis_lib_static.dir////
/genesis_unity_sources/lib/all.cpp.o] Error 1
make[1]: *** [libs/genesis/lib/genesis/CMakeFiles/genesis_lib_static.dir/all] Error 2
make: *** [all] Error 2

Thanks

Jianshu

@lczech
Copy link
Collaborator

lczech commented Sep 18, 2023

Hi @jianshu93,

are those errors occurring on intel MAC? It looks like the internal C++ standard library files are causing the error here. Have you tried @pierrebarbera suggestion to use the rosetta tool to solve this?

Cheers
Lucas

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants