Recommendations for processing strings on a GPU?

I was wondering how realistic it is to process strings, not numbers, on the GPU? In particular, I'm interested in using C ++ AMP to perform comparisons between an array of strings and a target string.

I started with the basics, such as passing wchar_t* strings[] to a function, but it turned out that you can't even create a view with a type less than int !

So my question is: are there any best practices or is this a bad idea at all? I'm also interested in things like warp deflation - for example, how efficient would it be to calculate the lengths of strings in a large array?

+4
source share
1 answer

You can work with characters in C ++ AMP on this blog: http://blogs.msdn.com/b/nativeconcurrency/archive/2012/01/17/c-amp-it-s-got-character-but- no-char.aspx

IMO deviation from warp is no different from string processing, as it would be in other algorithms, so I would not worry about this aspect of things. First do it right, then quickly, then configure it faster.

In September, we will publish an example of string processing on our blog that shows the performance benefits of C ++ AMP over a multi-core processor implementation - statistics are set up for this purpose. In short, yes, it could be worth offloading string manipulation algorithms with accelerators such as GPUs.

+6
source

All Articles