Reorganizing current data structure in order to take advantage of GPU
    3 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Science Machine
 am 15 Apr. 2022
  
    
    
    
    
    Beantwortet: Joss Knight
    
 am 15 Apr. 2022
            I currently have nested structures like
myStructreadIn(var1).NestedLevel1(var2)NestedLevel2(var3).dat(vector);   Step (1) 
I would like to use Matlab's gpu parallization support, and for that I know data must be optimally structured. Also, I know that gpu use doesn't always make sense, and that CPU parallelization is often better. In my case, I am taking a bunch of fft's and I understand from reading that GPU 'could' be a good way to go, by making gpuArrays and take fft's columnwise. 
I also know that nested structures are not good for gpu. Is there a way I can reorganize this nested strucuture, eg 
- Is it gpu-paradigmatic to organize this nested structure data instead in a really large matrix, in order to vectorize it?
- I also take xcorr of data after re-shuffling the nested levels, in order to get the correct (x-dir, y-dir, z-dir), then take fft in another direction
Thanks
0 Kommentare
Akzeptierte Antwort
  Joss Knight
    
 am 15 Apr. 2022
        Evidently with your nested structure you are not required to have uniform data - every element at each level can have a different size of sub-level, whereas if you reorganise as an array everything has to be the same. But yes, if you can reasonably rearrange your data structure as a multi-dimensional array you will gain an advantage on the GPU (and on CPU).
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
				Mehr zu GPU Computing finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

