====== VM-I/O concurrency project for FreeBSD 10.0-Release ======
This page documents proposed task-list for improving VM subsystem and I/O stack concurrency and performance to be delivered in %%FreeBSD%% 10.0-Release.
Everyone is encouraged in modifying the page adding more tasks, submitting his name under projects to be completed and offer guidance, review and testing for any of these items.
===== Tasklist targeted for FreeBSD 10.0-R =====
^ Task ^ Responsible ^ Last update ^ Scope (Effort) ^ Status / % complete ^ Location of branch ^
| Multi-digit trie and use it for resident and cached pages within vm_objects | attilio | 03/17/2013 | | Completed (r248449 et al.) | |
| Unmapped I/O | jeff, kib | 03/18/2013 | | Completed (r246713,248280 et al.) | |
| radix tree for buf cache | jeff | 04/29/2013 | | Completed | |
| vfs_bio.c mtx contention bqlock | jeff | 03/10/2013 | | Completed | |
| Fine-grained locking for pv lists | alc | 06/03/2013 | | [[#FineGrainedPvListsPmap]] 75% Complete (r235695, r237228, r237290, r237551, r237592) | |
| Shared locking for vm_objects lock | attilio, alc | 12/21/2012 | | In progress | svn:%%//%%svn.freebsd.org/base/user/attilio/vmobj-readlock/ |
| Fine-grained locking for active and inactive page queues | alc, kib | 12/21/2012 | | In progress | https://www.kib.kiev.ua/git/gitweb.cgi?p=deviant2.git;a=shortlog;h=refs/heads/nofault |
| Fine-grained locking for free pages queue | alc, jeff | 12/21/2012 | | In progress | |
| Improved kernel NUMA support | jeff, alc, attilio | 12/21/2012 | | In progress | |
===== Tasklist targeted after FreeBSD 10.0-R =====
^ Task ^ Responsible ^ Last update ^ Scope (Effort) ^ Status / % complete ^ Location of branch ^
| Unmapped I/O exploiting by non-critical CAM drivers | ??? | 12/21/2012 | | | |
| Implement userland NUMA support | jeff, alc, attilio | 12/21/2012 | | Unstarted | |
| GEOM multi-threading dispatching | mav | 10/22/2013 | | Completed (r256880+) | |
| Revisit GEOM BIOs copy overhead | pjd | 12/21/2012 | | Unstarted | |
| SMP CAM/CAM multithreading - Fix CAM consumers to not assume GEOM single-threading | mav | 10/21/2013 | | Completed (r256843+) | |
| so_snd/so_rcv contention | ??? | 03/10/2013 | | Unstarted | |
| umtx/pthread overhaul | attilio, davide | 03/22/2013 | | Unstarted | |
| unmapped mbufs | jeffr | NA/NA | | Unstarted | |
====== Task breakdowns ======
===== Shared locking for vm_objects lock =====
^ Task ^ Responsible ^ Last update ^ Scope (Effort) ^ Status / % complete ^ Location of branch ^
| Rewrite the page struct/data protection mechanism | attilio | 06/04/2013 | 2 | awaiting reviews | svn:%%//%%svn.freebsd.org/base/user/attilio/vmobj-readlock/ |
===== Additional notes =====
----
[[CategoryStale]]