Can I simulate this example (diffraction pattern) on my CPU not my GPU?
    3 views (last 30 days)
  
       Show older comments
    
    Muhamed Sewidan
 on 1 Sep 2020
  
    
    
    
    
    Commented: Muhamed Sewidan
 on 1 Sep 2020
            I tried to apply this example but it doesn't work, because I don't have an external Nividea GPU, I have an intel internal GPU.
Thus, can I apply this example with my CPU.
0 Comments
Accepted Answer
  Raymond Norris
    
 on 1 Sep 2020
        Hi Muhamed,
In the best situation, by simply casting your data to a GPU, the code following the data creation will run, so long as all of the functions are overloaded for GPU arrays.  For example
% CPU version
a = rand(10);
b = fft(a);
% GPU version
a = gpuArray.rand(10);     % Create GPU array instead of a standard numeric array
b = fft(a);                % Call your code as you normally would
In the example you've highlited, the code should run fine by just making the following change
[gx, gy] = meshgrid( gpuArray.colon( -1, 1/N2, (N2-1)/N2 ) );
to
[gx, gy] = meshgrid( colon( -1, 1/N2, (N2-1)/N2 ) );
or what would be more common coded as
[gx, gy] = meshgrid(-1:1/N2:(N2-1)/N2);
More Answers (0)
See Also
Categories
				Find more on GPU Computing in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
