Skip to content

Latest commit

 

History

History
52 lines (34 loc) · 4.17 KB

File metadata and controls

52 lines (34 loc) · 4.17 KB

MPSim — Анализ многофазных систем обработки данных

.NET 8 C# WPF License

MPSim — это программный инструмент для дискретно-событийного имитационного моделирования (DES) многофазных вычислительных систем (конвейеров). Приложение разработано на C# (.NET 8) с использованием WPF и предназначено для анализа производительности конвейерных архитектур в условиях стохастической нагрузки.

Описание

Проект позволяет исследовать поведение систем, состоящих из $k$ последовательных функциональных устройств (ФУ) с буферами. Каждое задание проходит через все фазы, сталкиваясь со случайными задержками.

Ключевые возможности:

  • DES-движок: Реализация дискретно-событийного алгоритма с FIFO-дисциплиной.
  • Гибкая конфигурация: Настройка количества фаз ($k$), числа заданий ($N$), интенсивности потока ($\lambda$) и времени обработки ($\mu, \sigma$).
  • Стохастические модели: Поддержка экспоненциального, нормального и равномерного распределений для входного потока и времени обработки.
  • Статистическая достоверность: Автоматическое выполнение серии независимых прогонов (NumRuns) с детерминированным управлением Seed для воспроизводимости результатов.
  • Визуализация: Построение графиков пропускной способности, загрузки фаз, времени ожидания и простоев в реальном времени (через ScottPlot.WPF).
  • Экспорт: Выгрузка результатов в CSV и PNG.

Скриншоты

изображение изображение изображение

Стек технологий

  • Язык: C# 12
  • Платформа: .NET 8
  • UI Framework: WPF (Windows Presentation Foundation)
  • Стилизация: MaterialDesignThemes (NuGet)
  • Графики: ScottPlot 5 (NuGet)
  • IDE: Microsoft Visual Studio 2022 Community

Архитектура

Проект имеет модульную структуру с четким разделением ответственности:

  • MPSim.Core — Ядро симуляции (SimulationEngine), управление циклами и метриками.
  • MPSim.Models — Доменная логика (Conveyor, FunctionalUnit, SimulationTask, SimulationConfig).
  • MPSim.Services — Генераторы случайных величин (DistributionGenerators) и статистическая обработка (StatisticsHelper).
  • MPSim.UI — Графический интерфейс на WPF (MainWindow, ConfigWindow, ChartsWindow).

Лицензия

Проект распространяется под лицензией MIT.