Add Broker::max_live_threads and Broker::max_pcap_threads tunables

These may be used to change the number of scheduler threads that the
underlying CAF library creates.  In pcap mode, it's currently hardcoded
to the minimal 4 threads due to potentially significant overhead in CAF.
This commit is contained in:
Jon Siwek 2018-06-12 13:49:39 -05:00
parent 6752ffcc8e
commit c9fe9a943c
5 changed files with 55 additions and 17 deletions

View file

@ -51,6 +51,22 @@ export {
## all peers.
const ssl_keyfile = "" &redef;
## Max number of threads to use for Broker/CAF functionality when
## operating on a live interface. Using zero will cause this to
## be automatically determined based on number of available CPUs.
const max_live_threads = 0 &redef;
## Max number of threads to use for Broker/CAF functionality when
## operating on a pcap file. Using zero will cause this to be
## automaticallu determined based on number of available CPUs.
# TODO: on systems where number of CPUs starts exceeding ~10,
# simply creating a caf::actor_system and not using it incurs
# significant performance overhead. Can CAF be updated to
# be more efficient in the case where the application isn't
# actually making much use of most of those threads instead
# of hardcoding this to the minimal 4 threads?
const max_pcap_threads = 4 &redef;
## Forward all received messages to subscribing peers.
const forward_messages = F &redef;