microsoft / microsoft/ebpf-for-windows

BPF_MAP_TYPE_HASH operation cost higher on Windows vs Linux

Open
#2,788 0 comments 0 reactions 0 assignees View on GitHub
help wanted optimization triaged
Dominant language
C
Stars
3.6k
Forks
311
Avg merge
6d 10h
Merged PRs (30d)
21

Description

The test "BPF_MAP_TYPE_HASH update" shows significantly higher cost on Windows vs Linux:

Windows:
```
BPF_MAP_TYPE_HASH read,120,119
BPF_MAP_TYPE_HASH update,1069,1075
BPF_MAP_TYPE_HASH update/read,907,140
BPF_MAP_TYPE_HASH replace,1737,1748
```

Linux:
```
BPF_MAP_TYPE_HASH read,38,38
BPF_MAP_TYPE_HASH update,171,169
BPF_MAP_TYPE_HASH update/read,119,80
BPF_MAP_TYPE_HASH replace,256,257
```

Contributor guide

Open the contributing guide

Research direction

Use the named "BPF_MAP_TYPE_HASH update" test as the entry point and reproduce its timings on Windows and Linux. Compare the read, update, update/read, and replace results to identify the source of the Windows overhead. Done should include a verified explanation and improved Windows costs, with the benchmark results rerun.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
operating-systems, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.