shred: increase I/O block size for periodic pattern case

* src/shred.c (dopass): In the periodic pattern case increase the
I/O block size from 12KiB to 60KiB (also a multiple of 3 and 4096).
* NEWS: Adjust accordingly.
This commit is contained in:
Pádraig Brady 2013-11-07 11:57:09 +00:00
parent c93d5b4aa7
commit c2eaef2f57
2 changed files with 2 additions and 2 deletions

2
NEWS
View File

@ -97,7 +97,7 @@ GNU coreutils NEWS -*- outline -*-
Reservoir sampling is used to limit memory usage based on the number of
outputs, rather than the number of inputs.
shred increases write block size from 12KiB to 64KiB when possible,
shred increases the default write block size from 12KiB to 64KiB
to align with other utilities and reduce the system call overhead.
split --line-bytes=SIZE, now only allocates memory as needed rather

View File

@ -380,7 +380,7 @@ dopass (int fd, char const *qname, off_t *sizep, int type,
/* Fill pattern buffer. Aligning it to a page so we can do direct I/O. */
size_t page_size = getpagesize ();
#define PERIODIC_OUTPUT_SIZE (12 * 1024)
#define PERIODIC_OUTPUT_SIZE (60 * 1024)
#define NONPERIODIC_OUTPUT_SIZE (64 * 1024)
verify (PERIODIC_OUTPUT_SIZE % 3 == 0);
size_t output_size = periodic_pattern (type)