# This file shows all possible parameters with defaults. For some values, CAF # computes a value at runtime if the configuration does not provide a value. For # example, "caf.scheduler.max-threads" has no hard-coded default and instead # adjusts to the number of cores available. caf { # Parameters selecting a default scheduler. scheduler { # Use the work stealing implementation. Accepted alternative: "sharing". policy = "stealing" # Maximum number of messages actors can consume in single run (int64 max). max-throughput = 9223372036854775807 # # Maximum number of threads for the scheduler. No hardcoded default. # max-threads = ... (detected at runtime) } # Parameters for the work stealing scheduler. Only takes effect if # caf.scheduler.policy is set to "stealing". work-stealing { # Number of zero-sleep-interval polling attempts. aggressive-poll-attempts = 100 # Frequency of steal attempts during aggressive polling. aggressive-steal-interval = 10 # Number of moderately aggressive polling attempts. moderate-poll-attempts = 500 # Frequency of steal attempts during moderate polling. moderate-steal-interval = 5 # Sleep interval between poll attempts. moderate-sleep-duration = 50us # Frequency of steal attempts during relaxed polling. relaxed-steal-interval = 1 # Sleep interval between poll attempts. relaxed-sleep-duration = 10ms } # Parameters for the I/O module. middleman { # Configures whether MMs try to span a full mesh. enable-automatic-connections = false # Application identifiers of this node, prevents connection to other CAF # instances with incompatible identifiers. app-identifiers = ["generic-caf-app"] # Maximum number of consecutive I/O reads per broker. max-consecutive-reads = 50 # Heartbeat message interval in ms (0 disables heartbeating). heartbeat-interval = 0ms # Configures whether the MM attaches its internal utility actors to the # scheduler instead of dedicating individual threads (needed only for # deterministic testing). attach-utility-actors = false # Configures whether the MM starts a background thread for I/O activity. # Setting this to true allows fully deterministic execution in unit test and # requires the user to trigger I/O manually. manual-multiplexing = false # # Configures how many background workers are spawned for deserialization. # # No hardcoded default. # workers = ... (detected at runtime) } # Parameters for logging. logger { # # Note: File logging is disabled unless a 'file' section exists that # # contains a setting for 'verbosity'. # file { # # File name template for output log files. # path = "actor_log_[PID]_[TIMESTAMP]_[NODE].log" # # Format for rendering individual log file entries. # format = "%r %c %p %a %t %C %M %F:%L %m%n" # # Minimum severity of messages that are written to the log. One of: # # 'quiet', 'error', 'warning', 'info', 'debug', or 'trace'. # verbosity = "trace" # # A list of components to exclude in file output. # excluded-components = [] # } # # Note: Console output is disabled unless a 'console' section exists that # # contains a setting for 'verbosity'. # console { # # Enabled colored output when writing to a TTY if set to true. # colored = true # # Format for printing log lines (implicit newline at the end). # format = "[%c:%p] %d %m" # # Minimum severity of messages that are written to the console. One of: # # 'quiet', 'error', 'warning', 'info', 'debug', or 'trace'. # verbosity = "trace" # # A list of components to exclude in console output. # excluded-components = [] # } } }