Компиляция JIT-кода за 5 мкс: создание быстрого JIT для Postgres pgrust

✍️ OpenClawRadar📅 Опубликовано: 24 августа 2026 г.🔗 Source
Ad

Исторически быстрая JIT-компиляция была черным искусством. Продакшн-базы данных либо используют LLVM, либо генерируют код на C/C++, оба подхода имеют высокое время компиляции. Теперь AI-ассистент делает практичным написание JIT-компилятора, который напрямую генерирует ассемблер, достигая времени компиляции около 5 мкс. Именно это автор сделал для pgrust, расширения Postgres на Rust.

Ключевое понимание: JIT-компиляция ценна, когда информация времени выполнения кардинально меняет поведение, например, при разборе данных с неизвестной схемой. Для баз данных JIT-компиляция каждого запроса может дать 2-5-кратный выигрыш в производительности, но только если время компиляции ничтожно мало. LLVM и генерация C/C++ занимают миллисекунды, что ограничивает их использование только сложными запросами. JIT за 5 мкс может обрабатывать каждый запрос.

Для демонстрации в статье строится игрушечный движок регулярных выражений, поддерживающий литералы и повторения (*). Регулярное выражение b(an)* используется в качестве бенчмарка. Интерпретируемая версия в 10-20 раз медленнее рукописного кода. Подход JIT направлен на устранение этого разрыва.

Ad

Ключевые моменты из поста:

  • JIT-компиляция — это практика генерации скомпилированного кода во время выполнения, часто дающая 2-5-кратный прирост производительности.
  • Традиционные пути JIT (LLVM, генерация C) страдают от высокого времени компиляции.
  • AI-ассистент снижает барьер для написания JIT-компиляторов, генерирующих ассемблер.
  • JIT-компилятор pgrust компилирует код примерно за 5 мкс, обеспечивая JIT для каждого SQL-запроса.
  • Статья предоставляет прохождение по созданию простого движка регулярных выражений с JIT, пропуская парсер для простоты.

Для разработчиков, интересующихся внутренностями баз данных или техниками JIT, этот пост предлагает практические идеи о новом подходе, который может улучшить устаревшие системы.

📖 Читать полный источник: HN AI Agents

Ad

👀 Смотрите также

72-шаговая настройка Claude: от стандартного до продвинутого пользователя
Гайды

72-шаговая настройка Claude: от стандартного до продвинутого пользователя

Подробная статья в Medium содержит чек-лист из 72 шагов для настройки Claude — от стандартных параметров до продвинутых функций для опытных пользователей. Опубликована на HN с 10 баллами и 1 комментарием.

OpenClawRadar
Принципы написания навыков для Claude Code на основе 159 открытых исходных навыков
Гайды

Принципы написания навыков для Claude Code на основе 159 открытых исходных навыков

Разработчик поделился 10 принципами написания эффективных навыков для Claude Code, основанными на создании и поддержке открытого реестра с 159 навыками. Принципы включают практические подходы, такие как использование папок вместо отдельных файлов, добавление разделов с подводными камнями и реализацию хуков по требованию.

OpenClawRadar
Практические уроки от создания встроенного искусственного интеллекта в React Native
Гайды

Практические уроки от создания встроенного искусственного интеллекта в React Native

Разработчик делится конкретными техническими деталями создания приложения на React Native с локальными LLM, генерацией изображений, транскрипцией голоса и компьютерным зрением, включая стратегии управления памятью, выбор библиотек и тесты производительности.

OpenClawRadar
Контрольный список для анализа производительности OpenClaw CLI
Гайды

Контрольный список для анализа производительности OpenClaw CLI

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

OpenClawRadar