• Skull giver@popplesburger.hilciferous.nl
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    Computers generally use 1024 because that’s a lot easier to work with. Those are gibibytes (with “bi” in the middle indicating “binary”) or GiB.

    Anyone selling you storage will use the SI prefixes (powers of 1000) because that’s technically correct. Those are gigabytes (GB).

    Technically, factors of 1000 are correct. Powers of 1024 are used out of programmer laziness or backwards compatibility with spinning disks.

    This is why you’re missing over 10% of every new drive you buy, different companies are measuring in different units. The worst part is probably that software is often measuring in GiB, but displaying GB because of familiarity.

    RAM is usually GiB even if the label says GB, though, because you need to work in powers of two to make RAM work right.

    • Alonely0 🦀@mastodon.social
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      @skullgiver @LaughingFox It’s not programmer laziness at all, RAM modules’ size has to be of a power of 2 on most platforms because of various assumptions the CPU makes in memory alignment and memory bulk reads for performance reasons. Processors don’t interact directly with the flash dies, so it’s fine for them to be of the size they feel like provided the controller knows what it’s doing.

      • Skull giver@popplesburger.hilciferous.nl
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Anything presented to the end user can just be real numbers. The end user doesn’t give a damn about sector sizes or NAND configuration, want want an estimate of how many cat pictures they can store on their drive.

        There is some overhead but you don’t solve that by using 1024 for reporting disk side. The overhead depends on fragmentation and the configuration of the file system when the drive was formatted.

        Even on the hardware level, QLC NAND cell will operate in 8KiB pages. The 1024 system based on heads/cylinders/sectors is no longer relevant for most people. Put the exact size in sector compatible bits in the advanced UI but give the users something they can actually use.