- Регистрация
- 8 Сен 2016
- Сообщения
- 483.764
- Реакции
- 268.165
**Складчина: Оптимизация Go, как в BigTech [Balun Courses]**
Курс поможет в решении следующих проблем:
1. Непонимание perf-снимот и кода в сторонних библиотеках при написании бизнес-логики и приложений на Go.
2. Отсутствие знаний по оптимизации кода и его исполнению за пределами синтаксиса.
3. Желание заниматься нетривиальными и низкоуровневыми задачами, несмотря на написание простых фич на работе.
4. Неумение разобраться в исходном коде Go из-за недостаточного понимания языка/архитектуры компьютера.
5. Затруднения на собеседованиях в BigTech из-за вопросов по внутреннему устройству Go и Computer Science.
На практике в течение 5 недель вы:
1. Изучите Computer Science для работы в BigTech и поймете, как исполняется код от языкового синтаксиса до машинных инструкций.
2. Поймете, как устроена операционная система, изучите calling convention и научитесь вызывать syscall’ы на практике.
3. Освоите использование ассемблера в Go для понимания языковых оптимизаций.
4. Научитесь оптимизировать код, используя примеры от bigtech-компаний и низкоуровневого программирования.
5. Глубоко изучите работу low-level пакетов: unsafe и runtime, reflect и debug.
6. Приобретете навыки использования профайлера для оптимизации CPU, памяти и блокировок.
7. Благодаря этим знаниям сможете повысить уровень ЗП и стать ценным специалистом в компании.
**Программа курса**
**Основы Computer Science. Часть 1**
**Урок №1 – Микроархитектура процессора**
- Внутреннее устройство компьютера: ISA, модели разделения памяти, организация чипсетов.
- Внутреннее устройство процессора: архитектура CPU, конвейер процессора, предсказывание переходов, устройство регистров и другие аспекты.
**Урок №2 – Оперативная, кеш память**
- Внутреннее устройство кеша процессора, оперативной памяти и их организация.
**Основы Computer Science. Часть 2**
**Урок №3 – Архитектура операционных систем**
- Введение в операционные системы, ASMP и SMP, прерывания и системные вызовы с примерами.
**Урок №4 – Управления памяти в операционке**
- Механизмы управления памятью, абстракции операционной системы и аллокаторы памяти.
**Неделя 3**
**Урок №5 – введение в ассемблер Go**
- Основы ассемблера Go и его применение.
**Урок №6 – инструкции работы со стеком**
- Работа со стеком программы, локальные переменные, соглашения вызова функций и другие аспекты.
**Неделя 4**
**Урок №7 – устройство памяти в Go, бенчмарки**
- Устройство памяти в Go, использование аллокаторов и бенчмарки в Go.
**Урок №8 – оптимизации в Go**
- Устройство Go, оптимизации кода, работа с пакетом unsafe, рефлексия в Go и прочее.
**Неделя 5**
**Урок №9 – управление внутренним состоянием рантайма Go**
- Управление внутренним состоянием рантайма Go, продвинутые оптимизации и использование CGO.
**Урок №10 – профилирование в Go**
- Профилирование в Go, работа с профилировщиком и его типами.
**Домашнее задание:**
- Написать программы, взаимодействующие с операционной системой через syscalls, написать свои каналы в Go, используя syscall pipe.
- Написать свою программу на ассемблере Go.
- Написать микросервис, включив работу с CGO, выполнить профилирование и применить PGO.
Курс поможет в решении следующих проблем:
1. Непонимание perf-снимот и кода в сторонних библиотеках при написании бизнес-логики и приложений на Go.
2. Отсутствие знаний по оптимизации кода и его исполнению за пределами синтаксиса.
3. Желание заниматься нетривиальными и низкоуровневыми задачами, несмотря на написание простых фич на работе.
4. Неумение разобраться в исходном коде Go из-за недостаточного понимания языка/архитектуры компьютера.
5. Затруднения на собеседованиях в BigTech из-за вопросов по внутреннему устройству Go и Computer Science.
На практике в течение 5 недель вы:
1. Изучите Computer Science для работы в BigTech и поймете, как исполняется код от языкового синтаксиса до машинных инструкций.
2. Поймете, как устроена операционная система, изучите calling convention и научитесь вызывать syscall’ы на практике.
3. Освоите использование ассемблера в Go для понимания языковых оптимизаций.
4. Научитесь оптимизировать код, используя примеры от bigtech-компаний и низкоуровневого программирования.
5. Глубоко изучите работу low-level пакетов: unsafe и runtime, reflect и debug.
6. Приобретете навыки использования профайлера для оптимизации CPU, памяти и блокировок.
7. Благодаря этим знаниям сможете повысить уровень ЗП и стать ценным специалистом в компании.
**Программа курса**
**Основы Computer Science. Часть 1**
**Урок №1 – Микроархитектура процессора**
- Внутреннее устройство компьютера: ISA, модели разделения памяти, организация чипсетов.
- Внутреннее устройство процессора: архитектура CPU, конвейер процессора, предсказывание переходов, устройство регистров и другие аспекты.
**Урок №2 – Оперативная, кеш память**
- Внутреннее устройство кеша процессора, оперативной памяти и их организация.
**Основы Computer Science. Часть 2**
**Урок №3 – Архитектура операционных систем**
- Введение в операционные системы, ASMP и SMP, прерывания и системные вызовы с примерами.
**Урок №4 – Управления памяти в операционке**
- Механизмы управления памятью, абстракции операционной системы и аллокаторы памяти.
**Неделя 3**
**Урок №5 – введение в ассемблер Go**
- Основы ассемблера Go и его применение.
**Урок №6 – инструкции работы со стеком**
- Работа со стеком программы, локальные переменные, соглашения вызова функций и другие аспекты.
**Неделя 4**
**Урок №7 – устройство памяти в Go, бенчмарки**
- Устройство памяти в Go, использование аллокаторов и бенчмарки в Go.
**Урок №8 – оптимизации в Go**
- Устройство Go, оптимизации кода, работа с пакетом unsafe, рефлексия в Go и прочее.
**Неделя 5**
**Урок №9 – управление внутренним состоянием рантайма Go**
- Управление внутренним состоянием рантайма Go, продвинутые оптимизации и использование CGO.
**Урок №10 – профилирование в Go**
- Профилирование в Go, работа с профилировщиком и его типами.
**Домашнее задание:**
- Написать программы, взаимодействующие с операционной системой через syscalls, написать свои каналы в Go, используя syscall pipe.
- Написать свою программу на ассемблере Go.
- Написать микросервис, включив работу с CGO, выполнить профилирование и применить PGO.
Для просмотра скрытого содержимого вы должны зарегистрироваться
Возможно, Вас ещё заинтересует:
- 5 рунических мандал для привлечения клиентов и поиска работы и ритуалы с ними [Елена Филиппова]
- Токсичные матери в Cluster B [EduNote] [Марина Осборн]
- Секс как грех: сексуальные отклонения [EduNote] [Андрей Куликов, Олег Аксиненко]
- [Аудиокниги] Великие люди великой страны (часть 2) [Наталия Лалабекова, Константин Шабалдин, Виктория Семибратская]
- [Аудиокниги] Великие люди великой страны (часть 1) [Наталья Артёмова, Ольга Артёмова, Елена Гордеева]
- Осенняя повседневная капсула + капсула для мам 2024 [Катя Кида]
- Полное психологическое исцеление [Ast-Nova]
- С тобой лучше всех [Ast-Nova]