How to convert my function for GPU (Cuda) and run it on GPU
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello, I hope you are doing well, I have the following function i want to convert it into cuda so it can run on GPU or any other Embedded Device
Can anybody Please help me with this
I also Attached My dataset for this
function [Score] = Scorefunction(Dataset,clusternumber)
dataset_len = size(Dataset,1);
Score = zeros(1,clusternumber);
for j=1:clusternumber
[cluster_assignments,centroids] = kmeans(Dataset,j);
distance_within=zeros(dataset_len,1);
distance_between=Inf(dataset_len,j);
for i=1:dataset_len
for jj=1:j
boo=cluster_assignments==cluster_assignments(i);
Xsamecluster=Dataset(boo,:);
if size(Xsamecluster,1)>1
distance_within(i)=sum(sum((Dataset(i,:)-Xsamecluster).^2,2))/(size(Xsamecluster,1)-1);
end
boo1= cluster_assignments~=cluster_assignments(i);
Xdifferentcluster=Dataset(boo1 & cluster_assignments ==jj,:);
if ~isempty(Xdifferentcluster)
distance_between(i,jj)=mean(sum((Dataset(i,:)-Xdifferentcluster).^2,2));
end
end
end
minavgDBetween = min(distance_between, [], 2);
silh = (minavgDBetween - distance_within) ./ max(distance_within,minavgDBetween);
Score(j) =mean(silh);
end
end
1 Kommentar
Joss Knight
am 14 Mär. 2023
Do you need to deploy to an embedded device or just run on GPU on the desktop? Because you can just use PCT's gpuArray.
Antworten (1)
Arka
am 8 Mär. 2023
Hi,
MATLAB has quite a few coder apps to generate specific code from MATLAB code.
To generate GPU code, you can make use of the GPU Coder.
To generate Embedded Code, you can use the Embdedded Coder.
If you wish to learn more about GPU coder and Embedded coder, please check out the MathWorks documentation links below:
4 Kommentare
Siehe auch
Kategorien
Mehr zu Get Started with GPU Coder 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!