Looks good to me too. Once you've applied it, I'll bump the driver limits appropriately for r6xx/7xx/evergreen.
Alex On Mon, Nov 29, 2010 at 12:00 PM, Marek Olšák <[email protected]> wrote: > FWIW, it looks good to me. > > Marek > > On Wed, Nov 24, 2010 at 8:18 PM, Brian Paul <[email protected]> wrote: >> >> On 11/24/2010 12:10 PM, Brian Paul wrote: >>> >>> On 11/24/2010 10:20 AM, Brian Paul wrote: >>>> >>>> On 11/24/2010 05:23 AM, Marek Olšák wrote: >>>>> >>>>> In order to be able to create and render to textures of size 8192x8192 >>>>> on r600 and nv50, including 3D textures like 8192x4x4. >>>>> >>>>> Two new piglit tests have been added to test this: fbo-maxsize and >>>>> tex3d-maxsize. >>>>> >>>>> Driver status: >>>>> swrast passes fbo-maxsize and segfaults in tex3d-maxsize. >>>>> softpipe and r300g pass both. >>>>> (r300g returns GL_OUT_OF_MEMORY in tex3d-maxsize). >>>>> >>>>> Cc: Brian Paul<[email protected]> >>>>> Signed-off-by: Marek Olšák<[email protected]> >>>>> --- >>>>> src/mesa/main/config.h | 14 +++++++------- >>>>> 1 files changed, 7 insertions(+), 7 deletions(-) >>>>> >>>>> diff --git a/src/mesa/main/config.h b/src/mesa/main/config.h >>>>> index 0f2d1a8..5388069 100644 >>>>> --- a/src/mesa/main/config.h >>>>> +++ b/src/mesa/main/config.h >>>>> @@ -98,16 +98,16 @@ >>>>> #define MAX_COLOR_TABLE_SIZE 256 >>>>> >>>>> /** Number of 1D/2D texture mipmap levels */ >>>>> -#define MAX_TEXTURE_LEVELS 13 >>>>> +#define MAX_TEXTURE_LEVELS 14 >>>>> >>>>> /** Number of 3D texture mipmap levels */ >>>>> -#define MAX_3D_TEXTURE_LEVELS 9 >>>>> +#define MAX_3D_TEXTURE_LEVELS 14 >>>>> >>>>> /** Number of cube texture mipmap levels - GL_ARB_texture_cube_map */ >>>>> -#define MAX_CUBE_TEXTURE_LEVELS 13 >>>>> +#define MAX_CUBE_TEXTURE_LEVELS 14 >>>>> >>>>> /** Maximum rectangular texture size - GL_NV_texture_rectangle */ >>>>> -#define MAX_TEXTURE_RECT_SIZE 4096 >>>>> +#define MAX_TEXTURE_RECT_SIZE 8192 >>>>> >>>>> /** Maximum number of layers in a 1D or 2D array texture - >>>>> GL_MESA_texture_array */ >>>>> #define MAX_ARRAY_TEXTURE_LAYERS 64 >>>>> @@ -140,11 +140,11 @@ >>>>> */ >>>>> >>>>> #ifndef MAX_WIDTH >>>>> -# define MAX_WIDTH 4096 >>>>> +# define MAX_WIDTH 8192 >>>>> #endif >>>>> /** Maximum viewport/image height */ >>>>> #ifndef MAX_HEIGHT >>>>> -# define MAX_HEIGHT 4096 >>>>> +# define MAX_HEIGHT 8192 >>>>> #endif >>>>> >>>>> /** Maxmimum size for CVA. May be overridden by the drivers. */ >>>>> @@ -168,7 +168,7 @@ >>>>> #define MAX_TEXTURE_MAX_ANISOTROPY 16.0 >>>>> >>>>> /** For GL_EXT_texture_lod_bias (typically MAX_TEXTURE_LEVELS - 1) */ >>>>> -#define MAX_TEXTURE_LOD_BIAS 12.0 >>>>> +#define MAX_TEXTURE_LOD_BIAS 13.0 >>>>> >>>>> /** For any program target/extension */ >>>>> /*...@{*/ >>>> >>>> I'm OK w/ increasing the limits but there's a few other issues that need >>>> to be fixed before this patch can be applied. I'm working on it now... >>> >>> Here's a more elaborate patch. >>> >>> It checks if the memory used by the texture is less than some limit. If >>> the limit is exceeded, GL_OUT_OF_MEMORY is generated (unless it's a >>> proxy texture). This lets us advertise GL_MAX_3D_TEXTURE_SIZE to be 8K >>> (or larger) while preventing actual 8Kx8Kx8K textures but allowing >>> 8Kx32x16, for example. This could have been implemented in each of the >>> drivers using the ctx->Driver.TestProxyImage() hook but this patch >>> avoids all that redundant code. >>> >>> I'll leave it up to driver maintainers to set the new >>> ctx->Const.MaxTextureMBytes field to a reasonable driver. The default is >>> currently 1GB. >>> >>> The max texture size is also bumped up to 16K, Alex. >>> >>> Ideally, we should also have a piglit test that exercises rasterization >>> with the max possible texture/surface size to see if the fixed point >>> rasterization really falls apart as I fear. >>> >>> If there's no comments/concerns I'll commit in a day or two. >>> >>> I've also posted a patch to the tex3d-maxsize.c test to the piglit test. >> >> Attachment. >> >> -Brian >> >> >> _______________________________________________ >> mesa-dev mailing list >> [email protected] >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev >> > > > _______________________________________________ > mesa-dev mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
