Skip to content

Remove reorder kernel and update installation#83

Merged
cliffburdick merged 2 commits into
mainfrom
cburdick/address-greptile-comments
May 13, 2026
Merged

Remove reorder kernel and update installation#83
cliffburdick merged 2 commits into
mainfrom
cburdick/address-greptile-comments

Conversation

@cliffburdick
Copy link
Copy Markdown
Collaborator

No description provided.

@cliffburdick cliffburdick changed the title Cburdick/address greptile comments Remove reorder kernel and update installation May 13, 2026
Declare the user-facing simple_packet_reorder launcher from <daqiri/daqiri.h> so consumers do not include private src headers. Keep src/kernels.h private for internal reorder implementation details and make installed pkg-config links resolve sibling DAQIRI libraries.

Signed-off-by: Cliff Burdick <cburdick@nvidia.com>
Drop the simple_packet_reorder launcher and its documentation. Keep reordering on the configured rx.reorder_configs path and use a no-op CUDA launch in docs where a generic packet-processing example is useful.

Signed-off-by: Cliff Burdick <cburdick@nvidia.com>
@cliffburdick cliffburdick force-pushed the cburdick/address-greptile-comments branch from 8b3fe1c to 4e6cf3e Compare May 13, 2026 22:30
@greptile-apps
Copy link
Copy Markdown

greptile-apps Bot commented May 13, 2026

Greptile Summary

This PR removes the simple_packet_reorder CUDA kernel and its public declaration, redirecting users to the built-in rx.reorder_configs path instead of exposing a standalone scatter-gather helper. It also improves the installed library's self-containment by embedding INSTALL_RPATH "$ORIGIN" on the built targets and adding -Wl,-rpath-link,${libdir} to the pkg-config Libs: field so downstream linkers can resolve the backend .so sibling files at link time.

  • src/kernels.cu / src/kernels.h: simple_packet_reorder_kernel and its extern "C" launcher are deleted; the more capable packet_reorder_copy_payload_by_sequence is untouched. <assert.h> is now included directly in kernels.cu rather than pulled through the header.
  • src/CMakeLists.txt / cmake/daqiri.pc.in: INSTALL_RPATH "$ORIGIN" added to both daqiri_common and each backend library target; -Wl,-rpath-link,${libdir} added to the pkg-config Libs: field for link-time dependency resolution.
  • Docs (docs/api-guide.md, docs/daqiri-api.html, docs/index.html, AGENTS.md): all references to simple_packet_reorder removed and replaced with a generic noop-kernel usage example that points users toward rx.reorder_configs.

Confidence Score: 5/5

Safe to merge — all references to the removed kernel are cleaned up across code and docs, the socket→rdma build invariant is untouched, and the RPATH changes are self-contained installation improvements.

The change is a straightforward deletion: the demo kernel and its public declaration are gone, every doc that mentioned it was updated in the same PR, and no other code path called the removed function. The INSTALL_RPATH and pkg-config additions are additive-only and do not affect existing link or runtime behavior for in-tree builds. Commit history has two commits where the first adds a public declaration and the second removes it, leaving a slightly noisy history, but the final state of every file is correct.

No files require special attention.

Important Files Changed

Filename Overview
src/kernels.cu Removed simple_packet_reorder_kernel and its C launcher; remaining packet_reorder_copy_payload_by_sequence and supporting helpers are untouched and still compile cleanly.
src/kernels.h Removed the simple_packet_reorder declaration and dead assert.h include; assert.h is still included directly in kernels.cu, so no build regression.
src/CMakeLists.txt Added INSTALL_RPATH "$ORIGIN" to both daqiri_common and each backend library target so installed .so files can find their sibling libraries at runtime; socket→rdma rule and MGR_LIST handling are unchanged.
cmake/daqiri.pc.in Added -Wl,-rpath-link,${libdir} to the public Libs: field so downstream linkers can resolve libdaqiri's backend .so dependencies at link time; complements the new INSTALL_RPATH $ORIGIN setting.
docs/api-guide.md GPU Packet Aggregation section replaced with GPU Packet Processing; all references to simple_packet_reorder removed and replaced with a generic noop kernel example and pointer to rx.reorder_configs.
docs/daqiri-api.html Sidebar nav entry and method card for simple_packet_reorder removed; HTML is structurally correct after the deletion.
docs/index.html Example card updated from "GPU Packet Reorder Kernel" to "GPU Packet Processing" with matching prose and updated link target to examples/.
AGENTS.md Architecture intro updated to remove the BurstParams* type name in favour of "opaque DAQIRI-owned buffers"; the Zero-copy / BurstParams subsection still names the type explicitly so developer-facing accuracy is preserved.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    subgraph Before["Before (base)"]
        A["simple_packet_reorder_kernel (kernels.cu)"]
        B["simple_packet_reorder extern C (kernels.cu)"]
        C["Declaration in kernels.h"]
        D["GPU Reorder Kernel docs\n(api-guide.md, daqiri-api.html, index.html)"]
        A --> B --> C
        B --> D
    end

    subgraph After["After (HEAD)"]
        E["packet_reorder_copy_payload_by_sequence\n(kernels.cu — unchanged)"]
        F["INSTALL_RPATH $ORIGIN\n(daqiri_common + backend targets)"]
        G["-Wl,-rpath-link,libdir\n(daqiri.pc.in Libs:)"]
        F --> G
    end

    Before -->|"PR removes"| After
    E -.->|"still present"| After
Loading

Reviews (1): Last reviewed commit: "#81 - Remove public simple reorder kerne..." | Re-trigger Greptile

@cliffburdick cliffburdick merged commit 2d33dca into main May 13, 2026
3 checks passed
@cliffburdick cliffburdick deleted the cburdick/address-greptile-comments branch May 13, 2026 22:51
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