Wednesday, February 23, 2005

Ideas from GPGPU Forums:



GPGPU forum

woody said:

"Interesting idea. I haven't come across anything on this theme so far, but it has a lot of benefits.
I'm not sure what sort of performance you can achieve, but you could certainly do off-line packet analysis (eg. snort) operations, or do something like encoding 100 or so packets in rows in a texture and processing this texture once a second. So long as the processing time isn't greater then once a second, you're still processing every packet.

There's likely to be a few problems with recording information between rendering passes (say for classification/detection), but with MRT and RenderTextures (espec. with the soon-to-be-supported EXT_framebuffer_object extension), these should be able to be sorted out with minor detriment to performance. "

------------------------------

MRT (Mutliple Render to Texture):

RenderTexture:

EXT_framebuffer_object:

Tuesday, February 22, 2005

Snort on the GPU !!!



The idea is to try an implement the computationally intense portions in Snort on the GPU. Snort needs to operate at network speeds (gigabytes/sec) so much effort has gone into optimizing the Snort's packet scanner. Hopefully, the GPU can be used to really speed this up.

Some ideas/thoughts:


  • The efforts the optimize the AC algorithm have focussed on encoding approaches, such as how the state machine is encoded. These usual rely on sparse-matrix or vector representations.

  • the state-machine could be first encoded as a texture which is then accessed in a read-only fashion by texture sampling. Good idea.