Обсуждение участника:Stalles
--Evgeny Mortikov (обсуждение) 05:06, 3 декабря 2016 (MSK) Хорошее описание метода и алгоритма. Есть несколько замечаний по содержанию и вопросы по исследованию масштабируемости (ниже с моей подписью)
Содержание
1 Пункт 1.2.2
--Evgeny Mortikov (обсуждение) 05:06, 3 декабря 2016 (MSK)
Однако можно заметить, что координаты концов обрабатываемых отрезков хранятся в программном стеке процесса [math]IntTrap() [/math], и недоступны программисту.
Что подразумевается под недоступностью стека для программиста, если далее рассматривается работа с этим стеком? Нужно пояснить это утверждение.
--Бобцов Борис 22:32, 14 декабря 2016 (MSK)
Исправлено
2 Пункт 1.2.3
--Evgeny Mortikov (обсуждение) 05:06, 3 декабря 2016 (MSK)
Данный алгоритм использует массив данных, доступ к которым осуществляется по принципу стека - первым удаляется последний из добавленных элементов. Теперь у разных процессов есть возможность обрабатывать отрезки независимо друг от друга.
Нужно описать немного подробнее, как из определения стека появляется возможность обрабатывать отрезки независимо друг от друга.
Алгоритм локального стека можно считать наилучшим из перечисленных последовательных методов для разработки его параллельной версии.
Где в работе были перечислены последовательные методы, которые здесь сравниваются? С какой точки зрения локальный стек является наилучшим, по сравнению с ними?
--Бобцов Борис 22:32, 14 декабря 2016 (MSK)
Исправлено
3 Пункт 1.5
--Evgeny Mortikov (обсуждение) 05:06, 3 декабря 2016 (MSK)
if( abs( sab - sabc ) > [math]\epsilon[/math] * abs ( sabc ) ) //[math]\epsilon[/math] - заданная точность
Не отличается ли здесь условие на деление отрезка от того, что приведено в пункте 1.2.1?
--Бобцов Борис 22:37, 14 декабря 2016 (MSK)
Не отличается, так как во всех перечисленных в работе алгоритмах как раз и используется метод трапеций. Отличие только в том, что в оригинальном методе сетка равномерная, а в приведённых в работе - нет;кроме этого момента, все формулы и условия остаются теми же.
4 Пункт 1.9
--Evgeny Mortikov (обсуждение) 05:06, 3 декабря 2016 (MSK)
Функция может иметь любой вид представления, однако это представление "константно", то есть можно считать, что объём равен [math] O\left( 1 \right) [/math].
Объём равен [math] O\left( 1 \right) [/math] - это уже не любой вид представления функции.
--Бобцов Борис 22:40, 14 декабря 2016 (MSK)
Исправлено
5 Пункт 2.4
--Evgeny Mortikov (обсуждение) 05:06, 3 декабря 2016 (MSK)
Правильно ли я понимаю, что представленные результаты по исследованию масштабируемости относятся к несколько другому алгоритму – рассматривается равномерное разбиение отрезка по MPI процессам, а в рамках каждого рассчитывается алгоритм с адаптивной сеткой? Можно ли по полученным результатам судить о масштабируемости исследуемого алгоритма? Нужно это пояснить в работе.
Есть ли в реализации глобальный стек, который описан в работе?
--Бобцов Борис 22:32, 14 декабря 2016 (MSK)
-Правильно.
-Если честно, не очень понимаю, почему нельзя судить о масштабируемости. В задании нужно было показать зависимость производительности от числа процессоров. Полученные результаты как раз эту зависимость и демонстрируют.
-Глобального стека в реализации нет. Насколько я понимаю, и в требованиях учебного задания его тоже нет. В задании сказано реализовать алгоритм с адаптивной сеткой, а про метод распараллеливания конкретно ничего не было сказано. Алгоритм геометрического параллелизма был выбран из-за минимума межпроцессорного общения и относительно низкой сложности реализации. Кстати, этот алгоритм также описан в работе.
6 Статья Участник:Бобцов Борис/Вычисление определенного интеграла с использованием адаптивно сгущающейся сетки
6.1 Замечания по тексту
- В разделе 1.4 требуется привести описание алгоритма на верхнем уровне (на основе макроопераций), а не то, что там сейчас. Александр Сергеевич Антонов (обсуждение) 18:25, 1 ноября 2016 (MSK)
- В разделе 1.5 кроме кода нужны также текстовые пояснения. Александр Сергеевич Антонов (обсуждение) 18:25, 1 ноября 2016 (MSK)
- Граф, приведённый в разделе 1.7 не является информационным графом (ациклический граф, вершины - операции, дуги - информационные зависимости). Александр Сергеевич Антонов (обсуждение) 18:25, 1 ноября 2016 (MSK)
- Граф на рис.1 не является графом алгоритма, как написано в подписи к нему. Граф на рис.2 также является каким-то гибридом информационного графа и графа управления - в частности, содержит ветвления, которых в информационном графе быть не должно. Александр Сергеевич Антонов (обсуждение) 14:57, 14 ноября 2016 (MSK)
- В разделе 1.9 должны быть оценки объёмов входных и выходных данных. Александр Сергеевич Антонов (обсуждение) 15:00, 14 ноября 2016 (MSK)
- В части 2 должны быть все разделы 2.1-2.7 (некоторые могут быть пустыми). Александр Сергеевич Антонов (обсуждение) 15:00, 14 ноября 2016 (MSK)
- Не заполнен раздел 2.4 описания. Александр Сергеевич Антонов (обсуждение) 16:04, 16 ноября 2016 (MSK)
- В разделе 2.4 не приведены все параметры запуска теста - какой компилятор, с какими опциями использовался, какие версии библиотек, на каких узлах проводился запуск и т.д. Александр Сергеевич Антонов (обсуждение) 14:31, 21 ноября 2016 (MSK)
- Замечание не исправлено. Александр Сергеевич Антонов (обсуждение) 15:21, 28 ноября 2016 (MSK)
- В разделе 2.4 не приведена использованная в экспериментах реализация алгоритма. Александр Сергеевич Антонов (обсуждение) 14:31, 21 ноября 2016 (MSK)
- Замечание не исправлено. Александр Сергеевич Антонов (обсуждение) 15:21, 28 ноября 2016 (MSK)
- Из графиков в разделе 2.4 следует сделать выводы о масштабируемости реализации. Александр Сергеевич Антонов (обсуждение) 14:31, 21 ноября 2016 (MSK)