[Konstantin Vladimirov] SIMD и ручная векторизация (доп. семинар для первого курса по языку C и алгоритмам)

🎯 Загружено автоматически через бота: 🚫 Оригинал видео: 📺 Данное видео является собственностью канала Konstantin Vladimirov. Оно представлено в нашем сообществе исключительно в информационных, научных, образовательных или культурных целях. Наше сообщество не утверждает никаких прав на данное видео. Пожалуйста, поддержите автора, посетив его оригинальный канал: @tilir. ✉️ Если у вас есть претензии к авторским правам на данное видео, пожалуйста, свяжитесь с нами по почте support@, и мы немедленно удалим его. 📃 Оригинальное описание: Специальные выпуски о комбинаторике. Дополнительный семинар, когда сессия уже (почти) сдана, а семестр ещё далеко -- самое время поговорить об отвлеченных вещах. Например о векторизации. Мы рассмотрим базовую поддержку векторных инструкций современными процессорами, эффект векторизации на производительность простых примеров, а дальше пойдём к более сложным примерам. В частности -- к сортирующим сетям. Лектор: Константин Владимиров Дата лекции: 2 мая 2022 года Съёмка: Евгений Богданов. Звук: Юлий Тарасов. Слайды ко всем лекциям по комбинаторике: Исходный код к лекции: Задачник для первого курса: Timeline: 00:00 Векторные возможности CPU 07:50 Хедера для интринсиков и методы работы с ними 14:53 Распечатка, сохранение и загрузка регистров 24:42 Простая арифметика 29:00 Первый пример: find 36:16 Больше интринсиков и blend 42:00 Второй пример: argmin 57:14 Перестановки 01:00:17 Третий пример: copy_if_less 01:13:12 Сортирующие сети 01:22:16 Битонические последовательности 01:32:38 Сортировка внутри векторного регистра 01:37:25 Вращения и сдвиги 01:43:12 Медианные фильтры и завершение Errata: * Тут пока пусто
Back to Top