Slashdot Mirror


When 1 GB Is Really 0.9313 Gigabytes

An anonymous reader writes "When it comes to RAM, as every geek knows, 1 GB does not mean 1 billion bytes.. it means 2**30 (1,073,741,824) bytes. However, several decades ago "they" decided that GB, MB, and KB would be interpreted differently when it comes to disk drives; 1 GB means exactly 1 billion bytes. Ed Bott points out that Microsoft's marketers and Windows kernel developers aren't on the same page when it comes to these units: the marketers use the more generous decimal interpretation, while Windows measures and reports capacity using the binary (2**30) measure. Careful customers who bother to check what they've got have been known to get peeved by the discrepancy."

33 of 618 comments (clear)

  1. so... this is old news by liamevo · · Score: 5, Insightful

    Article is a forum post from 2008 talking about things we knew before then.

    Why was this posted?

    1. Re:so... this is old news by mrbluze · · Score: 5, Insightful

      Article is a forum post from 2008 talking about things we knew before then.

      Why was this posted?

      Extra slow news day?

      --
      Do it yourself, because no one else will do it yourself. [beta blockade 10-17 Feb]
  2. Even worse! by Anonymous Coward · · Score: 5, Insightful

    To make it even worse, the first comment in that forum states:

    > this is common knowledge for most ppl here.

    timothy should get fired. He's not doing what he is supposed to be doing in a very grossly incompetent, outright insulting, way.

    1. Re:Even worse! by TheRaven64 · · Score: 5, Funny

      timothy should get fired

      You can't fire him. He's a 5-line perl script. All you can do is file bug reports.

      --
      I am TheRaven on Soylent News
    2. Re:Even worse! by Bogtha · · Score: 4, Insightful

      Don't be ridiculous, a 5-line Perl script would do a much better job. I suspect he is a 10 million-line Brainfuck program.

      --
      Bogtha Bogtha Bogtha
  3. Terabytes by Janek+Kozicki · · Score: 5, Informative
    It gets worse when you start counting terabytes. I recently bought a 2TB HDD and grown my mdadm raid array using:

    mdadm --add /dev/md69 /dev/sde3
    mdadm --grow --bitmap=none /dev/md69
    mdadm --grow --raid-devices=5 --backup-file=/root/grow_md69.bak /dev/md69
    mdadm --grow --bitmap=internal --bitmap-chunk=65536 /dev/md69
    resize2fs /dev/md69

    And I was surprised that my filesystem grew only by 1800 GB ! Still a bit more space for rsnapshot cron backing up all my family's PCs twice per day. But still... I wanted 2TB more, not 1.8TB.

    --
    #
    #\ @ ? Colonize Mars
    #
    1. Re:Terabytes by neyla · · Score: 5, Insightful

      It does indeed get worse and worst with increasing size of the units.

      The difference between 1 KB in base-10 and base-2 is 2.4%

      The difference between 1MB in base10 and base2 is 4.9%

      The difference between 1GB in base10 and base2 is 7.4%

      The difference between 1TB in base10 and base2 is 10%

      The difference between 1PB in base10 and base2 is 13%

      The difference between 1EB in base10 and base2 is 15%

      2.4% difference isn't a huge deal, but 15% difference is much more noticeable.

  4. Re:Yeah yeah, this is old news.. by StoneyMahoney · · Score: 5, Insightful

    If the computer industry can't adapt to counting the way of the rest of the world does, that's our problem. We should be pointing at whoever originally decided that they should usurp the already established term Kilo to mean 1024 and slapping them upside the head. Anything less is pure arrogance on our part.

  5. GiB by Anonymous Coward · · Score: 5, Informative

    Finally adopt the official prefixes.
    If you are talking decimal, use GB. If you are talking binary, use GiB.

    1. Re:GiB by phluid61 · · Score: 4, Informative

      "official" on whose auth ?

      The IEC. International Electrotechnical Commission (January 1999), IEC 60027-2 Amendment 2: Letter symbols to be used in electrical technology - Part 2: Telecommunications and electronics. * http://physics.nist.gov/cuu/Units/binary.html

    2. Re:GiB by L4t3r4lu5 · · Score: 4, Insightful

      Sorry, but that's rubbish. "Giga is a unit prefix in the metric (base 10) system denoting 10^9. Its symbol is G." Quoted from Wikipedia, GB = Gigabyte = 10^9 bytes.

      The fact that the IT tech industry refused to go by this standard first used in 1947 is our (their) own fault. They should have invented a new unit prefix and stuck to it.

      Other areas where they got it right: Gigabit networking, Gigahertz clock speeds. Why the fuck should they get a free pass for Gigabyte?!

      --
      Finally had enough. Come see us over at https://soylentnews.org/
  6. Re:Yeah yeah, this is old news.. by mwvdlee · · Score: 4, Insightful

    Because the rest of the world refuses to use the obvious and standarddized solution of using Ki and Mi.

    --
    Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
  7. Not this again. by serviscope_minor · · Score: 5, Insightful

    There is no big grand conspiracy of evil marketing people versus the grand world of computer people.

    1G = 10^9 in every area.

    1Gbit/s = 1e9 bits per second (noone complains)
    1GHz = 1e9 cycles per second (noone complains)
    1GT/s = 1e9 transfers per second (noone complaines)
    1GB = 1e9 bytes (oh the horror! the evil marketing oh woe woe woe)

    The only reason it that 1GB = 1GiB every caught on is because RAM really relies on a power of 2 address bus, so it's always very closely tied into powers of 2 and it's convenient to round that to its nearest decimal equivalent in order to talk about it succinctly.

    There was never any reason to do it for anything else, and hard disk manufacturers pretty much never used GiB when they meant GB.

    And even the venerable 3.5" floppy was an unholy mixture of KB and KiB multiplied together.

    --
    SJW n. One who posts facts.
  8. Someone's not paying attention by Anonymous Coward · · Score: 5, Funny

    What's all that confusion. XKCD had that sorted long time ago:
    https://xkcd.com/394/

    Please pay attention!

  9. Re:"they" can fuck off, the binary units are the o by dingen · · Score: 5, Informative

    Actually, when it comes to correctness: the International System of Units defines kilo-, mega- and giga- as powers of 10 instead, not powers of 2. I think it is much clearer for a user to define a megabyte as a million bytes. How memory is handled inside a computer is something developers care about, no user should be bothered with it. So all in all I agree with the marketing-people, albeit for different reasons.

    --
    Pretty good is actually pretty bad.
  10. Re:Yeah yeah, this is old news.. by Anonymous Coward · · Score: 5, Insightful

    Back when I first studied c.eng, it was drummed into us that base 2 units were ONLY to be used for references to perfectly binarily addressable devices. RAM as we have it today with word lengths that are also powers of two is one. CPU Registers another. Some displays at the time were as well, although no longer, and the origin there was RAM based.

    All else, such as file sizes, card, tape or disk storage, network bandwidth, logic frequency and the like were strictly Base 10.

    Then small systems crept in and base 2 assumptions began to spread. The 1980s brought hard drives marketed with base 2 units. In the 1990s people started to believe a 10MHz cpu was 1024*1024*10 Hz.

    Now this century it's not uncommon to find self-professed geeks calculating say, theoretical throughputs based on the idea their gig-ethernet is 1073741824 bits per second, or that their CPU/RAM speeds use similar numbers in GHz.

    it amuses and saddens me to see newbie geeks calling base 10 hard drive sizes "marketing units", when they simply haven't been taught correctly.

  11. Re:"they" can fuck off, the binary units are the o by Canazza · · Score: 5, Insightful

    and by the same standards, 2^10 is a KiB

    and yes, why is this geek news when anyone with either a passing interest, or who has ever done a wiki crawl, will know this?

    --
    It pays to be obvious, especially if you have a reputation for being subtle.
  12. Re:What. The. Fuck? by gravis777 · · Score: 4, Insightful

    My thoughts exactly. This is an article appropriate for The Today Show or something where you are informing the illiterate masses, not something worthy of posting on Slashdot.

    BTW, this reminds me - a couple of weeks ago on the Today show, they were talking about new cool comptuer terms. One they were talking about was "animated GIFs". I felt like I jumped into a time machine and went back 20 years into the past.

  13. Re:What. The. Fuck? by isorox · · Score: 4, Insightful

    My thoughts exactly. This is an article appropriate for The Today Show or something where you are informing the illiterate masses, not something worthy of posting on Slashdot.

    BTW, this reminds me - a couple of weeks ago on the Today show, they were talking about new cool comptuer terms. One they were talking about was "animated GIFs". I felt like I jumped into a time machine and went back 20 years into the past.

    Slashdot is full of illiterate masses now

  14. Re:"they" can fuck off, the binary units are the o by Anonymous Coward · · Score: 5, Insightful

    A terminology they just up and made up later. I have never heard anyone actually use it.

    Ask yourself, when is the last time you heard someone refer to mebibytes and gibibytes. Everyone uses metric prefixes.

  15. Not this again by hattig · · Score: 4, Funny

    So what that back in the day the computer scientists hijacked kilo/mega/giga because 2^10/2^20/2^30 was close enough to 10^3/10^6/10^9?

    Sure, there's a standard now, the unpopular KiB/MiB/GiB, but no-one uses it.

    Regardless, the number that should be reported when describing capacity should be the base 2 number when talking about RAM - as RAM is by its nature a base 2 capacity mechanism. The capacity can be described exactly this way.

    But for hard drives, where the storage is in effect linear across multiple cylinders, heads, etc, is base 2 what should be used - ignoring historical usage? Well, block sizes are in powers of two... but we don't have a power of two number of blocks. We therefore don't have a capacity number that can be described totally accurately using the base 2 numbering system.

    And SSDs? Due to bad blocks, and reserved storage area, we are turning something that was a base 2 capacity memory system into something with less capacity.

    And what about the files themselves? They're not powers of two in size, and indeed they waste capacity at the end of the file because the basic unit of storage in a drive is the formatted block size (512 bytes, 4KB, etc). Maybe block based systems should be advertised as offering "2 Billion Formatted Blocks* (* 512 byte blocks)"! In addition that file is likely compressed in some way that you can't consider that it will use the same space in memory when loaded.

    A strong argument is that because computer RAM is xGB, meaning x * 2^9 bytes, then we should use the same unit for other things in a computer that are expressed in GB, because in the end it is clearer to the user who can compare the two things, e.g., "the computer has 500 times more HD than RAM".

  16. Re:"they" can fuck off, the binary units are the o by gomiam · · Score: 5, Informative

    I don't know about hearing, but I have read GiB and MiB at the Linux kernel logs since quite a long time.

  17. Re:Blame the marketers - WRONG? by StoneyMahoney · · Score: 4, Informative

    I call tentatively BS on this explanation:

    https://en.wikipedia.org/wiki/Timeline_of_binary_prefixes

    While far from definitive, this would seem to suggest that the first reference equivocating 1k with 1024 with an article in 1964 by Gene Amdahl, followed by a similar assumption of equivalence in a 1965 article by MV Wilkes. I think it's safe to say these references pre-date those hard drives you mention.

    This would suggest that computer science did originally adopt the standard definitions of kilo etc. but then started to deviate from them in the mid-60's for the sake of ease.

  18. Re:"they" can fuck off, the binary units are the o by peppepz · · Score: 5, Insightful

    Please remind me: How many bits is there in an SI byte? Is it 10, 100 or 1000.

    There is no "byte" in the SI. The question is therefore irrelevant. There's an IEC standard containing prefixes for 2^10, 2^100, 2^1000 etc, and those prefixes are kibi-, mibi-, gibi- and so on. The SI officially references them, even if they're not strictly part of it.

    If your byte contains 8 bits, you are either using the binary sizes, or you are mixing things to fool the customer.

    What's the relationship between the number of bits in a byte being 8 and 2 being the base for the multiples of the byte? Moreover, deciding that "a byte" is *the* unit of the smallest addressable memory cell of machines is a oversemplification, because there were in the past, and there might be in the future, machines having a word size which is not even a power of two. If anything, one might think that using powers of two to "size" memory comes from the fact that the widths of the ranges addressable by a bus made of binary wires are by nature powers of two - but that has nothing to do with the fact that the addressed items are bytes, 37-bit words or whatever.

    Hard disks are memory, and counting that memory in powers of two makes no sense for them, since they store bits in very strange patterns, therefore hard disk manufacturers never adopted it. Computer networks transfer memory, and counting that memory in powers of two makes no sense, especially since they often transfer bits and not bytes, hence network designers prefer using bits and their decimal multiples rather than their binary counterparts, and they've always done so.

    If you broaden your vision, you'll see that it's transistor-based memory to be "the exception". Therefore the onus should be on operators of that field to adopt the standard binary prefixes, as ugly as they may sound (and no I don't like them either), in order to avoid ambiguity with the terms used by the rest of the world.

  19. Re:What. The. Fuck? by SternisheFan · · Score: 4, Insightful
    So things on Slashdot aren't like they were in the "good old days" of /., huh guys?

    It sounds like you are all getting old and ornery (lol). Welcome to the neckbeard world, better sharpen those razors!

  20. Oh puh-lease by Excelcia · · Score: 4, Insightful

    I think it's safe to say that most people who have been in the scene from the beginning think the "correct" SI definition of kilo can also fuck off when it comes to computers. As can kebi, mebi and friends. It had been accepted from the beginning that "kilo" meant something just a little different when it came to describing bytes. I accepted that. Everyone accepted that. There was no problem. Even in academic circles, there were no issues.

    The problem came with the storage industry and their pious "oh, but that's not what SI says the units mean". If you think that conforming to strict SI is the reason they made their change, then I'd suggest you not accept kool-aid from strangers. Ever. It was marketing greed, nothing more

    However, while I think kebi, mebi and friends can fall down a deep dark hole, I actually don't mind using their unit symbols. At least in that way there is no misunderstanding in writing what is meant, and the trickle down effect from intellectual papers where it's vital that it's specified what value is means to more lay writings can occur without changing the unit symbols. But I do not now, nor will I ever, read 500MiB as "five hundred mebibytes".

  21. Re:"they" can fuck off, the binary units are the o by staalmannen · · Score: 5, Insightful

    and by the same standards, 2^10 is a KiB

    and yes, why is this geek news when anyone with either a passing interest, or who has ever done a wiki crawl, will know this?

    Indeed and since when did it matter what Microsoft does on ./ ? Stuff on ./ seems to get less and less "nerd" (figuring out how stuff works / hack together solutions) and more and more "geek" (the "tech hipster" buying the latest stuff, preferably before it is cool).

  22. Re:"they" can fuck off, the binary units are the o by neokushan · · Score: 4, Insightful

    and yes, why is this geek news when anyone with either a passing interest, or who has ever done a wiki crawl, will know this?

    Easy, because it's bashing Windows and this is Slashdot.

    --
    +1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
  23. Re:"they" can fuck off, the binary units are the o by dkleinsc · · Score: 5, Funny

    Maybe GP is running on a big-endian machine?

    --
    I am officially gone from /. Long live http://www.soylentnews.com/
  24. Re:"they" can fuck off, the binary units are the o by Eraesr · · Score: 5, Interesting

    The problem arises when the two are used interchangeably. I don't care if a HDD's packaging expresses the capacity in powers of 10, as long as it's clear there's a difference between KiB and KB.
    A much bigger problem is manufacturers having their devices marketed with 64GB of storage when only half of that amount is available for the user due to the other half being taken up by the OS and pre-installed apps.

  25. Re:"they" can fuck off, the binary units are the o by JDG1980 · · Score: 5, Funny

    and by the same standards, 2^10 is a KiB

    No one ever uses that terminology in the real world (well, maybe a handful of standards-crazy Linux developers, but that's about it). There was an attempt to shove it down everyone's throat on Wikipedia a couple years ago and it was decisively beaten back. No one wanted this baby-talk in their articles. The Commodore 64 didn't have 64 "kibibytes" of RAM (I feel silly even typing that), it had 64 KILOBYTES of RAM. That's how prefixes have always been used in the IT world and always will be. The International System of Units can go to hell.

  26. Re:"they" can fuck off, the binary units are the o by steelfood · · Score: 4, Insightful

    When you read GiB in your head, do you say "gigabyte" or "gibibyte?"

    --
    "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
  27. Re:"they" can fuck off, the binary units are the o by bws111 · · Score: 5, Insightful

    None of what you are talking about has anything to do with what I said. I am talking about the measurement of things, not the things themselves.

    Memory components are power-of-two boundaries in size. This is necessary because if they were other than a power-of-two in size, math would have to be performed on each memory access. For instance, if you had memory chips that were 1000 bytes in size, and you wanted to access byte 1024, you would have to perform a calculation to find that the byte is at location 24 in the second chip. With binary sizes however, all you need to do is use the address lines to directly access the correct location in the correct chip. Also note that the word-size of the data does not matter: you could return 1 bit, 8 bits, 10 bits, anything at all. What matters is that the number of 'things' (whatever size of the 'thing' itself is) is always a power of two.

    Network speeds are not dependant in the slightest on a power-of-two, regardless of the data being transported. There is absolutely no reason to say that a network that can transfer 1024 bits per second is in any way better or more natural than one that can transfer 1000 bps or one that can transfer 1100 bps. There is no reason to assume that a 'kilobit per second' is anything other than 1000 bps. And if you change the measurement to count bytes instead of bits, a network can transfer 137.5 Bps as easily as it can transfer 1100 bps, or 1.1Kbps.

    Hard disk sizes are like network speeds: there is no inherent power-of-two to their size. There is no reason why a disk could not be made to hold exactly 1000000 bytes (excluding the fact that you would have a partial sector). Therefore, trying to force some power-of-two based prefix on those sizes is just silly.