From: "Thomas Hellström" <thomas.hellstrom@linux.intel.com>
To: intel-xe@lists.freedesktop.org
Cc: "Thomas Hellström" <thomas.hellstrom@linux.intel.com>,
"Matthew Brost" <matthew.brost@intel.com>,
"Somalapuram Amaranath" <Amaranath.Somalapuram@amd.com>,
"Christian König" <christian.koenig@amd.com>,
"Paulo Zanoni" <paulo.r.zanoni@intel.com>,
"Simona Vetter" <simona.vetter@ffwll.ch>,
dri-devel@lists.freedesktop.org
Subject: [PATCH v15 9/9] drm/xe: Increase the XE_PL_TT watermark
Date: Tue, 17 Dec 2024 15:58:52 +0100 [thread overview]
Message-ID: <20241217145852.37342-10-thomas.hellstrom@linux.intel.com> (raw)
In-Reply-To: <20241217145852.37342-1-thomas.hellstrom@linux.intel.com>
The XE_PL_TT watermark was set to 50% of system memory.
The idea behind that was unclear since the net effect is that
TT memory will be evicted to TTM_PL_SYSTEM memory if that
watermark is exceeded, requiring PPGTT rebinds and dma
remapping. But there is no similar watermark for TTM_PL_1SYSTEM
memory.
The TTM functionality that tries to swap out system memory to
shmem objects if a 50% limit of total system memory is reached
is orthogonal to this, and with the shrinker added, it's no
longer in effect.
Replace the 50% TTM_PL_TT limit with a 100% limit, in effect
allowing all graphics memory to be bound to the device unless it
has been swapped out by the shrinker.
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
---
drivers/gpu/drm/xe/xe_ttm_sys_mgr.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_ttm_sys_mgr.c b/drivers/gpu/drm/xe/xe_ttm_sys_mgr.c
index 9844a8edbfe1..d38b91872da3 100644
--- a/drivers/gpu/drm/xe/xe_ttm_sys_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_sys_mgr.c
@@ -108,9 +108,8 @@ int xe_ttm_sys_mgr_init(struct xe_device *xe)
u64 gtt_size;
si_meminfo(&si);
+ /* Potentially restrict amount of TT memory here. */
gtt_size = (u64)si.totalram * si.mem_unit;
- /* TTM limits allocation of all TTM devices by 50% of system memory */
- gtt_size /= 2;
man->use_tt = true;
man->func = &xe_ttm_sys_mgr_func;
--
2.47.1
next prev parent reply other threads:[~2024-12-17 14:59 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-17 14:58 [PATCH v15 0/9] TTM shrinker helpers and xe buffer object shrinker Thomas Hellström
2024-12-17 14:58 ` [PATCH v15 1/9] drm/ttm: Balance ttm_resource_cursor_init() and ttm_resource_cursor_fini() Thomas Hellström
2024-12-17 14:58 ` [PATCH v15 2/9] drm/ttm: Provide a shmem backup implementation Thomas Hellström
2024-12-17 14:58 ` [PATCH v15 3/9] drm/ttm/pool: Restructure the pool allocation code Thomas Hellström
2025-01-10 9:45 ` Christian König
2025-01-10 17:57 ` Matthew Brost
2024-12-17 14:58 ` [PATCH v15 4/9] drm/ttm/pool, drm/ttm/tt: Provide a helper to shrink pages Thomas Hellström
2025-01-16 1:57 ` Matthew Brost
2024-12-17 14:58 ` [PATCH v15 5/9] drm/ttm: Use fault-injection to test error paths Thomas Hellström
2024-12-17 14:58 ` [PATCH v15 6/9] drm/ttm: Add a macro to perform LRU iteration Thomas Hellström
2024-12-17 14:58 ` [PATCH v15 7/9] drm/ttm: Add helpers for shrinking Thomas Hellström
2024-12-17 14:58 ` [PATCH v15 8/9] drm/xe: Add a shrinker for xe bos Thomas Hellström
2024-12-17 14:58 ` Thomas Hellström [this message]
2024-12-17 20:54 ` ✓ CI.Patch_applied: success for TTM shrinker helpers and xe buffer object shrinker (rev16) Patchwork
2024-12-17 20:55 ` ✗ CI.checkpatch: warning " Patchwork
2024-12-17 20:56 ` ✓ CI.KUnit: success " Patchwork
2024-12-17 21:14 ` ✓ CI.Build: " Patchwork
2024-12-17 21:16 ` ✓ CI.Hooks: " Patchwork
2024-12-17 21:18 ` ✗ CI.checksparse: warning " Patchwork
2024-12-17 21:53 ` ✓ Xe.CI.BAT: success " Patchwork
2024-12-18 7:48 ` ✗ Xe.CI.Full: failure " Patchwork
2025-01-10 9:47 ` [PATCH v15 0/9] TTM shrinker helpers and xe buffer object shrinker Christian König
2025-01-10 13:04 ` Thomas Hellström
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=20241217145852.37342-10-thomas.hellstrom@linux.intel.com \
--to=thomas.hellstrom@linux.intel.com \
--cc=Amaranath.Somalapuram@amd.com \
--cc=christian.koenig@amd.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=matthew.brost@intel.com \
--cc=paulo.r.zanoni@intel.com \
--cc=simona.vetter@ffwll.ch \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).