HeadlinesBriefing favicon HeadlinesBriefing.com

Быстрый JIT-компилятор за 5μs

Hacker News •
×

Исторически быстрая JIT-компиляция была «черным искусством», требующим знаний ассемблера. Промышленные базы данных полагаются на LLVM или генерацию кода C/C++, что приводит к длительному времени компиляции. Теперь ИИ упрощает создание JIT-компиляторов с высокой производительностью. При разработке pgrust автор malisper обнаружил, что с помощью ИИ реализовать JIT стало гораздо проще. Этот компилятор стал ключевым фактором скорости pgrust, компилируя код примерно за 5 мкс и позволяя применять JIT-компиляцию к каждому SQL-запросу. В качестве примера в статье описывается создание простого движка регулярных выражений, поддерживающего литералы и повторения (*). Движок использует три типа узлов: литерал, конкатенация и повторение. При сравнении JIT-версии с кодом, написанным вручную для выражения `b(an)*`, подход JIT продемонстрировал гибкость при минимальных затратах ресурсов, компилируя код за микросекунды.