[CalendarServer-changes] [3474] CalendarServer/trunk

source_changes at macosforge.org source_changes at macosforge.org
Mon Dec 8 10:35:21 PST 2008


Revision: 3474
          http://trac.macosforge.org/projects/calendarserver/changeset/3474
Author:   wsanchez at apple.com
Date:     2008-12-08 10:35:20 -0800 (Mon, 08 Dec 2008)
Log Message:
-----------
Default ProcessCount is now larger of: 4 or (2 * CPU count)

Modified Paths:
--------------
    CalendarServer/trunk/calendarserver/tap/caldav.py
    CalendarServer/trunk/conf/caldavd-test.plist
    CalendarServer/trunk/conf/caldavd.plist
    CalendarServer/trunk/twistedcaldav/config.py

Modified: CalendarServer/trunk/calendarserver/tap/caldav.py
===================================================================
--- CalendarServer/trunk/calendarserver/tap/caldav.py	2008-12-07 18:24:38 UTC (rev 3473)
+++ CalendarServer/trunk/calendarserver/tap/caldav.py	2008-12-08 18:35:20 UTC (rev 3474)
@@ -714,25 +714,23 @@
             try:
                 cpuCount = getNCPU()
             except NotImplementedError, e:
-                error = str(e)
+                self.log_error("Unable to detect number of CPUs: %s"
+                               % (str(e),))
+                cpuCount = 0
             else:
-                if cpuCount > 0:
-                    error = None
-                else:
-                    error = (
-                        "No processors detected, "
-                        "which is difficult to believe."
+                if cpuCount < 1:
+                    self.log_error(
+                        "%d processors detected, which is hard to believe."
+                        % (cpuCount,)
                     )
 
-            if error is None:
-                self.log_info("%d processors found, configuring %d processes."
-                              % (cpuCount, cpuCount))
-            else:
-                self.log_error("Could not autodetect number of CPUs: %s"
-                               % (error,))
-                self.log_error("Assuming one CPU, configuring one process.")
-                cpuCount = 1
+            processCount = config.MultiProcess.MinProcessCount
+            if 2 * cpuCount > processCount:
+                processCount = 2 * cpuCount
 
+            self.log_info("%d processors found. Configuring %d processes."
+                          % (cpuCount, processCount))
+
             config.MultiProcess.ProcessCount = cpuCount
 
         if config.MultiProcess.ProcessCount > 1:

Modified: CalendarServer/trunk/conf/caldavd-test.plist
===================================================================
--- CalendarServer/trunk/conf/caldavd-test.plist	2008-12-07 18:24:38 UTC (rev 3473)
+++ CalendarServer/trunk/conf/caldavd-test.plist	2008-12-08 18:35:20 UTC (rev 3474)
@@ -369,7 +369,7 @@
     <key>MultiProcess</key>
     <dict>
       <key>ProcessCount</key>
-      <integer>0</integer> <!-- 0 = one per CPU core -->
+      <integer>0</integer> <!-- 0 = larger of: 4 or (2 * CPU count) -->
 
       <key>LoadBalancer</key>
       <dict>

Modified: CalendarServer/trunk/conf/caldavd.plist
===================================================================
--- CalendarServer/trunk/conf/caldavd.plist	2008-12-07 18:24:38 UTC (rev 3473)
+++ CalendarServer/trunk/conf/caldavd.plist	2008-12-08 18:35:20 UTC (rev 3474)
@@ -280,7 +280,7 @@
     <key>MultiProcess</key>
     <dict>
       <key>ProcessCount</key>
-      <integer>0</integer> <!-- 0 = one per CPU core -->
+      <integer>0</integer> <!-- 0 = larger of: 4 or (2 * CPU count) -->
     </dict>
 
 

Modified: CalendarServer/trunk/twistedcaldav/config.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/config.py	2008-12-07 18:24:38 UTC (rev 3473)
+++ CalendarServer/trunk/twistedcaldav/config.py	2008-12-08 18:35:20 UTC (rev 3474)
@@ -204,6 +204,7 @@
     "ProcessType": "Combined",
     "MultiProcess": {
         "ProcessCount": 0,
+        "MinProcessCount": 4,
         "LoadBalancer": {
             "Enabled": True,
             "Scheduler": "LeastConnections",
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20081208/fbe467b6/attachment.html>


More information about the calendarserver-changes mailing list