-
Notifications
You must be signed in to change notification settings - Fork 4
Description
There is a significant performance difference between running the bulk bench with a current thread runtime and a multithreaded runtime.
Current thread runtime is faster despite all work (en/decryption, waiting on syscalls) happening on the same thread. This points to either the communication via channels or moving memory from one core to another being a bottleneck.
To try this out, use #280
We are very far from a speed where moving memory between cores can be a bottleneck, so what remains is the channel overhead.
We can reduce the channel overhead by batching. E.g. currently if we get a bunch of messages from recvmsg_x on mac fast or recvmsg with GRO on linux, we send them to the channels one by one.
I implemented this on mac, but you don't see a big difference.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status