Texture atlas is different (below is example):
http://pocketgod.wikia.com/wiki/File:TextureAtlas0.png
You can just create set of MemObjects, with different size, and, according to input and attributes, use it.
As well as you can use one big object for multiple operations, dependently from region, just in one kernel cycle.
According to second question, when you started process, you have size, I'm not understanding how you can process data which size you doesn’t know, what you processing in this case :) ?
-----Original Message-----
From: Zoltán Herczeg [
mailto:hzmester@freemail.hu]
Sent: Tuesday, February 12, 2013 1:47 PM
To: Roman Vasilyev
Cc: pcre-dev@???
Subject: RE: [pcre-dev] PCRE GPU offload
>Now I'm completely clear where is the problem.
> But seems like OpenCL doing it same way as OpenSSL makes AES en/decryption.
> It uses 16byte blocks for operation, just you know you using full 16 or just part of it.
> And in case of texture size, you can create smaller texture size and
>upload your 1MB "string stream" by blocks, once first entry is done, you can stop uploading.
> Minimum texture size 1pixel.
Is this called texture atlas? Or is that something different? I am not a CL expert :)
The other thing we need to worry about is the matching length. Let's say we start matching parallelly from the first 128 starting offsets, but the matching length is not known at compile time. It can be 100 bytes, 1000 bytes, anything. Are you able to do that without uploading the whole input, which is the worst case? E.g: /\p{Any}*/ matches the whole input.
Regards,
Zoltan