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

DPDK: Use generic CPU instructions and skip AVX512 #20

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

mestery
Copy link

@mestery mestery commented Mar 21, 2022

This commits removes AVX512 support and enables generic CPU options for
the DPDK build. The IPDK CI builds on Azure VMs which support AVX512.
However, since Virtualbox doesn't support this (see [1] and [2]), we
can skip this for p4-dpdk-target when building DPDK as a part of the
p4-dpdk-target repo.

Fixes: ipdk-io/ipdk#118

[1] https://forums.virtualbox.org/viewtopic.php?t=86047
[2] https://forums.virtualbox.org/viewtopic.php?f=7&t=87131

Signed-off-by: Kyle Mestery [email protected]

This commits removes AVX512 support and enables generic CPU options for
the DPDK build. The IPDK CI builds on Azure VMs which support AVX512.
However, since Virtualbox doesn't support this (see [1] and [2]), we
can skip this for p4-dpdk-target when building DPDK as a part of the
p4-dpdk-target repo.

Fixes: ipdk-io/ipdk#118

[1] https://forums.virtualbox.org/viewtopic.php?t=86047
[2] https://forums.virtualbox.org/viewtopic.php?f=7&t=87131

Signed-off-by: Kyle Mestery <[email protected]>
@mestery
Copy link
Author

mestery commented Mar 21, 2022

@jamescchoi See the breadcrumbs above, would be curious on your thoughts of this PR.

@jamescchoi
Copy link
Collaborator

@mestery Can you include @vsureshkumarp for review for this DPDK repo build change? He would be more knowledgeable on this.

@mestery
Copy link
Author

mestery commented Mar 21, 2022

Thanks for the pointer @jamescchoi! @vsureshkumarp can you review this one please?

@@ -1,8 +1,13 @@
all:
$(shell ./apply_patch.sh > /dev/null 2>&1)
stat dpdk_src/build > /dev/null 2>&1 || \
(cd dpdk_src && meson -Dprefix=$(prefix) build && \
cd build && ninja -j48 && ninja install)
(cd dpdk_src && meson -Dcpu_instruction_set=generic -Dprefix=$(prefix) build && \
Copy link
Contributor

@vsureshkumarp vsureshkumarp Mar 29, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These changes apply for all the builds including real hardware. I feel it is better to introduce another build option and utilize it specially for VirtualBox builds instead of making it generic.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you provide some guidance on how we might do that? I would appreciate any help to either take over this PR or guide me here. We'll need to expose this up to the IPDK level as well (e.g. P4-OVS) so it's configurable from that build level.

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