‹ BackHN Continuity

Thread

ReBarUEFI: Resizable BAR for almost any UEFI system

243 points · 77 comments · nateb2022

  1. bigwheels · · focus · HN ↗
    What does this do? I perused the README but I'm still clueless on what the purpose and use-case is for ReBAR.

    (Posting this under the assumption others will also appreciate a bit of quick context.)

    1. mathisfun123 · · focus · HN ↗
      > what the purpose and use-case is for ReBAR

      Literally the second sentence in the repo:

      > This provides performance benefits and is even required for Intel Arc GPUs to function optimally.

      1. qudat · · focus · HN ↗
        Your quote doesn’t help me understand this project at all.

        What is a BAR let alone a resizable one? Readme just jumps in, which is fine, but I’m not sure why this is on HN or why I should care.

        1. toast0 · · focus · HN ↗
          BARs are part of the PCI spec, they're the way for firmware and OS to determine the size of the memory or i/o window the card controls as well as the way for the system firmware (usually) to pick what address range the card should use.

          In the old days, they were a fixed size. If your GPU has 16 GB of ram and you want to access all of it via memory addresses, you'd need a 16 GB BAR ... but lots of (older) systems wouldn't be able to map in a large BAR because of a lack of address lines (or wahtever), so GPUs had stayed with 256MB for VRAM access because it was compatible. With a smaller BAR than the VRAM, you have to use some sort of windowing / paging setup. Resizable BAR lets the BAR start small so older systems will work, but grow larger with capable systems.

          Much better than having a jumper to set the BAR to big or small, and you can skip VRAM window management.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.