Passing composite variable to mex file
Ältere Kommentare anzeigen
I am running an spmd, and I am wondering if there is a way to pass a composite variable to a mex file without "aggregating" it first. The following is a (simple) example. Say I have the following code.
parpool(2);
spmd
test = labindex + zeros(1000, 2);
end
result = sum([test{:}], 2);
Suppose I would like to replace the sum function with a C/mex implementation of it. It is possible to do something like the following:
test_cellarray = test(:);
result = sum_function(test_cellarray); % Not a built-in function
where sum_function takes in cell arrays. However, in the above "solution", the first line takes up the vast majority of the time.
Is it possible to pass "test" directly to a mex function and access the parts for different workers through pointers?
Thanks for the help.
2 Kommentare
James Tursa
am 31 Jan. 2022
What exactly is the test variable? I.e., what does "whos test" show?
Vivek Bhattacharya
am 31 Jan. 2022
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Parallel Computing Toolbox finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!