Diff for /wikisrc/projects/project/buffer-queue.mdwn between versions 1.2 and 1.3

version 1.2, 2011/11/06 21:08:23 version 1.3, 2014/02/27 06:57:54
Line 11  difficulty="medium" Line 11  difficulty="medium"
 duration="2-3 months"  duration="2-3 months"
   
 description="""  description="""
 NetBSD has a fixed, kernel-wide upper limit on transfer size, which is currently  NetBSD has a fixed, kernel-wide upper limit on transfer size, called MAXPHYS, which is currently
 set to 64k on most port.  This is too small to have good performances on modern  set to 64k on most ports.  This is too small to perform well on modern
 IDE and SCSI hardware; on the other hand some devices can't do more than 64k,  IDE and SCSI hardware; on the other hand some devices can't do more than 64k,
 and in some case are even limited to less (the Xen virtual block device for  and in some cases are even limited to less (the Xen virtual block device for
 example).  Software RAID will also cause requests to be split in multiple  example).  Software RAID will also cause requests to be split in multiple
 smaller requests.  smaller requests.
   
 NetBSD would greatly benefit from a more intelligent buffer queue management  There is currently work in progress to make MAXPHYS configured at
 between the block device drivers and the higher levels (the framework here  runtime based on driver capability.
 currently only applies some selectable algorithm to sort the queue).  This  
 framework should be able to split buffers too large for a device into smaller  This project originaly suggested instead to make the buffer queue
 ones, or aggregate multiple contiguous requests into a larger one.  This will  management logic (which currently only sorts the queue, aka disksort)
 most probably require change to at last some block device drivers.  capable of splitting too-large buffers or aggregating small contiguous
   buffers in order to conform to device-level requirements.
   
   Once the MAXPHYS changes are finalized and committed, this project may
   be simply outdated. However, it may also be worthwhile to pursue this
   idea as well, particularly the aggregation part.
   
 """  """
 ]]  ]]

Removed from v.1.2  
changed lines
  Added in v.1.3


CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb