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

[Review] Dpdk: add symmetric_mp test #3629

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft

[Review] Dpdk: add symmetric_mp test #3629

wants to merge 4 commits into from

Conversation

mcgov
Copy link
Collaborator

@mcgov mcgov commented Feb 5, 2025

Adding a runner for the DPDK example app multiprocessing/symmetric_mp. This is another flavor of the multiprocessing test which can scale to a larger number of ports and processes than 'multiprocessing/client_server_mp'.

Adding this test required a few smaller changes (and one refactor):

  • Allow an arbitrary number of nics to be passed to initialize_node_resources (refactor)
  • Use dpdk-devname app to select the correct DPDK port ID when building a port mask

With these changes, the test itself is straightforward. We build and start the application; then use enable debug logging and check for the important DPDK netvsc PMD events that show the example app is working as expected.

mcgov added 4 commits February 4, 2025 10:50
working symmetric_mp for mana and mlx

save state

more symmetric_mp

Dpdk: use more memory

Dpdk: symmetric_mp test use debug messages for status

Dpdk: move symmetric_mp to dpdkutil to allow rescind/non versions

Dpdk: symmetric_mp polishing
@@ -103,6 +104,58 @@ def verify_dpdk_build_netvsc(
node, log, variables, "netvsc", HugePageSize.HUGE_2MB, result=result
)

@TestCaseMetadata(
description="""
netvsc pmd version.
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Ooops. Need a real description here and below. Will fix

# copy devname application into the examples directory
devname_local_folder = PurePath(__file__).parent.joinpath("devname")
self._node.shell.mkdir(
self.asset_path.joinpath("examples/devname"), parents=False, exist_ok=False
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I might not want to have exist_ok=False? But it would be a good check if I end up trying to build DPDK twice without wiping the directory... Not sure.

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.

1 participant