Перейти к основному содержимому

Чек-лист самопроверки

Разработчику Архитектору
Загрузка вопросов…

Чек-лист самопроверки

  1. Чем параллелизм отличается от асинхронности?

  2. Назовите основные проблемы HPC (память, коммуникации, балансировка).

  3. Что означают SISD, SIMD, MIMD в таксономии Флинна?

  4. Чем конвейер CPU отличается от data-parallel на GPU?

  5. Чем shared memory отличается от distributed memory?

  6. Что такое NUMA и почему это важно для производительности?

  7. Чем мультипроцессор отличается от мультикомпьютера?

  8. Что такое кластер HPC и зачем нужен планировщик (Slurm)?

  9. Чем GRID отличается от локального кластера?

  10. Что такое SPMD?

  11. Для чего используется модель PRAM?

  12. Что такое bisection bandwidth топологии?

  13. Что такое граф алгоритма (DAG)?

  14. Как построить матрицу следования?

  15. Когда два оператора логически совместимы?

  16. Что такое EST и LFT оператора?

  17. Что такое slack и критический путь?

  18. Запишите формулу закона Амдаля и предел S_max.

  19. Чем установка Густафсона отличается от Амдаля?

  20. Что такое strong и weak scaling?

  21. Что такое speedup и efficiency?

  22. Чем data parallelism отличается от task parallelism?

  23. Что такое halo cells при domain decomposition?

  24. Что такое false sharing?

  25. Опишите блочное умножение матриц на MPI (идея).

  26. Зачем нужны сети Петри?

  27. Что показывает диаграмма расписания (Gantt)?

  28. Почему «16 ядер» не даёт ускорения 16×?

  29. Когда OpenMP, а когда MPI?

  30. Как проверить корректность параллельной программы?

  31. Что такое operational intensity в модели Roofline?

  32. Что такое метрика Karp–Flatt и зачем она нужна?

  33. Чем iso-efficiency отличается от обычной efficiency?

  34. Что такое distance vector в зависимостях цикла?

  35. Опишите по шагам алгоритм Warshall для матрицы следования.

  36. Что такое halo exchange и когда он нужен?

  37. Чем Cannon отличается от SUMMA при умножении матриц?

  38. Что делает #pragma omp parallel for reduction(+:sum)?

  39. Зачем MPI_Isend вместо синхронного MPI_Send?

  40. Что такое first-touch на NUMA?

  41. Чем SIMT на GPU отличается от SIMD на CPU?

  42. Что такое bounded buffer в сети Петри?

  43. Как deadlock связан с dining philosophers?

  44. Что означают α и β в модели стоимости MPI?

  45. Когда параллелизация не стоит делать (overhead)?


См. также

Другие статьи этого же раздела в боковом меню (как на странице «О разделе»).

Освоение главы0%