Структурно-процедурный способ организации мультиконвейерных вычислений
Исходный граф алгоритма G(Q,X) решения потоковой задачи разрезается на подграфы Gi(Qi,Xi) (i=1,2,...,F) согласно следующим требованиям:
- Число вершин в подграфе Gi(Qi,Xi) (i=1,2,...,F) должно быть по возможности равным (но не большим) числу процессоров в мультиконвейере.
- Число внутренних дуг подграфа Gi(Qi,Xi) (i=1,2,...,F) должно быть не больше, чем число связей, обеспечиваемых коммутатором мультиконвейерной структуры.
- Число входных и выходных дуг подграфа должно быть не больше числа каналов связи мультиконвейера с внешней памятью.
Подграфы Gi(Qi,Xi) (i=1,2,...,F) последовательно, согласно установленной очереди отображаются на поле ПЛИС. При этом на входы мультиконвейера из памяти выдаётся поток векторов данных, входных для подграфа Gi(Qi,Xi), а вектора выходных данных записываются обратно в память. Процесс продолжается до тех пор, пока в мультиконвейере не будут реализованы все подграфы Gi(Qi,Xi) (i=1,2,...,F), и через каждый из них не будет пропущен соответствующий поток векторов входных данных. После завершения процедуры прогона потока данных через последний подграф GF(QF,XF) в памяти будет накоплено множество векторов результирующих данных, которые далее выдаются на выход системы.
© Лаборатория Параллельных информационных технологий НИВЦ МГУ