You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by va...@apache.org on 2023/05/16 16:31:13 UTC

[couchdb] branch update-vm-args-params created (now 89e8829fc)

This is an automated email from the ASF dual-hosted git repository.

vatamane pushed a change to branch update-vm-args-params
in repository https://gitbox.apache.org/repos/asf/couchdb.git


      at 89e8829fc Update default vm.args settings

This branch includes the following new commits:

     new 89e8829fc Update default vm.args settings

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[couchdb] 01/01: Update default vm.args settings

Posted by va...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

vatamane pushed a commit to branch update-vm-args-params
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit 89e8829fc1da03fb5d9d6caefc8561453c2c41e5
Author: Nick Vatamaniuc <va...@gmail.com>
AuthorDate: Mon May 15 18:57:01 2023 -0400

    Update default vm.args settings
    
     * Increase distribution buffer size from 1MB to 32MB. We've been using this
       value at Cloudant for years in all the clusters. RabbitMQ defaults to 128MB,
       which is even higher. This might speed busy clusters with lots of
       distribution traffic.
    
     * Add a commented out example of scheduling flags to use in a Docker or Kube
       environment with CFS quotas (advice taken from
       https://erlangforums.com/t/vm-tuning-guide/1945/3).
---
 rel/overlay/etc/vm.args | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/rel/overlay/etc/vm.args b/rel/overlay/etc/vm.args
index 174fba1c5..55886f715 100644
--- a/rel/overlay/etc/vm.args
+++ b/rel/overlay/etc/vm.args
@@ -61,6 +61,18 @@
 # Dirty IO schedulers are used for file IO.
 +SDio 16
 
+# Increase distribution buffer size from default of 1MB to 32MB. The default is
+# usually a bit lot on busy clusters. Has no effect for single-node setups.
+# The unit is in kilobytes.
++zdbbl32768
+
+# When running on Docker, Kubernetes or an OS using CFS (Completely Fair
+# Scheduler) with CPU quota limits set, disable busy waiting for schedulers to
+# avoid busy waiting consuming too much of Erlang VM's CPU time-slice shares.
+#+sbwt none
+#+sbwtdcpu none
+#+sbwtdio none
+
 # Comment this line out to enable the interactive Erlang shell on startup
 +Bd -noinput