• Inada Naoki's avatar
    bpo-36103: change default buffer size of shutil.copyfileobj() (GH-12115) · 4f190306
    Inada Naoki yazdı
    It is changed from 16KiB to 64KiB.  The previous default value
    is used since 1990.
    
    coreutils chose 128 KiB as minimum buffer size for block device I/O.
    
    But shutil.copyfileobj() can be used for non block devices.
    So I choose more conservative value.
    
    As my quick benchmark, performance difference between 64KiB and
    128 KiB is up to ~5%.  On the other hand, performance difference
    between 32 KiB and 64 KiB can be more than 10% when file is fully
    buffered.
    
    This is why 64 KiB is rational value.
    4f190306
shutil.rst 28.1 KB