TGViewer
Евгений Козлов пишет про IT Евгений Козлов пишет про IT @careerunderhood · 2.84K subscribers
Post #339 2.77K
CPU, Memory Models, Concurrency, Multiprocess, Multithreading и Async. Часть 15. Выводы про модели памяти в железе + Bonus

В заключительном посте про модели согласованности хочется ответить на один вопрос - зачем нужно знать информацию о том как работает железо. Это ведь низкий уровень, до которого добираются не только лишь все.

Цели которые я ставил перед собой делая ответвление от привычных постов:
🔵 Продемонстрировать что может произойти под капотом программы в которой отсутствует синхронизация и всё отдано на откуп железу. Подсветить зачем нужны те самые мьютексы и семафоры и почему без их использования в программах всплывают неприятные артефакты.
🔵 Продемонстрировать два разных подхода к работе с памятью. К слову, теперь вы знаете один из факторов почему Macbook на M процессоре работает быстрее чем на Intel процессоре. Слабая модель памяти накладывает меньше ограничений на компилятор и параллельное исполнение, что выливается в увеличение производительности. Но за всё нужно платить, особенно на уровне железа. Трейдофф между безопасностью и производительностью на лицо.

Чуть более глубокие обзорные статьи для устаканивания информации из постов:
📄 x86 TSO: A Programmer's Model for x86 Multiprocessors
📄 Hardware Memory Models
📄 Lock-free структуры данных. Основы: Модель памяти с примерами на C++
📄 В чём опасность слабой модели памяти ARM на примере конкретного эксплоита
📄Consistency Models

Если хочется основательно погрузиться в вопрос:
📖 A Primer on Memory Consistency and Cache Coherence, Second Edition

Спасибо что читали, в следующих постах приступим к разбору моделей памяти и конкурентности в языках программирования😇
  • 👍 16
  • 🔥 5
  • ❤‍🔥 4
More from @careerunderhood
  1. Sep 30, 2026Результаты опроса меня впечатлили. Большинству интересны истории из работы. Поехали, начне…
  2. Sep 25, 2026Post #470
  3. Sep 21, 2026Concurrency, Synchronization and Consistency. Non-blocking. Оглавление Введение - Блокирую…
  4. Sep 21, 2026Concurrency and Consistency. Non-blocking, lock-free and async. Пост №12. Заключение. Когд…
  5. Sep 20, 2026Concurrency and Consistency. Non-blocking, lock-free and async. Пост №11. Самые важные фак…
  6. Sep 19, 2026Concurrency and Consistency. Non-blocking, lock-free and async. Пост №10. Продвинутые wait…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →