Разработка тестов, Тестирование архитектуры с помощью задач расчета напряженности элетростатического поля - Преимущества применения dataflow-парадигмы в вычислительных системах
В предыдущем разделе был приведен необходимый для получения набор выходных характеристик моделируемой вычислительной системы, требуемый от тестирования. Для получения наиболее объективных значений данных характеристик выгодно использовать тесты, построенные на задачах разных классов. По анализу популярных бенчмарков параллельных вычислительных систем можно выделить основные классы задач тестирования:
- - Задачи, построенные на использовании сеточных методов - Задачи, построенные на операциях с графами большой размерности - Задачи, построенные на анализе и обработке больших текстовых данных
Для класса задач с использованием сеточных методов была выбрана задача расчета напряженности электростатического двумерного поля.
Для класса задач с использованием операций над графами был выбран популярный бенчмарк компании Graph500, который используется для построения рейтингов суперкомпьютеров.
Для класса задач с использованием обработки больших текстовых данных был выбран тест, основанный на поиске по тексту в соответствии с регулярным выражением.
Тестирование архитектуры с помощью задач расчета напряженности элетростатического поля
Данный тест можно разбить на следующие подзадачи:
- 1) Создание матрицы вычислительных узлов, каждый из которых моделирует некоторую точку на плоскости 2) Помещение (задание) некоторой точке определенной величины заряда. В данном случае моделируется помещение заряженной частицы в некоторую точку плоскости. 3) Расчет вектора напряженности в каждом узле матрицы (т. е. в каждой заданной точке плоскости). Расчет проводится с помощью нескольких диагональных "проходов" по матрице.
Рисунок 12. Передача данных о зарядах на матрице функциональных устройств
После того, как некоторой точке матрицы был задан электрический заряд, ФУ, отвечающее за данную точку, запускает "волну просчета". Оно посылает своим четырем соседям данные о новом заданном заряде (величина заряда и его координаты). Другие ФУ, получая на вход данные о заряде, рассчитывают результирующий вектор напряженности и записывают его в память. По умолчанию, каждое ФУ хранит нулевой вектор. После расчета ФУ отправляет информацию некоторым своим соседям. Выбор направления для отправки зависит от координат текущей точки и координат заряженной частицы. Можно выделить 8 различных вариантов выбора направлений отправки:
- 1) Если ФУ находится в верхней левой части плоскости, то оно пересылает данные "соседу" слева 2) Если ФУ находится в верхней правой части плоскости, то оно пересылает данные "соседу" сверху 3) Если ФУ находится в нижней правой части плоскости, то оно пересылает данные "соседу" справа 4) Если ФУ находится в нижней левой части плоскости, то оно пересылает данные "соседу" вниз 5) Если ФУ находится на горизонтальной оси слева от ФУ, то оно отправляет данные "соседу" слева и вниз 6) Если ФУ находится на горизонтальной оси справа от ФУ, то оно отправляет данные "соседу" справа и вверх 7) Если ФУ находится на вертикальной оси сверху от ФУ, то оно отправляет данные "соседу" слева и вверх 8) Если ФУ находится на вертикальной оси снизу от ФУ, то оно отправляет данные "соседу" справа и вниз
Схема выбора направлений приведена на рисунке 13.
Рисунок 13. Схема выбора направлений для отправки данных о новом заряде
Такой алгоритм выбора направления для отправки данных исключает повторную доставку данных об одном и том же заряде одному ФУ. Таким образом, каждое ФУ получит число данных, соответствующее числу заданных зарядов на плоскости.
Каждый узел (ФУ) в своем сообщении посылает данные о векторе напряженности, соответствующему его точке на плоскости. Получив входные данные, узел вычисляет результирующий вектор напряженности. По умолчанию, в каждой точке записан нулевой вектор.
Радиус-вектор предыдущего узла
Для реализации теста была написана следующая миллипрограмма:
NewFU={Mnemo="Eventser" FUType=FUEventser}
NewFU={Mnemo="Scheduler" FUType=FUScheduler}
NewFU={Mnemo="ElectricField" FUType=FUElectricFieldManager}
Eventser. ContextPopMk=Scheduler. EventserContextSet
Scheduler. ContextPopMk=ElectricField. SchedulerContextSet
ElectricField. NSet=100
ElectricField. MSet=100
ElectricField. EpsSet=1.5
ElectricField. NetCreat
Расстановка точек с зарядом на плоскости
ElectricField. XSet=10
ElectricField. YSet=10
ElectricField. PotensialSet=5
ElectricField. XSet=99
ElectricField. YSet=36
ElectricField. PotensialSet=-5.1
ElectricField. XSet=3
ElectricField. YSet=61
ElectricField. PotensialSet=3.6
ElectricField. PotensialMatrPopMk=Console. LnOut
Листинг 3. Реализация теста расчета электростатического поля
Похожие статьи
-
Моделирование различных вычислительных систем можно разделить на два главенствующих класса: матечатическое моделировании и имитационное. Математическое...
-
Ядром вычислительной dataflow-системы будем называть совокупность оборудования, которое осуществляет сбор данных для формирования исполняемого пакета. В...
-
В реалиазации милликомандного типа управления вычислительной системой основную роль играет функциональное устройство "Автомат". Это устройство отвечает...
-
Оценка моделируемой ВС осуществляется на основе анализа функционирования ВС на тестовых задачах по следующему набору параметров: - общее число ИУ в ВС; -...
-
ОА-архитектура - Преимущества применения dataflow-парадигмы в вычислительных системах
В данной работе предлагается использование объектно-атрибутной архитектуры ВС (или ОА-архитектуры). В отличие от классической ВС, ОА-архитектура работает...
-
Введение - Преимущества применения dataflow-парадигмы в вычислительных системах
Dataflow-парадигма В архитектурах вычислительных сетей на сегодняшний день преобладающую роль играют ВС, управляемые потоком команд - Control Flow. Такая...
-
Для проверки соответствия требованиям ТЗ, была поставлена задача разработки 3-D модели корпуса Kyocera KD-PB1D79 при помощи системы AutoCAD. В этой части...
-
По заданному значению выбираем длину линии и удельное сопротивление линии. = 50 км; Марка провода ЛЭП: АС - 240 1.2 Расчет параметров модели...
-
Процесс тестирования, Разработка тест-кейсов - Тестирование программного обеспечения
Тестирование представляет собой процесс проверки того, насколько программное обеспечение соответствует требованиям, заявленным заказчиком. Он...
-
В ходе разработки было создано пять форм, обеспечивающих взаимодействие между пользователем и приложением: - начальное окно выбора учебного года, курса и...
-
Целью дипломного проекта "Калькулятор коммунальных услуг" является разработка программного средства "Calculation. exe". Для достижения цели дипломного...
-
Выбор и обоснование критериев оценки моделируемой системы Основными критериями оценки созданной вычислительной системы с управлением потоком данных по...
-
В задаче деформирования после определения глобального вектора степеней свободы {U} находят элементные векторы узловых перемещений {U}E. Через них путем...
-
Информационная система (ИС) ГИБДД должна обеспечивать хранение информации об автомобилях (марка, номер кузова, номер двигателя, цвет кузова, гос. номер),...
-
В качестве основы расчета оценки стоимости разработки информационной системы была выбрана модель - COCOMO II. Согласно описываемой модели расчеты должны...
-
Заключение - Разработка и тестирование автоматизированной системы контроля успеваемости студентов
В итоге выполнения выпускной квалификационной работы были достигнуты и получены следующие результаты: - собраны и приняты полезные сведения о системе...
-
Цель Работы - использовать принципы архитектуры "Документ-Представление" для выборки и сохранения данных в файлах, а также взаимодействия элементов меню,...
-
Общие сведения о тестировании Данный раздел посвящен проведению тестирования клиентского приложения. Тестирование для серверной части системы не...
-
Структура системы В ходе разработки выпускной квалификационной работы использовались базы данных, созданные в среде MySQL Workbench, и создано клиентское...
-
При работе над проектом разрабатывались два основных компонента системы: база данных (далее - БД) и интерфейс клиентского приложения. Затем необходимо...
-
Назначение программы Программное средство на тему "Калькулятор коммунальных услуг" предназначено для повышения эффективности расчета коммунальных...
-
Преимущества, которые дает тестировщику автоматизация тестирования: - Исключен "человеческий фактор". Существует некоторая гарантия того, что не один...
-
Постановка задачи Основной целью дипломной работы является создание комплексной системы информационной безопасности предприятия на примере информационной...
-
Проведем сравнительную оценку напряженность процесса эксплуатации системы в процессе работы. Для этого заполним таблицу 7.2, в которой отражается степень...
-
На данный момент существует несколько проблем, связанных с текущим учетом материальных ценностей, а именно: - контроль передвижения материальных...
-
Работа программы представлена на рисунке 2.3 Рис. 2.3 Кодирование и тестирование программы Программа кодировалась на языке Си++, используя библотеку Qt5x...
-
Формы - Разработка информационной системы "Гостиница"
Главное предназначение формы в состоит в том, чтобы организовать удобную работу с данными (с понятным и приятным интерфейсом), чего нельзя добиться при...
-
Структура проекта Программа была реализована на языке Java в среде разработки AndroidStudio с помощью инструментов для разработки Android SDK. Разработка...
-
Языки и системы программирования, их эволюция - Автоматизация решения задач пользователя
Язык программирования - это способ записи программ решения различных задач на ЭВМ в понятной для компьютера форме. Процессор компьютера непосредственно...
-
На каждом уровне управления имеются индивидуальные черты делового процесса принятия решений. Это напрямую относится к выработке решений в управленческих...
-
Анализ основных вопросов классификаций распределительных вычислительных систем
Сегодня к распределенным вычислительным системам относят: вычислительные кластеры, SMP - симметричные мультипроцессоры, DSM - системы с распределенной...
-
Для проверки гипотезы о целесообразности автоматизации процесса тестирования в компании необходимо посчитать затраты на ручное тестирование и затраты на...
-
Необходимо отметить специальный класс приложений - систем поддержки принятия решений, позволяющие моделировать правила и стратегии бизнеса и иметь...
-
На данный момент существует множество аналогов данного приложения, можно выделить такие как стандартный проводник Windows и Total Commander. Заказчику...
-
Построение модели предметной области с помощью описания структур данных и программного кода является классическим подходом в разработке ИС. Зачастую...
-
Методология Все тесты будут необходимо провести на разных размерах базы данных, чтобы увидеть, как классические JOINы скалируются в сравнении с...
-
Численные эксперименты были проведены для следующих целей: Подтверждение корректности алгоритмов. Подтверждение линейности временных затрат алгоритмов. В...
-
К расчету оценки необходимо подходить с большой ответственностью, поскольку это основной элемент системы. Но изначально необходимо определить, за что и...
-
Методика решения задач ЛП графическим методом - Линейное программирование
I. В ограничениях задачи (1.2) заменить знаки неравенств знаками точных равенств и построить соответствующие прямые. II. Найти и заштриховать...
-
ОС Android - операционная система для мобильных телефонов, планшетных компьютеров и нетбуков, основанная на ядре Linux. Изначально разрабатывалась...
Разработка тестов, Тестирование архитектуры с помощью задач расчета напряженности элетростатического поля - Преимущества применения dataflow-парадигмы в вычислительных системах