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

ARM support for BESS #1041

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

ARM support for BESS #1041

wants to merge 2 commits into from

Conversation

aagontuk
Copy link

  • Added build flags for compiling DPDK on ARM
  • Added sse2neon as a submodule for translating Intel SSE intrinsics to
    Arm/Aarch64 NEON implementation.
  • Implemented SSE4.2 _mm_cmpstri as not supported by sse2neon. Adapted
    from: https://github.com/apache/impala/blob/master/be/src/util/sse-util.h
  • Added equivalent arm64 asm for x86_64 asm.
  • Vector optimization turned off for Arm64 in IPLookup module.

All tests passed except TscToUs.Frequency as on ARM reported tsc_hz is 50MHz (cross checked with mrs x0, cntfrq_el0 instruction which returns Timer Counter Frequency register). This is failing as the test requires frequency >= 500MHz.

Closes #1028

* Added build flags for compiling DPDK on ARM
* Added sse2neon as a submodule for translating Intel SSE intrinsics to
  Arm/Aarch64 NEON implementation: https://github.com/DLTcollab/sse2neon
* Implemented SSE4.2 _mm_cmpstri as not supported by sse2neon. Adapted
  from: https://github.com/apache/impala/blob/master/be/src/util/sse-util.h
* Added equivalent arm64 asm for x86_64 asm.
@jserv
Copy link

jserv commented Oct 8, 2022

FYI: recently SSE2NEON supports _mm_cmpstri intrinsic.

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

Successfully merging this pull request may close these issues.

ARM Support?
2 participants