4 ms·
The other thing is that they're a nightmare to programme and they're expensive!
by physicsguy 8y ago
The other thing is that they're a nightmare to programme and they're expensive!
- snaky 8y agoYes, but speedup can be huge. For example, for NFA processing, using (a couple of) 2W FPGA against 200W GPU "GPUs underperform FPGA by a factor ~80-1000x across datasets" http://people.cs.vt.edu/~xdyu/html/ics17.pdf http://people.cs.vt.edu/~xdyu/html/ics17.pdf
- thesz 8y agoThe state transition table is encoded in logic for FPGA and as global memory table for GPU. Why didn't they try to encode state transitions as code on GPU? Also, did they try to use enhanced locality introduced by processing several streams on GPU? E.g., if you keep states sorted as for tuple (state id, stream id) for all your streams, you may get more memory-controller friendly access pattern. I haven't seen mentions of that technique (which MUST be considered after Big Hero 6 [1] - they used that technique to never miss caches in whole movie rendering process). Big Hero 6 is 2014, the paper is 2017. [1] https://en.wikipedia.org/wiki/Big_Hero_6_(film) https://en.wikipedia.org/wiki/Big_Hero_6_(film) I really do not like papers like one linked by you. One system gets all of the treatment while other ones get... whatever is left. I guess have they tried to use these techniques for GPUs, they would get performance gap that is much less than reported.
- ashleyn 8y agoToday they are. Programming can be made easier with large frameworks. Cost can be reduced with higher volume.