Обсуждение участника:VolkovNikita94

Материал из Алговики
Перейти к навигации Перейти к поиску

1 Статья Участник:VolkovNikita94/Алгоритм Ланцоша для точной арифметики (без переортогонализации)

1.1 Замечания по тексту


2 Исправления.

Поправили замечания, прогнали на большом числе процессоров.

Мой личный комментарий "вне задания": есть довольно любопытная вещь, на которую стоит обратить внимание - небольшие скачки производительности, которые заметны на небольшом числе процессов для небольшого размера задачи. Для большего числа процессов эти скачки полностью не охватываются ( см. линию для 50 процессоров ), но, вероятно, имеют место быть. Какая-никакая, а "характерная особенность", спасибо кэшам ? На 100 процессорах какое-то безумие :)

  • для стабильности можно просчитать задачу несколько раз во время одного запуска и сравнить времена (потом взять среднее или минимальное), отличия но 10% должны получиться. А если сравнивать времена различных запуском (когда очередь выделит узлы с другими номерами), то отличие в 30% тоже могут случиться. На заре установки Ломоносова знакомые исследовали это и составили карту скоростей обменов между физическими узлами, а потом даже одсуждали это с производителями. Вроде бы даже у них есть публикации... (ИНК) P.S. Если замеренное время счета получается меньше 1 сек., то лучше запустить задачу в цикле несколько раз подряд.

3 Новые замечания

  • ваша работа дошла до проверяющего только вчера, так что извиняйте за задержку (ИНК)
  • везде удрать * как символ математического умножения (в самом крайнем случае можно использовать \cdot)
  • в формулах ну очень часто неверно набраны верхние индексы, состоящие более чем из одной буквы. Не забывайте фигурные скобки! (например, стоит набирать K^{-1})
  • п.1.5 греческие буквы в обозначениях лучше сделать греческими, добавив \ (например, \alpha, \beta)
  • п.1.6 поправить показатель степени "в среднем затрачивается [math]O(k^{2.3})[/math] операций"
  • п.1.7 "из статей от матрично-векторных операциях" (статьи в Алговики? добавить линк на них)
  • п.1.8 "Ланцоща" --> "Ланцоша", "классисифкации" --> "классификации" (безобразие! вы очень торопились при наборе... --> в режиме правки взять всю статью мышкой и поместить в Word чтобы он подчеркнул ошибочно набранные слова, после чего исправить все описки)
  • п.2.4 "предметом отдельных статей ( QR-алгоритм, метод «Разделяй-и-властвуй», итерации Арнольди и.т.д. )" (линки на статьи)
  • п.2.4 собственная реализация - это хорошо (MPI v.2.2? может стоит упомянуть это? И вообще сказать, что это гибридная MPI+OpenMP реализация. А сейчас модно писать код прямо с *.h файле без *.cpp? Хотя никому не мешает, реализация хорошая...)
  • п.2.4 "Максимальная эффективность - 30.76%" малоинформативная фраза если не сказано на скольки ядрах, на одном или 800? Неплохо было бы для тех же данных привести пару-тройку графиков ускорения, для двух-трех размерностей матрицы.
  • п.2.7 - замечательно, спасибо
  • п.3 стоит занумеровать и сделать настоящие ссылки

Основные замечания поправил, Леонид скоро зальёт графики ускорения и еще подправит 2.4

PS: "модно..." - нет, не модно :) Просто а) программа маленькая и это не мешает, так что нет "против" и б) программа писалась в Visual Studio, где процедура компиляции настроена с отличиями от того, что происходит на кластере; в таком виде при переносе переписывать не нужно вообще ничего, так что есть "за".