Say я 2 сессии подписанная:Параллельная обработка в SAS, ждет бесплатных сеансов
signon slave1;
signon slave2;
Скажем, у меня есть 10 заданий, выполняемых
%execute_job(parameter= 1);
%execute_job(parameter= 2);
%execute_job(parameter= 3);
.
.
.
%execute_job(parameter= 10);
Что мне нужно сделать, чтобы добавить в% execute_job так что он будет продолжать ждать бесплатного сеанса и отправить задание на первый свободный сеанс, который он найдет?
Я попробовал вещи в макваре безрезультатно.
Разве это не означает, что 'waitfor _any_' специально разработан? – Joe
Даже с waitfor _any_, мы все еще имеем проблему выяснения того, какие рабы свободны и назначить задание этому конкретному ведомому. В этом суть проблемы. Решение, которое я нашел, и что vasja рекомендуется, состоит в том, чтобы иметь какое-то соглашение об именах для cmacvar. Это действительно не идеально. В openmp C++ или что-то еще, все, что вам нужно сделать, это сказать «динамическое планирование», и все это будет правильно обработано для вас. Я не знаю, почему это не реализовано в SAS. – Matt