Skip to content

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 mcgov force-pushed the mcgov/symmetric-pr branch 2 times, most recently from 1181aa2 to cc13252 Compare September 15, 2025 16:10
@mcgov mcgov force-pushed the mcgov/symmetric-pr branch 2 times, most recently from 970e586 to be7acdf Compare September 17, 2025 13:38
@squirrelsc
Copy link
Member

@LiliDeng LGTM

@LiliDeng LiliDeng requested a review from Copilot September 18, 2025 02:44
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds support for the DPDK symmetric_mp multiprocessing test example, which provides better scalability than the existing client_server_mp test for handling multiple ports and processes.

Key changes include:

  • Refactoring NIC initialization to accept arbitrary numbers of NICs
  • Adding dpdk-devname utility to determine correct DPDK port IDs for netvsc PMD
  • Implementing the symmetric_mp test runner with SRIOV rescind testing capabilities

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
dpdkutil.py Refactored NIC handling functions and added symmetric_mp test runner
dpdktestpmd.py Updated example app path resolution and added devname app support
dpdksuite.py Added new test case for symmetric_mp verification
devname/ Added new utility application for DPDK port ID discovery
lisa/nic.py Enhanced NIC string representation with dev_uuid

Comment on lines 1508 to 1547
# result_regex.search(secondary_result.stdout),
# result_regex.search(primary_result.stdout),
Copy link
Preview

Copilot AI Sep 18, 2025

Choose a reason for hiding this comment

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

Remove commented out code lines 1508-1509 as they are no longer needed and clutter the codebase.

Suggested change
# result_regex.search(secondary_result.stdout),
# result_regex.search(primary_result.stdout),

Copilot uses AI. Check for mistakes.

Copy link
Member

Choose a reason for hiding this comment

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

Please take this comment.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Weird! I thought I had. I found another commented line as well. Thanks

@mcgov mcgov marked this pull request as ready for review September 18, 2025 23:19
@mcgov mcgov changed the title [Review] Dpdk: add symmetric_mp test [dpdk] add symmetric_mp test Sep 24, 2025
@mcgov mcgov force-pushed the mcgov/symmetric-pr branch from 2877af6 to 1b7e71a Compare September 24, 2025 17:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants