Skip to content

Пихотский Роман. Технологий SEQ. Линейная фильтрация изображения(вертикальное разбиение). Ядро Гаусса 3x3. Вариант 25#205

Open
RomanPikhotskiy wants to merge 6 commits intolearning-process:masterfrom
RomanPikhotskiy:pikhotskiy_r_vertical_gauss_filter

Conversation

@RomanPikhotskiy
Copy link

@RomanPikhotskiy RomanPikhotskiy commented Mar 1, 2026

  • Задача: Линейная фильтрация изображений (вертикальное разбиение). Ядро Гаусса 3x3.
  • Вариант: 25
  • Технология: SEQ
  • Описание вашей реализации и отчёта.
    Разработана последовательная реализация линейной фильтрации изображения с использованием ядра Гаусса 3×3 и вертикального разбиения. Входное изображение представлено в градациях серого в виде матрицы пикселей. Алгоритм применяет свёртку с ядром {{1,2,1},{2,4,2},{1,2,1}} и нормализацию делением на 16. Для обработки границ используется метод зеркального отражения. Реализация включает функциональные тесты для проверки корректности на изображениях малых размеров, а также тесты производительности. В отчёте представлены результаты тестирования, анализ временных характеристик и обоснование корректности работы фильтра.

Чек-лист

  • Статус CI: Все CI-задачи (сборка, тесты, генерация отчёта) успешно проходят на моей ветке в моем форке
  • Директория и именование задачи: Я создал директорию с именем <фамилия>_<первая_буква_имени>_<короткое_название_задачи>
  • Полное описание задачи: Я предоставил полное описание задачи в теле pull request
  • clang-format: Мои изменения успешно проходят clang-format локально в моем форке (нет ошибок форматирования)
  • clang-tidy: Мои изменения успешно проходят clang-tidy локально в моем форке (нет предупреждений/ошибок)
  • Функциональные тесты: Все функциональные тесты успешно проходят локально на моей машине
  • Тесты производительности: Все тесты производительности успешно проходят локально на моей машине
  • Ветка: Я работаю в ветке, названной точно так же, как директория моей задачи
    (например, nesterov_a_vector_sum), а не в master
  • Правдивое содержание: Я подтверждаю, что все сведения, указанные в этом pull request, являются точными и
    достоверными

Ramzan8-88 pushed a commit to Ramzan8-88/ppc-2026-threads that referenced this pull request Mar 4, 2026
…ным слиянием Бэтчера. Вариант 15 (learning-process#205)

## Описание
- **Задача**: Быстрая сортировка с четно-нечетным слиянием Бэтчера.
- **Вариант**: 15
- **Технология**: _SEQ, MPI
- **Описание**


SEQ версия:
Реализован алгоритм быстрой сортировки (QuickSort) без рекурсии. Массив
делится на подмассивы по опорному элементу, после чего каждый подмассив
упорядочивается аналогично. Процесс повторяется до полного
упорядочивания массива.
Использование чётно-нечётного слияния Бэтчера в последовательной версии
не рассматривается, поскольку данный механизм эффективен именно в
условиях параллельных вычислений

MPI версия:
Главный процесс (ранг 0) распределяет диапазоны элементов между всеми
процессами с учётом остатка от деления. Каждый процесс сортирует свой
локальный массив с помощью QuickSort, после чего выполняются
чередующиеся чётно-нечётные фазы Бэтчера для обмена граничными
элементами между соседними процессами. Левый процесс в паре оставляет
минимальные элементы, правый — максимальные. После завершения всех фаз
главный процесс собирает отсортированные блоки от всех процессов в
итоговый массив.

Отчёт: В отчёте подробно описана реализация последовательной SEQ и
параллельной MPI версий алгоритма, проведено сравнение их
производительности, а также приведено описание тестовых данных,
использованных для проверки корректности работы алгоритмов.

## Чек-лист
<!--
Пожалуйста, убедитесь, что следующие пункты выполнены **до** отправки
pull request'а и запроса его ревью:
-->

- [X] **Статус CI**: Все CI-задачи (сборка, тесты, генерация отчёта)
успешно проходят на моей ветке в моем форке
- [X] **Директория и именование задачи**: Я создал директорию с именем
`<фамилия>_<первая_буква_имени>_<короткое_название_задачи>`
- [X] **Полное описание задачи**: Я предоставил полное описание задачи в
теле pull request
- [X] **clang-format**: Мои изменения успешно проходят `clang-format`
локально в моем форке (нет ошибок форматирования)
- [X] **clang-tidy**: Мои изменения успешно проходят `clang-tidy`
локально в моем форке (нет предупреждений/ошибок)
- [X] **Функциональные тесты**: Все функциональные тесты успешно
проходят локально на моей машине
- [X] **Тесты производительности**: Все тесты производительности успешно
проходят локально на моей машине
- [X] **Ветка**: Я работаю в ветке, названной точно так же, как
директория моей задачи (например, `nesterov_a_vector_sum`), а не в
`master`
- [X] **Правдивое содержание**: Я подтверждаю, что все сведения,
указанные в этом pull request, являются точными и достоверными
@codecov-commenter
Copy link

codecov-commenter commented Mar 16, 2026

Codecov Report

❌ Patch coverage is 0% with 50 lines in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (master@1f8d2d6). Learn more about missing BASE report.

Files with missing lines Patch % Lines
...otskiy_r_vertical_gauss_filter/seq/src/ops_seq.cpp 0.00% 49 Missing ⚠️
..._r_vertical_gauss_filter/common/include/common.hpp 0.00% 0 Missing and 1 partial ⚠️

❌ Your patch status has failed because the patch coverage (0.00%) is below the target coverage (95.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #205   +/-   ##
=========================================
  Coverage          ?   78.73%           
=========================================
  Files             ?      269           
  Lines             ?     9375           
  Branches          ?     3979           
=========================================
  Hits              ?     7381           
  Misses            ?     1424           
  Partials          ?      570           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@RomanPikhotskiy RomanPikhotskiy force-pushed the pikhotskiy_r_vertical_gauss_filter branch from 00c181b to 6a30aa1 Compare March 21, 2026 20:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants