How to convert my function for GPU (Cuda) and run it on GPU
    9 views (last 30 days)
  
       Show older comments
    
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 Comment
  Joss Knight
    
 on 14 Mar 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.
Answers (1)
  Arka
    
 on 8 Mar 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 Comments
See Also
Categories
				Find more on Get Started with GPU Coder 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!

