#607337 cstream: Description "...no more redirection of ... /dev/zero" implies '/dev/zero' style function

Package:
cstream
Source:
cstream
Description:
general-purpose stream-handling tool similar to dd
Submitter:
"A. Costa"
Date:
2010-12-17 04:30:04 UTC
Severity:
normal
#607337#5
Date:
2010-12-17 04:31:03 UTC
From:
To:
Package description says:

    - Built-in data creation and sink, no more redirection of /dev/null
      and /dev/zero.

Which implies that 'cstream' can create a '/dev/zero' style stream of zeroes.
The docs don't confirm or deny that, the only mention of 'zero' repeats
the package description:

    % for f in `dlocate -L cstream` ; do test -f $f && zgrep -B 1 -inH zero $f ; done
    /usr/share/doc/cstream/README:21-     Built-in data creation and sink, no more redirection of /dev/null
    /usr/share/doc/cstream/README:22:       and /dev/zero. These special devices speed varies greatly amoung

By default 'cstream' created data is not just zeroes:

    % cstream -i - | hexdump -C | head -n 1
    00000000  4e 57 4c 52 42 42 4d 51  42 48 43 44 41 52 5a 4f  |NWLRBBMQBHCDARZO|

One can always use '/dev/zero' itself for input, but compare the
speed of '/dev/zero' to data created by 'cstream':

    # 'cstream' creation
    % cstream -i - -o - -v 1 -n 4g
    4294967296 B 4.0 GB 0.01 s 330050691918 B/s 307.38 GB/s

    # '/dev/zero'
    % cstream -i /dev/zero -o - -v 1 -n 4g
    4294967296 B 4.0 GB 0.68 s 6301468785 B/s 5.87 GB/s

On my system, a 60x speed difference.

Can 'cstream' emulate '/dev/zero'?  If not, maybe it should.  Failing
that, the docs might be corrected to not imply a '/dev/zero' style
stream of zeroes.

Hope this helps...