Где взять данные аппаратной модели?
У меня есть задача, которая состоит из 3-х одновременных самоопределенных (рекурсивных друг другу) процессов. Мне нужно каким-то образом заставить его исполниться на компьютере, но любая попытка преобразовать требование в программный код только моим мозгом проваливается, так как первая итерация производит 3^3 сущности с 27^2 перекрестными отношениями, но она должна реализовать по крайней мере несколько итераций попробовать, если программа вообще работает.
Поэтому я решил отказаться от попыток понять всю систему и формализовать проблему, а теперь хочу сопоставить ее с аппаратным обеспечением для генерации алгоритма и запуска. Язык не имеет значения (может быть, даже непосредственно на машинном / сборочном?).
Я никогда не делал ничего подобного раньше, поэтому во всех темах, которые я просматривал, таких как синтез алгоритмов, совместное проектирование программного и аппаратного обеспечения и т. Д., Упоминается аппаратная модель как вторая половина (в дополнение к проблемной модели) генерации решения, но я никогда не видел такую., Вся работа должна выглядеть так:
Я пока не знаю, на каком уровне описанааппаратная модель, поэтому не могу решить, как должна быть формализована проблемная модель для соответствия уровню аппаратной модели.
Например, целевая система может содержать процессор и GPGPU, скажем, целевое решение, имеющее 2 одновременных процесса. Система должна решить, какой процесс запустить на CPU, а какой на GPGPU. Решение наивысшего уровня может прийти из сравнения вычислительной интенсивности процессов с целевым оборудованием, которое составляет ~300 для процессоров и ~50 для GPGPU.
Но нормальная модель должна быть гораздо более полной, по крайней мере, с иерархией кэша, размером пакета доступа к памяти и т. Д.
Другой пример - реализация k-арных деревьев. Синтезированный алгоритм может адресовать родителей и детей с вычислительной k * i + c
/ ( i - 1 ) / k
или хранить прямые указатели - в зависимости от computations per memory latency
соотношение.
Где я могу получить аппаратную модель или данные для использования? На данный момент достаточно любого оборудования, чтобы просто посмотреть, как оно может выглядеть, и позже было бы здорово получить модели современных процессоров, GPGPU и обычных гетерогенных кластеров.
Поставляют ли производители такие модели? Описание работы их систем на любом формальном языке.
1 ответ
Я не совсем уверен, что это может быть для вас, но, как вы говорите о моделировании, я просто подумал о Modelica. Он используется для моделирования физических систем и в сочетании со средой моделирования, вы можете запустить некоторые моделирования на нем.