All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Maucher <bellosilicio@gmail.com>
To: dri-devel@lists.freedesktop.org
Subject: Difference GART/GTT and related questions
Date: Sat, 8 Oct 2022 13:14:34 +0200	[thread overview]
Message-ID: <fa9d4fe7-9b3b-678c-f014-96008877de45@gmail.com> (raw)

Hi dri-devel,

what is the difference between GTT and GART for AMD GPUs?
 From what I gathered when looking through the mailing list archives and 
the freedesktop docs [1] as well as wikipedia [2],
these terms seem to be synonymous, but that can not be the whole truth
(different sizes in dmesg log, different kernel parameters in 
amdgpu/radeon, ...).

As far as I understand it currently,
the size of the GART is depending on some HW/ASIC functionality [3].
On the other hand, I was successfully able to increase the size of the 
GART mapping(?) from 512MB to 1024MB by using amdgpu.gartsize=1024 on my 
RX 6600, and booting the system.

GTT, on the other hand, is the maximum amount of system memory visible 
to the GPU, shared between all processes connected to the GPU.
As I understand it, using GPUVM, each process can have one or more GARTs 
for mapping?
Apparently, there is also something called a GART table window,
what's up with that?

Also, according to what I found in the mailing list archives,
the GPUVM functionality "replaces" old GART with new GART features,
so what is the difference and what exactly is GPUVM?
If I understood correctly, GPUVM is a MMU using page tables on the GPU?

And, additionally, the addresses translated by the GART(s) are 
optionally translated once more by the PCIe IOMMU,
as the former is located on the GPU and the latter is in the CPU's PCIe 
root complex?
Wikipedia mentions something about (another?) GART in an AMD IOMMU...

Lastly, do any of these numbers influence what the longest contiguous 
mapping is for one buffer to the GPU?
As in: can I map 95% or so of the available (GART/GTT?) space into one 
buffer and have the GPU work on it?

Thanks, Peter

[1] https://dri.freedesktop.org/wiki/GART/
[2] https://en.wikipedia.org/wiki/Graphics_address_remapping_table
[3] https://www.kernel.org/doc/html/v6.0/gpu/amdgpu/module-parameters.html


             reply	other threads:[~2022-10-08 11:14 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-08 11:14 Peter Maucher [this message]
2022-10-10 14:05 ` Difference GART/GTT and related questions Alex Deucher
  -- strict thread matches above, loose matches on Subject: below --
2022-10-07 15:49 Peter Maucher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=fa9d4fe7-9b3b-678c-f014-96008877de45@gmail.com \
    --to=bellosilicio@gmail.com \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.