В современных CPU есть один мощный, но глубоко недооценённый механизм - SIMD
(single instruction, multiple data). Это такие
специальные инструкции, которые могут за раз применить одну и ту же операцию к целому блоку данных размером 16, 32 или 64 байт и ускорить однопоточную программу в соответствующее число раз. Как обычная многопоточность, но с важным ограничением, что применяемая операция должна быть везде одна и та же. Из-за этой особенности использовать SIMD для нетривиальных задач сильно сложнее и требует гораздо более творческого подхода.
В докладе мы углубимся в нюансы SIMD-программирования, решая задачу парсинга чисел (в очень упрощённом виде: считать из stdin последовательность разделённых пробелами неотрицательных интов). Обсудим реализации из стандартной библиотеки и почему они тормозят, напишем свою с нуля и будем итеративно оптимизировать её с помощью SIMD, придя в конце к алгоритму, работающему в 50-100 раз быстрее scanf(). Также обсудим, как, не теряя производительности, расширить этот подход на более общий случай и как подобные техники используются в реальных парсерах вроде
simdjson.
1 view
3
0
2 years ago 00:52:18 3
Парсим числа через SIMD, Сергей Слотин
4 years ago 00:07:37 26
Обучение парсингу на Python, парсинг любых сайтов, в том числе SPA
2 years ago 00:04:40 1
Про Парсинг. Что значит “Парсить“? Как работает Парсер?
5 years ago 00:23:27 25
Книжный TikTok: Есенин и страдания. Мои в том числе.
1 year ago 02:17:05 1
Как числа влияют на нашу жизнь? Миссия мужчины и женщины, дата регистрации брака и совместимость
4 years ago 00:11:11 1
ПАРС ФОРТУНЫ ВО ВСЕХ ДОМАХ ГОРОСКОПА.
7 years ago 00:55:06 122
8/1/2018 - “Pars pro toto - значит...“ Библейские беседы с пастором Отто Вендель
4 years ago 00:05:44 31
Парсинг wikipedia python (питон)
4 years ago 00:03:08 25
Парсинг статей на python (питон)
4 years ago 00:05:39 21
Парсинг фотографий из поисковой выдачи на python (питон)
6 years ago 00:13:27 36
C# ПРЕОБРАЗОВАНИЕ СТРОК | PARSE STRING | TRYPARSE STRING | C# ОТ НОВИЧКА К ПРОФЕССИОНАЛУ | Урок # 7
1 year ago 00:07:14 5
Парсинг сайтов через Google Таблицы
2 years ago 00:17:09 1
Swift-уроки: Simple MVVM part 2 - Request + Parse
2 years ago 00:15:45 7
Грамотный парсинг на Python - выгружаем товары с Wildberries с помощью API
4 years ago 00:44:49 13
Делаем парсинг программу по анализу Ютуб каналов Seo Sav UParser на Visual Studio
2 years ago 00:30:18 20
Самые популярные авторы | Булгаков, ты где?
2 years ago 00:06:14 3
Большой гайд по парсингу на Python. Часть 3 Работаем с selenium
5 years ago 00:59:01 9
Депрессия и фэнтези. Большая беседа с автором.
2 years ago 00:14:35 1
Выполняем заказ на фрилансе | Телеграм бот для парсинга курсов с Binance P2P и Garantex на Python
6 years ago 00:13:11 37
Беременна в 13 | Влог с “Игрой Престолов“ #3
2 years ago 00:04:52 1
Парсинг Сайтов с Помощью Chat GPT на Пайтон - ИИ заменит программистов?
4 years ago 00:02:31 4
Старт продаж печи “САМ“ | количество ограничено
3 years ago 00:26:03 6
ГЛАВНЫЙ НОНФИК 2021 | Научно-популярная литература