clear; clear all; clc; for i=500:500:9000 A=rand(i,i); B=rand(i,1); i tic; C=A\B; time1=toc; fprintf('CPU time = %3.3f sec\n', time1); Ag=gpuArray(A); Bg=gpuArray(B); tic; Cg=Ag\Bg; time2=toc; C=gather(Cg); fprintf('GPU time for only solving = %3.3f sec\n', time2); clear A B C Ag Bg Cg; A=rand(i,i); B=rand(i,1); Ag=gpuArray(A); tic; Bg=gpuArray(B); Cg=Ag\Bg; time2=toc; C=gather(Cg); fprintf('GPU time for transfer of F plus solving = %3.3f sec\n', time2); clear A B C Ag Bg Cg; A=rand(i,i); B=rand(i,1); Ag=gpuArray(A); Bg=gpuArray(B); tic; Cg=Ag\Bg; C=gather(Cg); time2=toc; fprintf('GPU Time for solving plus transfer of result = %3.3f sec\n', time2); clear A B C Ag Bg Cg; A=rand(i,i); B=rand(i,1); Ag=gpuArray(A); tic; Bg=gpuArray(B); Cg=Ag\Bg; C=gather(Cg); time2=toc; fprintf('GPU Time for transfer of F plus solving plus transfer of result = %3.3f sec\n', time2); clear A B C Ag Bg Cg; A=rand(i,i); B=rand(i,1); tic; Ag=gpuArray(A); Bg=gpuArray(B); Cg=Ag\Bg; C=gather(Cg); time2=toc; fprintf('GPU Time for solving and all data transfers including K = %3.3f sec\n', time2); clear A B C Ag Bg Cg; end