Sign in to follow this  
brekehan

Multistreaming

Recommended Posts

So Nvidia's article says that when you multistream, the GPU can have direct DMA access to more than one data item in parallel. That would make one think multistreaming speeds things up. In the same article, they say that streams should be kept to a minimum, because it has performance implications. That would make one think it slows things down. So, what is the advantage? What exactly happens when you multistream?

Share this post


Link to post
Share on other sites
I think that "in parallel" here only means that the GPU can read from more than one stream at the same time (which might be in reality at different times but still during the same process), not that this can increase bandwidth by using more DMA channels.

Reading from streams means that the memory is read in smaller chunks. This is typically bad when memory access is random. However, if the streams have data that is power of 2 in size, that might mean better alignment and provide some speed.

My typical suggestion: don't optimise for speed until you know you need it. Write the code that is simplest, and design your program such that it's easy to replace it. Then profile and fix what's needed.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this