Существует ли инструмент для моделирования параллелизма программного обеспечения?

StackOverflow https://stackoverflow.com/questions/1948474

  •  21-09-2019
  •  | 
  •  

Вопрос

Есть ли хороший инструмент, который может графически моделировать схему параллелизма / блокировки приложений и который может имитировать некоторые аспекты?

Я знаю, что сети Петри можно использовать для этого более или менее, но я не знаю хорошего графического инструмента, который мог бы проектировать и моделировать.

Может ли UML каким-либо образом использоваться для таких целей?

Любые хорошие ссылки очень ценятся.

Это было полезно?

Решение

Диаграммы активности UML могут быть выражены в виде сетей Петри (например смотрите этот документ).К сожалению, я не знаю ни одного хорошего промышленного инструмента для моделирования сетей Петри или диаграммы активности (но есть много академических проектов, которые вы можете легко найти).

Вы уверены, что хотите смоделировать свою модель (под симуляцией я подразумеваю, что вы действительно хотите посидеть и посмотреть, как выполняется ваша Perti net)?Обычно этот тип анализа применим для небольших и простых алгоритмов.В реальной ситуации вы, вероятно, хотели бы сделать проверка модели вашего алгоритма, а не симуляции.Я бы порекомендовал вам проверить SPIN (используется многими компаниями, напримерСименс).Также у меня есть положительный опыт работы с Сплав и Призма.Но если вы сосредоточены на проверке параллельных алгоритмов, я бы посоветовал вам сначала рассмотреть SPIN.

Редактировать:Я проверил некоторые инструменты для моделирования, и я могу посоветовать посмотреть на

1) http://sourceforge.net/projects/visual-petri/

2) http://www.renew.de/

3) http://www.winpesim.de/index.html

Другие советы

ВРАЩЕНИЕ это популярный инструмент для проверки распределенных систем, но, я думаю, только из командной строки.Но на веб-странице Spin есть ссылка на тесно связанный графический инструмент под названием ЦЕЛЬ

Я сомневаюсь, что это то, что вы ищете, но я добавлю свои два цента:

В моем университете на занятиях по параллельным программным системам мы используем инструмент под названием Анализатор систем перехода с маркировкой (LTSA).На самом деле это язык, который вы можете использовать для моделирования поведения системы.

"Код" превращается в диаграмму состояний и таблицу переходов.

Вот интерактивный Java-апплет который может спроектировать и запустить сеть Петри.

Прошло много времени с тех пор, как я смотрел на это в последний раз, но это звучит как Птолемей было бы неплохо подойти.

Вы можете проверить Sim - карта Сети Петри, для имитации обычных / синхронизированных / цветных сетей Петри он поставляется с приятным графическим интерфейсом, который отображает выполнение сети Петри в режиме реального времени.

Попробуйте использовать инструмент параллелизма LTSA.Программа на Java.(С надписью Transition System Analyser), для моделирования программ.Вы можете скачать его с:

http://www.doc.ic.ac.uk/ltsa/

Но вы должны быть терпеливы при его использовании, может потребоваться пара часов, чтобы научиться им пользоваться.Вероятно, лучше всего работает при моделировании Java-программ.

И, конечно, всегда полезно использовать UML-модели :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top