LGTM, will push latter, thanks.
On Wed, Nov 27, 2013 at 02:06:50PM +0800, Yang Rong wrote: > When create image, due to alignment, will casue size large than max alloc > size. > Enlarge the global memory size and using it to check size when alloc. > > Signed-off-by: Yang Rong <[email protected]> > --- > src/cl_gt_device.h | 2 +- > src/cl_mem.c | 10 +++------- > 2 files changed, 4 insertions(+), 8 deletions(-) > > diff --git a/src/cl_gt_device.h b/src/cl_gt_device.h > index e8fa362..d53588f 100644 > --- a/src/cl_gt_device.h > +++ b/src/cl_gt_device.h > @@ -51,7 +51,7 @@ > .min_data_type_align_size = sizeof(cl_long) * 16, > .single_fp_config = 0, /* XXX */ > .global_mem_cache_type = CL_READ_WRITE_CACHE, > -.global_mem_size = 128 * 1024 * 1024, > +.global_mem_size = 256 * 1024 * 1024, > .max_constant_buffer_size = 512 << 10, > .max_constant_args = 8, > .error_correction_support = CL_FALSE, > diff --git a/src/cl_mem.c b/src/cl_mem.c > index 8c9f8a8..1380176 100644 > --- a/src/cl_mem.c > +++ b/src/cl_mem.c > @@ -59,12 +59,7 @@ cl_get_mem_object_type(cl_mem mem) > case CL_MEM_GL_IMAGE_TYPE: > { > struct _cl_mem_image *image = cl_mem_image(mem); > - if (image->depth == 1) > - return CL_MEM_OBJECT_IMAGE1D; > - else if (image->depth == 2) > - return CL_MEM_OBJECT_IMAGE2D; > - else if (image->depth == 3) > - return CL_MEM_OBJECT_IMAGE3D; > + return image->image_type; > } > default: > return CL_MEM_OBJECT_BUFFER; > @@ -209,8 +204,9 @@ cl_mem_allocate(enum cl_mem_type type, > > assert(ctx); > > + /* Due to alignment, the image size may exceed alloc max size, check > global mem instead */ > if ((err = cl_get_device_info(ctx->device, > - CL_DEVICE_MAX_MEM_ALLOC_SIZE, > + CL_DEVICE_GLOBAL_MEM_SIZE, > sizeof(max_mem_size), > &max_mem_size, > NULL)) != CL_SUCCESS) { > -- > 1.8.1.2 > > _______________________________________________ > Beignet mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/beignet _______________________________________________ Beignet mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/beignet
