Обсуждение участника:Protsenko: различия между версиями

Материал из Алговики
Перейти к навигации Перейти к поиску
 
(не показано 5 промежуточных версий 2 участников)
Строка 3: Строка 3:
 
=== Замечания по тексту ===
 
=== Замечания по тексту ===
  
* Сложность не зависит от N? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 20:14, 17 декабря 2016 (MSK)
+
* 1.8 — Непонятна схема распараллеливания для такой оценки сложности. У вас C*K процессов? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 22:43, 17 декабря 2016 (MSK)
 +
 
 +
В самом лучшем случае, для вычисления суммы n чисел нам потребуется выполнить <math>\log_{2} </math>сложений. (Каскадная схема). Это описан самый быстрый из существующих способ.
 +
 
 +
В MPI используем K процессов (так как количество процессов ограничено, то на один процесс может выделяться больше одного вектора) и каждый процесс по отдельности обрабатывает свои вектора с использование OpenMP.
 +
 
 +
* 1.8 — Даже эту формулу можно записать проще по тривиальным свойствам логарифма. [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 22:43, 17 декабря 2016 (MSK)
 +
 
 +
Данная формула была приведена в таком виде что бы показать соотношение влияния количества кластеров и количества векторов на сложность алгоритма. Можем упростить ее, если так лучше.
 +
 
 +
* 1.8 — Схема распараллеливания должна быть описана более детально. [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 22:43, 17 декабря 2016 (MSK)
 +
 +
Описали схему подробнее.
 +
 
 +
 
 +
* Сложность не зависит от N? В оценке сложности не учтена размерность входных векторов. [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 20:14, 17 декабря 2016 (MSK)
 +
 
 +
Исправлено.
 +
 
 
* 1.6 — в терминах каких операций измеряется сложность? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 20:14, 17 декабря 2016 (MSK)
 
* 1.6 — в терминах каких операций измеряется сложность? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 20:14, 17 декабря 2016 (MSK)
 +
 +
Подсчитаны операции умножения и деления.
 +
В разделе "вычисление центров кластеров" будет C*K умножений для вычисления числителя. (Деление числителя на знаменатель будет выполняться С раз, что на порядок меньше).
 +
Для раздела "вычисление решающей функции" посчитано количество умножений C*K раз. (Деления в этом разделе нет)
 +
Для обновления матрицы посчитано количество операций деления С*C*K (Порядок у деления m[i,k]=1/m[i,k] ниже)
 +
 
* 2.4 — я не совсем понимаю, на какой именно конфигурации выполнялся анализ масштабируемости. Там написано, что используется OpenMP (для систем с общей памятью), суперкомпьютер Ломоносов, а количество процессоров доходит до 120. Я не вижу таких узлов в Ломоносове в его описании [http://parallel.ru/cluster/lomonosov.html]. Можете пояснить? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 18:31, 5 декабря 2016 (MSK)
 
* 2.4 — я не совсем понимаю, на какой именно конфигурации выполнялся анализ масштабируемости. Там написано, что используется OpenMP (для систем с общей памятью), суперкомпьютер Ломоносов, а количество процессоров доходит до 120. Я не вижу таких узлов в Ломоносове в его описании [http://parallel.ru/cluster/lomonosov.html]. Можете пояснить? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 18:31, 5 декабря 2016 (MSK)
  
 
Запускали в тестовой очереди. В тексте допустили неточность, для передачи данных данных использовали MPI. Запустили еще раз, номер node1-130-[01-16]. 120- количество потоков.
 
Запускали в тестовой очереди. В тексте допустили неточность, для передачи данных данных использовали MPI. Запустили еще раз, номер node1-130-[01-16]. 120- количество потоков.
  
Текст до сих пор не исправлен, в приведённой реализации тоже используется OpenMP, а не MPI. Если используется она — то это запускается на одном узле. Данные точно верны? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 20:14, 17 декабря 2016 (MSK)
+
** Текст до сих пор не исправлен, в приведённой реализации тоже используется OpenMP, а не MPI. Если используется она — то это запускается на одном узле. Данные точно верны? [[Участник:Chalker|Chalker]] ([[Обсуждение участника:Chalker|обсуждение]]) 20:14, 17 декабря 2016 (MSK)
  
 +
Исправили текст.
 +
В MPI используем K процессов (так как количество процессов ограничено, то на один процесс может выделяться больше одного вектора) и каждый процесс по отдельности обрабатывает свои вектора с использование OpenMP.
 +
В зависимости от номера процесса определяется какие вектора он будет обрабатывать. Каждый процесс обрабатывает свои вектора, а потом собирается общий результат.
 
----
 
----
  

Текущая версия на 02:54, 20 декабря 2016

1 Статья Участник:ADovganich/Нечеткий алгоритм С средних

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

  • 1.8 — Непонятна схема распараллеливания для такой оценки сложности. У вас C*K процессов? Chalker (обсуждение) 22:43, 17 декабря 2016 (MSK)

В самом лучшем случае, для вычисления суммы n чисел нам потребуется выполнить [math]\log_{2} [/math]сложений. (Каскадная схема). Это описан самый быстрый из существующих способ.

В MPI используем K процессов (так как количество процессов ограничено, то на один процесс может выделяться больше одного вектора) и каждый процесс по отдельности обрабатывает свои вектора с использование OpenMP.

  • 1.8 — Даже эту формулу можно записать проще по тривиальным свойствам логарифма. Chalker (обсуждение) 22:43, 17 декабря 2016 (MSK)

Данная формула была приведена в таком виде что бы показать соотношение влияния количества кластеров и количества векторов на сложность алгоритма. Можем упростить ее, если так лучше.

  • 1.8 — Схема распараллеливания должна быть описана более детально. Chalker (обсуждение) 22:43, 17 декабря 2016 (MSK)

Описали схему подробнее.


  • Сложность не зависит от N? В оценке сложности не учтена размерность входных векторов. Chalker (обсуждение) 20:14, 17 декабря 2016 (MSK)

Исправлено.

  • 1.6 — в терминах каких операций измеряется сложность? Chalker (обсуждение) 20:14, 17 декабря 2016 (MSK)

Подсчитаны операции умножения и деления. В разделе "вычисление центров кластеров" будет C*K умножений для вычисления числителя. (Деление числителя на знаменатель будет выполняться С раз, что на порядок меньше). Для раздела "вычисление решающей функции" посчитано количество умножений C*K раз. (Деления в этом разделе нет) Для обновления матрицы посчитано количество операций деления С*C*K (Порядок у деления m[i,k]=1/m[i,k] ниже)

  • 2.4 — я не совсем понимаю, на какой именно конфигурации выполнялся анализ масштабируемости. Там написано, что используется OpenMP (для систем с общей памятью), суперкомпьютер Ломоносов, а количество процессоров доходит до 120. Я не вижу таких узлов в Ломоносове в его описании [1]. Можете пояснить? Chalker (обсуждение) 18:31, 5 декабря 2016 (MSK)

Запускали в тестовой очереди. В тексте допустили неточность, для передачи данных данных использовали MPI. Запустили еще раз, номер node1-130-[01-16]. 120- количество потоков.

    • Текст до сих пор не исправлен, в приведённой реализации тоже используется OpenMP, а не MPI. Если используется она — то это запускается на одном узле. Данные точно верны? Chalker (обсуждение) 20:14, 17 декабря 2016 (MSK)

Исправили текст. В MPI используем K процессов (так как количество процессов ограничено, то на один процесс может выделяться больше одного вектора) и каждый процесс по отдельности обрабатывает свои вектора с использование OpenMP. В зависимости от номера процесса определяется какие вектора он будет обрабатывать. Каждый процесс обрабатывает свои вектора, а потом собирается общий результат.



Исправлено

Граф исправлен еще раз