(no commit message)
authordillon <dillon@web>
Fri, 19 Oct 2012 20:14:30 +0000 (13:14 -0700)
committerCharlie Root <root@leaf.dragonflybsd.org>
Fri, 19 Oct 2012 20:14:30 +0000 (13:14 -0700)
release32/index.mdwn

index 49b61d9..b497e13 100644 (file)
@@ -80,7 +80,15 @@ We supply a Makefile in `/usr` to track the pkgsrc tree and we supply a Git mirr
 > ### Hardware changes 
  
 > ### New Multiprocessor-safe Work
-* 
+
+* Introduced a new cpu topology aware scheduler, usched_dfly, and made it the default.  This scheduler implements several weighted algorithms and will first try to schedule threads to different sockets (to make best use of on-chip caches).  As the load increases threads are then scheduled to real cores, and finally will be scheduled to hyper-threads.  Threads with similar load characteristics tend to get spread out more.  The scheduler also implements wait/wakeup pairing detection and tries to move related threads closer together to reduce inter-socket cache coherency bandwidth and share L3 caches.
+
+* Greatly reduced SMP bottlenecks in the unix domain socket code.
+
+* Implemented shared tokens to reduce unnecessary bottlenecks in the VM system, particularly for forked and threaded processes.
+
+* Introduced a major pmap optimization for x86-64 which allows page table pages to be shared between UNRELATED processes (so it works for process's separately exec'd or forked), in situations where those processes are mmap()ing the same thing.  This feature works extremely well for both sysv shared memory and mmap()-based shared memory.  In tests with postgres and a 6GB shared memory block the prior memory consumption from forking is now gone.  This page table sharing works even better than the original shm_use_phys sysctl.  Also observed significantly faster X application startup.
+  
 > ### Userland changes
 *