Загрузите файл в параллельный сеанс
pload(fileroot)
| Часть имени файла, характерного для всех сохраненных загружающихся файлов. |
pload(fileroot) загружает данные из файлов с именем [fileroot num2str(labindex)] в рабочих, запускающих связывающееся задание. Файлы должны были быть созданы командой psave. Количество рабочих должно совпасть с количеством файлов. Файлы должны быть доступны для всех рабочих. Любые codistributed массивы восстановлены этой функцией. Если fileroot будет содержать расширение, символьное представление labindex будет вставлено перед расширением. Таким образом pload('abc') пытается загрузить файл abc1.mat на рабочем 1, abc2.mat на рабочем 2, и так далее.
Создайте три переменные — один реплицированный, один вариант и один codistributed. Затем сохраните данные. (Этот пример работает в связывающемся задании или в pmode, но не в блоке parfor или spmd.)
clear all; rep = speye(numlabs); var = magic(labindex); D = eye(numlabs,codistributor()); psave('threeThings');
Это создает три файла (threeThings1.mat, threeThings2.mat, threeThings3.mat) в текущей рабочей директории.
Очистите рабочую область на всех рабочих и подтвердите, что нет никаких переменных.
clear all
whosЗагрузите ранее сохраненные данные в рабочих. Подтвердите его присутствие.
pload('threeThings');
whos
isreplicated(rep)
iscodistributed(D)