[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Using standardized SI prefixes



On Thu, 14 Jun 2007, Ben Finney wrote:
Ivan Jager <aij+nospam@andrew.cmu.edu> writes:

On Wed, 13 Jun 2007, Alex Jones wrote:
1 TB is not rounded. It means precisely 1 × 10^12 bytes, no more
and no less. If they want to actually put 1.024 TB on the disk
then they can say 1 TB (approx.) like any other industry
(detergent, bacon, etc.).

1 TB has only one significant digit. It would be silly to think that
it was an exact measurement, at least in fields I am familiar
with. ;) No one I know would think 1km is as precisely measured as
1.00000000000000000km.

The difference being that digital specifications for things like
storage capacity and memory are not measured. They are calculated, and
in those contexts they *are* precise.

Rounding can be done after the calculated number is obtained, but it's
not inherent in the process of obtaining the number the way that
measuring "1 km" or "1 tablespoon" is.

Since we *can* give a perfectly precise quantity of bytes and other
digital phenomena, and often do, this is even more reason to use the
precise meaning of the units for those quantities.

Ok, so this applies to dd and what else? I guess fdisk kind of counts, except even there, while being a specified size rather than measured, the size of the partition it creates is still rounded to a whole cylinder. I'm having trouble thinking of anything where a n00b would be specifying sizes with prefixes and expecting it to be exactly a specific size down to the byte.


I thought this argument was mostly about measured sizes anyways, such as what you would get from ls -lh, df -h, du -h, or their GUI equivalents. These are all rounded. Do the GUI equivalents show full precision even with prefixes? That seems kind of pointless.

AFAIK we are using precise meanings of the prefixes. They are just ambiguous, since they have more than one precise meaning. On computers, when measuring units of bytes, I am confused any time someone isn't using the binary values. (Although I'm not so surprised when the numbers are coming from marketing people.) While 10^9 <> 2**30, I find the later to be a much more useful number on a computer.

A few more things I thought of where a user might need to specify a size:
xorg.conf VideoRAM option
mem argument on kernel commandline
mkfs
resize2fs
ping

All of these except for ping want the byte sizes to be divisible by some power of two. Because memory comes in powers of two, and disks come in multiples of 512 bytes, the powers of two tend to be a lot more useful than the powers of ten.

I might be too much of a systems person... Let me know if you can come up with examples where you would want to specify byte sizes in powers of 10 rather than 2.

I am now somewhat tempted to do a small survey asking random people how much they think a megabyte is. :)

Ivan

Reply to: