How to convert this vectorized code into GPU code for MAXIMUM speedup ?
Mostrar comentarios más antiguos

1 comentario
Jan
el 26 de Abr. de 2017
Please post code as text and not as a screenshot. Then it can be used by copy&paste to create an answer.
Respuestas (2)
Joss Knight
el 18 de Abr. de 2017
I was able to get a marginal speedup with additional vectorization of the mask:
x = sum(I < cat(3, 120, 155, 160), 3) == true;
but otherwise you've done pretty well. You've got to wonder why you need to replicate the output on every channel however. Why not discard the colour channels if you're using grayscale?
2 comentarios
Tanmay Virnodkar
el 20 de Abr. de 2017
Editada: Tanmay Virnodkar
el 20 de Abr. de 2017
Joss Knight
el 26 de Abr. de 2017
Right, but then you're including the cost of replicating data in GPU memory and doing indexing, which is memory-bound and doesn't necessarily show the GPU in a great light.
Jan
el 18 de Abr. de 2017
0 votos
The bottlenecks of the code are the darn clear all and the disk access using imwrite. Moving this to the GPU will not help.
Categorías
Más información sobre GPU Computing en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!