Skip to content

[FIXED] Камалягин Артём. Технология ALL, STL, TBB, OMP, SEQ. Построение выпуклой оболочки для компонент бинарного изображения. Вариант 30.#1442

Merged
allnes merged 11 commits into
learning-process:masterfrom
Lynxll:kamalagin_a_binary_image_convex_hull_all_mpi_try
May 28, 2026

Conversation

@Lynxll
Copy link
Copy Markdown
Contributor

@Lynxll Lynxll commented May 22, 2026

Описание

Данные об исходной задаче

Детали исправления

  • Проблема: ALL была реализована как thread-only (OpenMP + std::thread + TBB в одном процессе); perf-вход 100×100 не соответствовал нагрузке курса.
  • Причина: первая версия ALL не использовала MPI; размер perf-теста был занижен.
  • Суть исправления:
    • ALL переведена на MPI + OpenMP (ExtractComponents на rank 0, MPI_Scatter/Scatterv, локальные hulls, Gatherv, Bcast);
    • perf-тесты: 5000×5000, две точки на строку;
    • validation: 8192×8192.
  • Проверка: functional/performance локально и в CI на форке; для ALL — mpiexec -n 2.

Чек-лист

  • Статус CI: все CI-задачи проходят на ветке в форке
  • Директория и именование задачи: директория не переименовывалась
  • Полное описание задачи: исходная задача и исправление описаны
  • clang-format: проходит локально
  • clang-tidy: проходит локально
  • Функциональные тесты: проходят
  • Тесты производительности: проходят
  • Ветка: kamalagin_a_binary_image_convex_hull_all_mpi_try
  • Правдивое содержание: подтверждаю

Important

Прошу влить этот PR #1442 , а не #1258 / #993 / #996 / #1186.
CI пройден. #993, #996 и #1186 - полностью прошли CI и закрыты - не для merge(код уже здесь).
#1258 тоже полностью прошел CI, но не закрыт - на случай, если этот PR #1442 не пройдет CI
Если влить его первым могут, быть конфликты и повторный полный CI на этом PR

Что в закрытых PR:
#993 - SEQ + OMP, объединение в одну директорию (убрал лишнюю директорию kamalagin_a_binary_image_convex_hull_omp)
#996 - TBB
#1186 - STL
#1258 - Старая реализация ALL

@codecov-commenter
Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 92.82511% with 32 lines in your changes missing coverage. Please review.
✅ Project coverage is 83.49%. Comparing base (29821f1) to head (5119a79).
⚠️ Report is 380 commits behind head on master.

Files with missing lines Patch % Lines
...gin_a_binary_image_convex_hull/all/src/ops_all.cpp 94.15% 0 Missing and 10 partials ⚠️
...gin_a_binary_image_convex_hull/stl/src/ops_stl.cpp 92.63% 0 Missing and 7 partials ⚠️
...gin_a_binary_image_convex_hull/tbb/src/ops_tbb.cpp 91.66% 0 Missing and 7 partials ⚠️
...gin_a_binary_image_convex_hull/seq/src/ops_seq.cpp 92.42% 0 Missing and 5 partials ⚠️
...gin_a_binary_image_convex_hull/omp/src/ops_omp.cpp 90.00% 0 Missing and 3 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1442      +/-   ##
==========================================
- Coverage   83.69%   83.49%   -0.20%     
==========================================
  Files         669      903     +234     
  Lines       34251    53202   +18951     
  Branches    14301    22216    +7915     
==========================================
+ Hits        28665    44423   +15758     
- Misses       3807     5979    +2172     
- Partials     1779     2800    +1021     

☔ 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.

@allnes allnes merged commit e74c7ab into learning-process:master May 28, 2026
35 checks passed
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.

3 participants