mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 06:58:05 +02:00
r600g: Re-enable growing of the compute memory pool
This commit is contained in:
parent
44b1050e6c
commit
91ee735001
2 changed files with 4 additions and 18 deletions
|
|
@ -64,10 +64,7 @@ static void compute_memory_pool_init(struct compute_memory_pool * pool,
|
|||
COMPUTE_DBG("* compute_memory_pool_init() initial_size_in_dw = %ld\n",
|
||||
initial_size_in_dw);
|
||||
|
||||
/* XXX: pool->shadow is used when the buffer needs to be resized, but
|
||||
* resizing does not work at the moment.
|
||||
* pool->shadow = (uint32_t*)CALLOC(4, pool->size_in_dw);
|
||||
*/
|
||||
pool->shadow = (uint32_t*)CALLOC(initial_size_in_dw, 4);
|
||||
pool->next_id = 1;
|
||||
pool->size_in_dw = initial_size_in_dw;
|
||||
pool->bo = (struct r600_resource*)r600_compute_buffer_alloc_vram(pool->screen,
|
||||
|
|
@ -169,19 +166,9 @@ void compute_memory_grow_pool(struct compute_memory_pool* pool,
|
|||
|
||||
assert(new_size_in_dw >= pool->size_in_dw);
|
||||
|
||||
assert(!pool->bo && "Growing the global memory pool is not yet "
|
||||
"supported. You will see this message if you are trying to"
|
||||
"use more than 64 kb of memory");
|
||||
|
||||
if (!pool->bo) {
|
||||
compute_memory_pool_init(pool, MAX2(new_size_in_dw, 1024 * 16));
|
||||
} else {
|
||||
/* XXX: Growing memory pools does not work at the moment. I think
|
||||
* it is because we are using fragment shaders to copy data to
|
||||
* the new texture and some of the compute registers are being
|
||||
* included in the 3D command stream. */
|
||||
fprintf(stderr, "Warning: growing the global memory pool to"
|
||||
"more than 64 kb is not yet supported\n");
|
||||
new_size_in_dw += 1024 - (new_size_in_dw % 1024);
|
||||
|
||||
COMPUTE_DBG(" Aligned size = %d\n", new_size_in_dw);
|
||||
|
|
|
|||
|
|
@ -645,10 +645,9 @@ static int r600_get_compute_param(struct pipe_screen *screen,
|
|||
case PIPE_COMPUTE_CAP_MAX_GLOBAL_SIZE:
|
||||
if (ret) {
|
||||
uint64_t * max_global_size = ret;
|
||||
/* XXX: This is 64kb for now until we get the
|
||||
* compute memory pool working correctly.
|
||||
*/
|
||||
*max_global_size = 1024 * 16 * 4;
|
||||
/* XXX: This is what the proprietary driver reports, we
|
||||
* may want to use a different value. */
|
||||
*max_global_size = 201326592;
|
||||
}
|
||||
return sizeof(uint64_t);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue