Skip to content

Conversation

@leoparente
Copy link
Contributor

- _recv callback for every target was being executed by the static Receiver thread
- Moved the cost of execution to the PingProbe thread

    - _recv callback for every target was being executed by the static Receiver thread
    - Moved the cost of execution to the PingProbe thread
@leoparente leoparente requested a review from weyrick December 21, 2022 22:00
@leoparente leoparente self-assigned this Dec 21, 2022
@leoparente
Copy link
Contributor Author

Before this PR (current develop)
Static Receiver thread is executing the Packet receiver process end to end: from socket receive until Handler metric generation:
image
As we can see, the thread that spends more CPU time is the receiver thread
This test has two Netprobe policies with ping test

@leoparente
Copy link
Contributor Author

leoparente commented Dec 21, 2022

The change that was done was to add a receiver vector owned by each PingProbe Instance that is filled by the receiver thread.
So the _recv process (Metrics generated on Handler) is now done by the thread that the PingProbe Instance is running on:
Screenshot from 2022-12-21 18-10-06

@leoparente leoparente changed the title Execute the _recv callback process on correct thread Netprobe: execute the _recv callback process on correct thread Dec 21, 2022
@leoparente
Copy link
Contributor Author

I will work on a optimization to have a single static vector

@leoparente leoparente added bug Something isn't working enhancement New feature or request labels Dec 23, 2022
@leoparente leoparente requested a review from weyrick January 3, 2023 17:43
@leoparente leoparente merged commit 0095a5a into develop Jan 4, 2023
@leoparente leoparente deleted the bugfix/ping-recv-thread branch January 4, 2023 21:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Response time for ping test on netprobe quantiles metrics increases as time goes by

3 participants