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

Implement CellRntiRingBuffer and fix sending delay #11

Merged
merged 1 commit into from
Jun 20, 2024

Conversation

bastian-src
Copy link
Owner

  • Add RingBuffer to count most frequent RNTIs over mutliple iterations
  • Move mathematic utilitites from util to new module math_util
  • Add MatchingErrorHandling -> Reset traffic generator on matching error -> Make math functions return Result<>

Debug CPU usage of rntimatcher.gen thread:

In the traffic_generator thread, the TrafficPattern was in every sending iteration (a) cloned and (b) wrapped into a new Box instance which lead to high frequent memory allocation. This induced a high delay on the traffic pattern sending and high CPU usage of ~80% for the traffic_generator thread. With this fix, the sending rate for pattern A increased from ~800 Kbit/s to ~12 Mbit/s!!!

* Add RingBuffer to count most frequent RNTIs over mutliple iterations
* Move mathematic utilitites from util to new module math_util
* Add MatchingErrorHandling
  -> Reset traffic generator on matching error
  -> Make math functions return Result<>

Debug CPU usage of rntimatcher.gen thread:

  In the traffic_generator thread, the TrafficPattern was in every
  sending iteration (a) cloned and (b) wrapped into a new Box instance
  which lead to high frequent memory allocation.
  This induced a high delay on the traffic pattern sending and high CPU
  usage of ~80% for the traffic_generator thread.
  With this fix, the sending rate for pattern A increased from
  ~800 Kbit/s to ~12 Mbit/s!!!
@bastian-src bastian-src merged commit 00c7de3 into main Jun 20, 2024
4 checks passed
@bastian-src bastian-src deleted the fix/rnti_ring_buffer_and_cpu_usage branch June 20, 2024 17: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