Расчет требуемого количества процессоров

Основными факторами, которые следует учитывать при определении количества необходимых процессоров, являются:

- количество вычислительных операций, которое необходимо выполнить в течение заданного интервала времени;

- закон Амдаля, соотношение повышения производительности к стоимости системы.

- характеристики конкретной модели ЦСП;

- количество обменов данными между процессорами.

Грубая оценка количества процессоров

Грубая оценка требуемого количества процессоров может быть получена простой оценкой объема вычислений. Это число делится на количество операций, выполняемых конкретной моделью ЦСП. Результат дает нижнюю оценку требуемого числа процессоров.

Например, для вычисления ДПФ массива, длина n которого является степенью числа 2, требуется (n /2) * log2(n) операций типа "бабочка". Вычисление каждой "бабочки" включает 4 умножения, 3 сложения и 2 вычитания (рис.5). Благодаря наличию в ЦСП типа ADSP-2106x инструкций, позволяющих совмещать вычислительные операции, общее количество инструкций для вычисления операции "бабочка" составляет 8 (по 4 инструкции для действительной и мнимой части). Таким образом, трудоемкость вычисления, например, 1024-точечного комплексного ДПФ для процессора типа SHARC ADSP составляет

8 * (1024/2) * log2(1024) = 20480*2 = 40960 инструкций

LCNTR=15, do end_btfly until LCE;

f8 = f1 * f8,f14 = f11 – f14,dm(i2,m0)=f10,f9=pm(i11,m8);

f11 = f1 * f7,f3 = f9 + f14,f3 = f9 - f14,dm(i2,m0)=f13,f7=pm(i8,m8);

f14 = f0 * f6, f12 = f8 + f12,f8=dm(i0,m0),pm(i10,m10)=f9;

end_btfly:

f12 = f0 * f7, f13 = f8 + f12, f10 = f8-f12, f6=dm(i0,m0), pm(i10,m10)=f3;

Рис.5

Если вычисление ДПФ необходимо выполнять в течение 50мкс (например, когда обработка заключается только в вычислении спектра сигнала и интервал между поступлением отсчетов составляет 50*10-6 / 1024 = 4,88*10-8с, т.е. частота дискретизации входного сигнала составляет примерно 20,5 МГц), то требуемое число операций в секунду вычисляется по формуле:

40960 * (1/(50*10-6)) = 40960 * 20000 = 819 млн. операций/сек.

Если предположить, что производительность процессора составляет 200 млн. оп./сек (например, при тактовой частоте 100 МГц), то требуемое количество процессоров составляет

819 / 200 = 4,09.

Таким образом, минимальное количество процессоров, необходимое для решения поставленной задачи, равно 5, причем один процессор будет загружен не полностью.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: