On 07/01/2016 11:11 AM, Marek Olšák wrote:
On Fri, Jul 1, 2016 at 10:54 AM, Marek Olšák <mar...@gmail.com> wrote:
On Fri, Jul 1, 2016 at 2:52 AM, Vedran Miletić <ved...@miletic.net> wrote:
On 07/01/2016 01:29 AM, Marek Olšák wrote:
From: Marek Olšák <marek.ol...@amd.com>
also fix max_global_size to take a maximum of {vram_size, gart_size}
---
src/gallium/drivers/r600/r600_pipe.c | 2 +-
src/gallium/drivers/radeon/r600_pipe_common.c | 9 +++------
src/gallium/drivers/radeonsi/si_pipe.c | 2 +-
3 files changed, 5 insertions(+), 8 deletions(-)
diff --git a/src/gallium/drivers/r600/r600_pipe.c
b/src/gallium/drivers/r600/r600_pipe.c
index 119c76b..55bbde1 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -301,7 +301,7 @@ static int r600_get_param(struct pipe_screen* pscreen,
enum pipe_cap param)
return 0;
case PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE:
- return MIN2(rscreen->b.info.vram_size, 0xFFFFFFFF);
+ return MIN2(rscreen->b.info.max_alloc_size, 0xFFFFFFFF);
case PIPE_CAP_MIN_MAP_BUFFER_ALIGNMENT:
return R600_MAP_BUFFER_ALIGNMENT;
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c
b/src/gallium/drivers/radeon/r600_pipe_common.c
index d7f1d41..f75fa6c 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.c
+++ b/src/gallium/drivers/radeon/r600_pipe_common.c
@@ -864,8 +864,8 @@ static int r600_get_compute_param(struct pipe_screen
*screen,
* 4 * MAX_MEM_ALLOC_SIZE.
*/
*max_global_size = MIN2(4 * max_mem_alloc_size,
- rscreen->info.gart_size +
- rscreen->info.vram_size);
+
MAX2(rscreen->info.gart_size,
+
rscreen->info.vram_size));
Can't you also use info.max_alloc_size here?
I can do *max_global_size = max_alloc_size; Does that sound good?
Even if max_alloc_size can be 256 MB?
Marek
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
How about
*max_global_size = MIN2(4 * max_mem_alloc_size,
rscreen->info.max_alloc_size);
Would that work? That avoids calculating the same value in two distinct
places, since rscreen->info.max_alloc_size =
MAX2(rscreen->info.gart_size, rscreen->info.vram_size) for both radeon
and amdgpu.
Regards,
Vedran
--
Vedran Miletić
vedran.miletic.net
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev