[Oisf-devel] GPU Support

Charles Wyble charles at thewybles.com
Wed Jan 6 18:29:13 UTC 2010



On 1/6/10 7:50 AM, Victor Julien wrote:


>
> Your help will be greatly appreciated!
>
> The current status of our support is that we have a almost working
> OpenCL pattern matcher. Almost, as we keep running into driver issues
> and such. The status of OpenCL implementations so far seems a little
> immature.
>

Yes that does seem to be the case. However it seems to give the best 
bang for the buck once it matures. In that you can have code spanning 
multiple types of parallel systems (cores/gpu/cell).


> This is why we plan to focus on CUDA first the coming weeks. That will
> limit us to Nvidia obviously, but at least it should work then :)

I think that's a good idea. :) They are certainly the most 
mature/popular implementation and fermi promises to be quite cool.

>
> A second issue is that just invoking the GPU based pattern matcher for
> each packet/buffer is going to kill performance, not help it.

Yes.... I've been pondering this problem.

So we'll
> have to design some sort of batch pattern scan mode. That too is
> something I plan to work on in the coming weeks.

Excellent. There are of course different use cases for IDS. Real time, 
near real time, batch.


Though the PCI-X bus seems to have enough bandwidth.

Running on......
       device 0:GeForce 8400 GS
Quick Mode
Host to Device Bandwidth for Pageable memory
.
Transfer Size (Bytes)	Bandwidth(MB/s)
  33554432		2550.1

Quick Mode
Device to Host Bandwidth for Pageable memory
.
Transfer Size (Bytes)	Bandwidth(MB/s)
  33554432		2049.5

Quick Mode
Device to Device Bandwidth
.
Transfer Size (Bytes)	Bandwidth(MB/s)
  33554432		4583.6

&&&& Test PASSED

Press ENTER to exit...




Do you see the performance hit with both CUDA and OpenCL? Would be very 
interested in knowing more details on the bottlenecks, how profiling is 
being done etc.

>
> So... lot of work to do :)

Indeed.

>
> I will commit our current OpenCL soon which means you can look at it and
> run it to see if it has bugs (assuming we get rid of the current bugs,
> see above) and then complain about the performance :) Later I hope our
> code will be more useful and then any testing will be greatly appreciated!


Is there an existing git repo separate from the main one? Would be happy 
to alpha/beta test.






More information about the Oisf-devel mailing list