Обсуждение участника:Janyell: различия между версиями
Dan (обсуждение | вклад) |
Janyell (обсуждение | вклад) |
||
Строка 26: | Строка 26: | ||
= Пункт 1.4 = | = Пункт 1.4 = | ||
Наверное, вопрос в том, что алгоритм делает помимо запуска вычислительных ядер? | Наверное, вопрос в том, что алгоритм делает помимо запуска вычислительных ядер? | ||
+ | |||
+ | __ | ||
+ | |||
+ | Присвоение элементам заполненного вектора-столбца <math>c</math> результатов запуска вычислительных ядер. | ||
= Пункт 1.5 = | = Пункт 1.5 = |
Версия 09:38, 20 ноября 2016
Добрый день. Подключаюсь к проверке. Статья мне в целом понравилась, и тем больше от этого хочется добавить замечаний, чтобы довести ее до того вида, чтобы она могла остаться на Алговики.
Содержание
1 Пункт 1.1
Разреженная матрица, будучи множеством чисел, не имеющим регулярности, не может быть представлена в памяти машины тем же простым способом, что и полная матрица. Поэтому возникает необходимость дополнительно хранить индексную информацию, указывающую расположение каждого элемента в регулярном массиве.
Что означает фраза, выделенная жирным? Или как-то переформулируйте утверждение, оно не понятно
Однако многие схемы хранения допускают определенную долю нулей, и алгоритм обрабатывает их, как если бы они не были нулями. Тоже непонятно
2 Пункт 1.1.1.1
Поставьте определение ленточной матрицы в начало. Потому что, начиная читать первую фразу, сначала задаешься вопросом, что это такое
3 Пункт 1.1.1.2
Кроме того, схема является статической, потому что включение нового элемента, лежащего вне оболочки, требует изменения всей структуры (если только не используются записи переменной длины). Также нужны пояснения
4 Пункт 1.1.2
Достоинство этих процедур, с вычислительной точки зрения, состоит в том, что единственная требуемая матричная операция — это повторное умножение матрицы на последовательность заполненных векторов; сама матрица не меняется. Опять непонятно
5 Пункт 1.3
Почему вычислительное ядро только последовательной версии? Вычислительное ядро (computational kernel) алгоритма - это часть алгоритма, на которую приходится основное время его работы.
6 Пункт 1.4
Наверное, вопрос в том, что алгоритм делает помимо запуска вычислительных ядер?
__
Присвоение элементам заполненного вектора-столбца [math]c[/math] результатов запуска вычислительных ядер.
7 Пункт 1.5
Как была выбрана форма хранения матрицы? Это нужно прокомментировать
8 Пункт 1.7
Правильно я понимаю, что на рисунке изображено вычисление всего произведения матрицы на вектор? Аналогичные блоки для разных строк. А разве не должен быть рисунок, изображающий ядро (то есть произведение одной строки на вектор)? (я не уверен, поэтому спрашиваю. Возможно, это как-то надо лучше подписать)
__
Нам показалось верным отобразить на рисунке именно параллельную версию, на которой будет видно как и произведение одной строки на вектор, так и вычисление всех элементов. Как следует из определения графа алгоритма, он должен давать удобное представление не только ядра, но и позволять рассмотреть алгоритм с параллельной точки зрения. Внесли небольшое пояснение для рисунка.
9 Пункт 2.4
Пока пустой?
__
Поправили