microsoft / microsoft/ebpf-for-windows

optimize performance of invoking map helper functions

Open
#3,699 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

P2 triaged
Dominant language
C
Stars
3.6k
Forks
311
Avg merge
6d 10h
Merged PRs (30d)
21

Description

Currently all the map related helper functions (lookup, update, delete, etc.) are invoked via `ebpf_map_metadata_tables` (which contains function pointers for each map type).

This design helps keep the code clean but prohibits any inlining (hence any performance improvements) of these functions.

This issue it to change the design / de-virtualize map related helper functions that will allow these functions to be possibly inlined for better performance.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the map helper functions and their calls through ebpf_map_metadata_tables, including lookup, update, and delete. Define a design that removes the indirect function-pointer invocation while preserving map behavior, then validate that the resulting helpers can be inlined and improve performance.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.