CUDAImageConvolve kernel size
- To: mathgroup at smc.vnet.net
- Subject: [mg123917] CUDAImageConvolve kernel size
- From: Vadim Zaliva <krokodil at gmail.com>
- Date: Fri, 30 Dec 2011 07:05:38 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
I am trying to use CUDAImageConvolve as a drop-in replacement for ImageConvolve to speed up my calculations. It appears there is a limit on kernel size. CUDAImageConvolve::invdim: CUDALink encountered an object with invalid dimensions. ImageDimensions of my image are {956, 500}. If I use with kernel 41x41 kernel, it works. However using with 101x101 kernel produces an error: "CUDAImageConvolve::invdim: CUDALink encountered an object with invalid dimensions." CUDAInformation[] reports: {1 -> {"Name" -> "GeForce GT 330M", "Clock Rate" -> 1100000, "Compute Capabilities" -> 1.2, "GPU Overlap" -> 1, "Maximum Block Dimensions" -> {512, 512, 64}, "Maximum Grid Dimensions" -> {65535, 65535, 1}, "Maximum Threads Per Block" -> 512, "Maximum Shared Memory Per Block" -> 16384, "Total Constant Memory" -> 65536, "Warp Size" -> 32, "Maximum Pitch" -> 2147483647, "Maximum Registers Per Block" -> 16384, "Texture Alignment" -> 256, "Multiprocessor Count" -> 6, "Core Count" -> 48, "Execution Timeout" -> 1, "Integrated" -> False, "Can Map Host Memory" -> True, "Compute Mode" -> "Default", "Texture1D Width" -> 8192, "Texture2D Width" -> 65536, "Texture2D Height" -> 32768, "Texture3D Width" -> 2048, "Texture3D Height" -> 2048, "Texture3D Depth" -> 2048, "Texture2D Array Width" -> 8192, "Texture2D Array Height" -> 8192, "Texture2D Array Slices" -> 512, "Surface Alignment" -> 256, "Concurrent Kernels" -> False, "ECC Enabled" -> False, "TCC Enabled" -> False, "Total Memory" -> 536543232}} "Maximum Block Dimensions" may be interpreted as kernel size limit, but I am well below that. Any suggestions? Thanks!