11 ms·
> because of course disk vendors quote everything in the smaller SI units). SI prefixes should be (and are) the rule rather than the exception. It only made se
by kloch 4y ago
> because of course disk vendors quote everything in the smaller SI units).
SI prefixes should be (and are) the rule rather than the exception. It only made sense to measure ram in base-2 units because they are manufactured according to base-2 addressing.
HDD’s have never used base 2 addressing.
Another example is network media. Serialized data transfer speed is measured in {K,M,G,T}b/s (bits) or B/s (Bytes) where a Gigabit is exactly 1000000000 bits and Gigabyte is exactly 1000000000 bytes.
In the early days of computers ram was extremely scarce and expensive. It was such a limitation that it was usually the very first question you asked about a computer’s capabilities.
I remember in 5th grade asking a fellow student who’s parents had just bought an Atari 800 “How much ‘K’ does it have?”
This intense focus on ram may have led people to assume that it’s odd nomenclature would apply to anything computer related.
- yread 4y agoWell but they did use 512 B sectors
- jeroenhd 4y agoBase 2 is used in the world's most common desktop operating system(s) so it's no surprise that people get confused. They buy a hard drive that's supposed to be 1TB and when they install it their computer says it's 0.9TB, that's surprising to those not in the know. Despite hard drive manufacturers using correct units, people still blame hard drive manufacturers for their disappointment.
- themerone 4y agoI have to disagree. Computers measure storage in base 2, this is why it is people's expectation. Marketers measure in base 10 because it lets them inflate the stated capacity in a way that isn't legally fraudulent.
- nickff 4y ago>"Computers measure storage in base 2" What do you mean? 'Computers' don't measure storage, they execute programs. Humans (often programmers) are the ones who want to know about storage.
- rzz3 4y agoThose executed programs measure storage.
- nickff 4y ago'Measuring' is a human paradigm.
- wronglyprepaid 4y agoSo is everything else related to computers. Humans made computers. Computers are a human paradigm.
- nickff 4y agoNo, many things related to 'computers' are determined by physics and chemistry. In any case, 'computer' is being used loosely (and poorly) here, which is why I have been putting it in single quotes. 'Computer' can mean many things.
- dingleberry420 4y agohttps://en.wikipedia.org/wiki/Processor_register#Size https://en.wikipedia.org/wiki/Processor_register#Size
- jotm 4y agoIsn't that "base-10"? HDDs, RAM, network speed were base-2 (e.g. 1TB = 1024GB) for most of my life until SSDs became common and even Google now says "1 Gigabyte = 1000 Megabytes" to my exasperation.
- cyberge99 4y agoTechnically it’s gibibyte(s).
- CorrectHorseBat 4y agoAFAIK network and HDDs were always measured in si units, only RAM was measured in powers of 2.
- deleted 4y ago[deleted]
- microtonal 4y agoFor hard drives it was complicated, since their size is a function of the number of cylinders, heads, and sectors. Since the sector size is normally 512 bytes, they were a multiple of that. See e.g. this table of old hard drives: https://www.computerhope.com/hdquantu.htm https://www.computerhope.com/hdquantu.htm E.g., if you take the Quantum Bigfoot 1.2 GB model: 2492 cylinders * 16 heads * 63 sectors * 512 bytes per sector = 1286111232 bytes The size it was sold as, is definitely closer GiB (as in power of two): 1.2 * 2*30 = 1288490189 With rounding, they could sell it as 1.3 GiB with the current marketing trick of using SI units. So the old branding strategy seems to have been: compute the size in bytes, then find a reasonably MiB or GiB value (powers of two).
- kloch 4y agoThe gap between SI prefixes and their base-2 approximations grows as sizes get larger. Before 1GB HDD’s the file system overhead was a much more dramatic effect so it didn’t really matter to consumers which prefix convention they used or how they rounded.
- 4y ago
- OskarS 4y agoIt's absurd to claim they're doing this for any other reason beyond deceptive marketing. It's like an advertising version of a dark pattern: a decision which has a sheen of reasonableness, but is clearly designed to deceive and exploit your customers. Nowhere else in the computer is the base-10 version standard, and it shouldn't be. The sentence "a 32-bit CPU register can address up to 4 gigabyte of memory" is clearly reasonable, the sentence "a 32-bit CPU register can address up to 4.29497... gigabytes of memory" is not. It's not just ram though: all basic data types (bytes, ints, floats, pointers, SIMD registers, whatever) are sized to powers of 2, having a storage unit that is not is insanity. Or, to bring it back to hard drives: what's the max file size of a file stored on a FAT32 filesystem again? It's just bad and deceptive, and hard drive manufactures should not be allowed to play these kinds of games. You should stop carrying the water for their shitty practices.
- perennialmind 4y agoThe sentence "a 32-bit CPU register can address up to 4 gigabyte of memory" is sloppy, the sentence "a 32-bit CPU register can address up to 4 GiB of memory" is not.
- hulitu 4y ago> The sentence "a 32-bit CPU register can address up to 4 gigabyte of memory" is sloppy, the sentence "a 32-bit CPU register can address up to 4 GiB of memory" is not. "Up to" is marketing. From my experience "up to" starts from 0.
- mwint 4y ago32 bits can address 4GiB. That's how 2^32 works. It can also address 2GiB, or 1GiB. I think the wording is fine. Like saying a car can go up to 200mph, no one thinks the car is unable to go 50mph.
- vel0city 4y agoHow many meters are there in a kilometer? 1024?
- cesarb 4y ago> HDD’s have never used base 2 addressing. The two most common sector sizes on HDDs are 512 bytes (a byte being 8 bits) and 4096 bytes. Base 2 units make a lot more sense with these power-of-two sector sizes than base 10 units.
- taffer 4y agoEthernet packages are 1518 bytes or 12144 bits. Maybe we should start measuring network speed in power-of-12144. No honestly: Kilo should always mean 1'000, Mega should always mean 1'000'000 and not 1'048'576.
- cassianoleal 4y ago> Kilo should always mean 1'000, Mega should always mean 1'000'000 and not 1'048'576. And that's why we have "kibi", "mebi", etc. So Kilo means times 1,000. Kibi means times 1,024 and so on.
- deleted 4y ago[deleted]
- jaclaz 4y ago>HDD’s have never used base 2 addressing. Still the "minimum" unit, the sector or "block" is 512 or 4096 bytes, so the multiple/power of 2 is "ingrained" in the media.
- deleted 4y ago[deleted]
- 0cVlTeIATBs 4y agoAny HDD spec sheet will give a base-2 definition for "MB". They use this when reporting cache size.
- ksidudwbw 4y agoFunny enough RAM is still used to segment products in price classes even though its cheap. Want to buy a entry level mac? 8GB here you go, now you can only have a couple of tabs up and god forbid you open up photoshop while browsing. It wont run out of memory but it will page to disk making switching programs slower. Next you have an OS update which conveniently consumes more RAM.
- colanderman 4y agoHard drives (both rotary and SSD; floppies [1] and CDs [2] also) are also manufactured according to base-2 addressing. They are low-level formatted at the factory in sectors which are power-of-2 sizes. [3] This has been true for at least 40 years. [4] [1] https://en.wikipedia.org/wiki/Disk_formatting#Low-level_formatting_of_floppy_disks https://en.wikipedia.org/wiki/Disk_formatting#Low-level_form... [2] https://en.wikipedia.org/wiki/CD-ROM#Sector_structure https://en.wikipedia.org/wiki/CD-ROM#Sector_structure [3] https://en.wikipedia.org/wiki/Disk_formatting#Low-level_formatting_(LLF)_of_hard_disks https://en.wikipedia.org/wiki/Disk_formatting#Low-level_form... [4] https://en.wikipedia.org/wiki/Disk_sector https://en.wikipedia.org/wiki/Disk_sector
- walrus01 4y ago> Another example is network media. Serialized data transfer speed is measured in {K,M,G,T}b/s (bits) or B/s (Bytes) where a Gigabit is exactly 1000000000 bits and Gigabyte is exactly 1000000000 bytes. interesting network trivia: a LANPHY and a WANPHY 10 gigabit ethernet connection are not quite the same thing. The latter is designed to fit within legacy DWDM transport systems designed to carry OC-192 so its data rate will fit within 9953.28 Mbit/s or slightly under that.
- hinkley 4y agoAs files have gotten bigger though, I have found myself in situations where I've had to explain why, if it's taking longer than you expect for a file to transfer, about 7% of that is unit conversion errors. So while there is a bit of waste and we could do some work to speed up the transfer, it's still going to be 10% less than you think is attainable. But even so, the gigabyte sins of the hard drive makers are still less than half of those of the network card makers who used to advertise baud instead of bytes, so the fact that the data is going across as 5:4 encoding means that you divide the Kbps by 10 - not 8 - to get the actual throughput. Fuck those guys.
- mlyle 4y ago> But even so, the gigabyte sins of the hard drive makers are still less than half of those of the network card makers who used to advertise baud instead of bytes, Actually, they generally specified bits per second, even if they called it "baud". > so the fact that the data is going across as 5:4 encoding means that you divide the Kbps by 10 - not 8 - to get the actual throughput. Stop bits and start bits. E.g. a 9600 bit per second v.32 MODEM operated at 2400 baud (2400 4 bit symbols per second), and had an end-user throughput of 960 characters per second.
- soneil 4y ago"preach". RAM is sort of relevant to this though. Clock speed is base10. Line speed is base10. Storage is base10. But ram is base2, because it's almost always constructed as a grid. Tapes are essentially unitless, how long is a piece of string. The earliest magnetic harddrive I can find is the IBM 350 storing 5 million 6-bit characters. Where 5 million is 5 and a bunch of zeros. it's not 4.75 .. mibilion? Where things get weird, is when we start dividing tracks into sectors. For convenience we went for sectors that were convenient to page into memory. Every harddrive since that has had a base10 number of base2 sectors. From that point onwards, you can be team base10 or team base2, they both end up wrong. And this is how we end up with the 1.44MB floppy, where 1.44MB is 2880 * 512kb. Or 1.44 * 1000 * 1024.
- cmurf 4y agoWhy does the storage size unit of measure have to do with addressing? That drive addressing uses the LBA-48 (bit) addressing has nothing to do with the fact the minimum addressible unit size, the physical sector is a base-2 value, i.e. 512 bytes or 4096 bytes. Still seems the storage unit size should be IEC based, not SI.