[an error occurred while processing this directive]
|
один процессор (была методика под два). А Вы попробуйте скомпилировать программу под 10 процессоров, так, что бы она выполнялась хотя бы в 5 раз быстрее, чем на одном.
Попробуйте элементарную задачу.
a = b/c или a = sqrt(b). простейший одномерный алгоритм - уммирование, сдвиг.
Компилятор без проблем сделает на одном сумматоре за N тактов или на N сумматорах за такт. А укажите компилятору, что бы задача решалась за k тактов (или на k сумматорах).
Он такого не сделает. А это, в общем, тривиальная задача. Даже о средних (2 - 3 мерных) разговора нет.
По поводу ASIC /ПЛИС.
В ASIC погрузится то, что описано (чуть дороже, чуть дешевле). В ПЛИС строго ограниченная структура, например, если в XC3S50 есть 4 умножителя 18x18, то нужно оперировать только ими, умножитель 20x20 не получиться.
И такие вещи тоже нужно указывать компилятору. А это тоже распараллеливание на ограниченной среде.
E-mail: info@telesys.ru