Добавить новость
ВСЕ новости СЕГОДНЯ
RSS.+ — история VIP в новостях News24 с календарным архивом. Все самые быстрые 24/7 новости в ежеминутном тематическом обновлении Life24 — на русском, и не только + Today24, а также тексты с озвучкой — в авторском разделе #123ru.net
Ria.city

Прорыв в компиляторах: оптимизация деления ускорила процессоры Apple и Intel почти вдвое

«iXBT.com»
22

Оптимизация устраняет «проблему 33-го бита» и уже внедрена в LLVM, с обновлениями для GCC и MSVC на подходе

Инженеры-разработчики из японской компании Cybozu Labs, специализирующейся на разработке программного обеспечения и оптимизации вычислительных процессов, предложили новый метод деления на константу для 64-битных процессоров. Этот метод устраняет ограничения устаревших 32-битных алгоритмов, используя избыточную разрядность современных регистров. Патч уже интегрирован в LLVM (Low Level Virtual Machine) — популярный проект с открытым исходным кодом, который включает компилятор Clang (версия 23.0.0). Обновления для GCC (GNU Compiler Collection) и MSVC (Microsoft Visual C++) находятся на стадии тестирования.

Современные компиляторы (GCC, Clang, MSVC) до сих пор использовали алгоритмы 30-летней давности, оптимизированные под 32-битные процессоры, даже когда код исполняется на мощных 64-битных системах. С 1994 года стандартом деления на константу в компиляторах был метод Гранлунда и Монтгомери (GM-метод). Этот подход заменяет деление на умножение на «магическую константу» и битовые сдвиги. Однако метод сталкивается с ограничениями при работе с «33-битными делителями», что приводит к избыточным вычислениям и снижению производительности на современных 64-битных процессорах. Так, в 3% случаев при делении 32-битных чисел на константу (например, при делении на 7, 19 или 107) требуются промежуточные вычисления с использованием 33-битных «магических чисел», что создает длинный критический путь и ограничивает параллелизм.

Инновация Мицунари Шигео (Mitsunari Shigeo) и Хошино Такаши (Hoshino Takashi) заключается в отказе от имитации 33-битной арифметики в пользу прямой трансформации формулы с использованием 64-битной сетки. Вместо сложной последовательности команд коррекции используется элегантная математическая модель: (x⋅(264−a ⋅c))//264, где x — делимое, расширенное до 64 бит, а c — магическая константа. На процессорах с архитектурой x86-64 используется MULX (Unsigned Multiply Without Affecting Flags), которая не модифицирует флаги процессора, а на ARM/Apple Silicon — UMULH (Unsigned Multiply High), извлекающая верхние 64 бита результата умножения. Эти инструкции позволяют выполнять деление за одну операцию, что значительно ускоряет вычисления.

Иллюстрация: Nano Banana

Для сравнения, старый GM-метод требует до 9 инструкций в цикле, включая сложение и сдвиги, что создает длинный путь. Новый метод сокращает цепочку до 3 операций, минимизируя латентность и зависимости данных. Это особенно важно для современных процессоров.

Бенчмарки, проведённые на процессорах Intel Xeon w9-3495X и Apple M4, показали ускорение до 1.67x и 1.98x соответственно. На Apple M4 прирост производительности оказался более выраженным благодаря высокой пропускной способности умножителей. На Xeon новый метод также улучшил предсказуемость времени выполнения задач, что важно для серверных нагрузок. Например, стандартное отклонение времени выполнения на Xeon снизилось с 0.013 до 0.009 секунд.

Интеграция нового метода в компиляторы LLVM и GCC обеспечит ускорение программного обеспечения, работающего с большими объемами данных, включая базы данных, криптографические системы и анализ сетевого трафика.

Это не только академический успех, но и практическая оптимизация, которая уже внедрена в индустрию. На текущий момент патч полностью интегрирован в LLVM, а обновления для GCC и MSVC находятся на стадии финального тестирования. Это означает, что в ближайшем будущем большинство программ, пересобранных с новыми компиляторами, получат значительное ускорение без необходимости изменения их исходного кода. А в компиляторах будет устранён исторический анахронизм и наконец-то задействована мощь 64-битных процессоров для базовых арифметических операций, что даёт почти двукратное ускорение в определённых сценариях.



Все новости по теме на сегодня

Apple в новостях



Музыкальные новости


Все новости 24/7






Бизнес

Весь бизнес

Культура

Спорт

Политика

Общество

Авторы

Новости тенниса



Rss.Plus — реально независимые новости по темам (энциклопедический систематизированный навигатор "Википедия новостей 24/7" c ежеминутным тематическим мониторингом интернет-пространства) в форме аполитичного просветительского интернет-журнала на русском языке, без цензуры, на многоязычной международной веб-платформе 103news.com в содружестве с более чем 20 000 источников информации во всём мире, сайтом News-Life.pro, глобальными гео-проектами Ria.City и Moscow.Media под патронажем Russia24.pro с уникальным персонифицированным новостным разделом "Региональная власть РФ" без купюр и модерации, а также "VIP-скандалы" в двух цветовых вариантах "День - Ночь" (кнопка справа вверху). Эти новости увидят Ваши внуки (наша система обеспечивает вечное хранение опубликованной информации 24/7). Будьте честными сегодня, чтобы было не стыдно завтра.

Опубликовать свою новость в любом городе и регионе, а также на любом языке мира можно мгновенно — здесь


Ria.city
Новости России
Экология в России и мире
Спорт в России и мире
Moscow.media
Новости Крыма на Sevpoisk.ru
Губернаторы России

Все города России от А до Я

Персональные новости

BigPot.News — быстрые и самые свежие тематические новости об известных личностях в России, в Украине, в Беларусии, в Казахстане и за их пределами в календарном формате 24/7 на основе авторской технологичной информационно-поисковой системы Smi24.net с элементами искусственного интеллекта, гео-отбора и возможностью мгновенной публикации авторского контента в категориях News и Life в режиме Free Public



Больше новостей СЕГОДНЯ


RSS.plus — СРОЧНЫЕ новости. Неоспоримое преимущество RSS.plus — максимальная скорость публикаций 24/7. Быстрее нас, СЕЙЧАС, лишь только — ВЕТЕР Сайт создан под патронажем Россия24.pro — непрерывные новости из регионов 24/7 на русском + новости Москвы от Moscow.Media и мировые новости от Smi24.net и партнёров в календарном формате (вчера, сегодня и сейчас) совместно с 123ru.net и платформой СМИ24.net по технологии 103 NEWS

Опубликовать свою новость в любом городе и регионе, а также на любом языке мира можно мгновенно — здесь







Rss.plus