#prog #article
Durable Incrementality
Статья об оптимизации в salsa — фреймворке для инкрементальных вычислений, используемом в rust-analyzer. Идея довольно проста: вместо того, чтобы считать все аргументы равными, поделить их на группы в зависимости от того, насколько часто аргументы меняются (это требует вмешательства пользователя, потому что, очевидно, для надёжных результатов требует знания доменной области) и вместо глобальной версии отслеживать глобальный вектор версий — примерно как число в позиционной системе исчисления или версия программы в SemVer. Ревалидация графа значений сравнивает сохранённые версии в узлах графа с глобальной версией. Введение вектора глобальных значений вкупе с категоризацией аргументов позволяет раньше делать ранний возврат из обхода графа и таким образом делать меньше работы в целом. Подробнее в статье.
В качестве примера, конкретно в контексте rust-analyzer можно считать исходники текущего проекта часто изменяемыми, исходники зависимостей менее часто изменяемыми и исходники std редко изменяемыми.
Durable Incrementality
Статья об оптимизации в salsa — фреймворке для инкрементальных вычислений, используемом в rust-analyzer. Идея довольно проста: вместо того, чтобы считать все аргументы равными, поделить их на группы в зависимости от того, насколько часто аргументы меняются (это требует вмешательства пользователя, потому что, очевидно, для надёжных результатов требует знания доменной области) и вместо глобальной версии отслеживать глобальный вектор версий — примерно как число в позиционной системе исчисления или версия программы в SemVer. Ревалидация графа значений сравнивает сохранённые версии в узлах графа с глобальной версией. Введение вектора глобальных значений вкупе с категоризацией аргументов позволяет раньше делать ранний возврат из обхода графа и таким образом делать меньше работы в целом. Подробнее в статье.
В качестве примера, конкретно в контексте rust-analyzer можно считать исходники текущего проекта часто изменяемыми, исходники зависимостей менее часто изменяемыми и исходники std редко изменяемыми.
rust-analyzer.github.io
Durable Incrementality
Salsa is an incremental computation engine used by rust-analyzer.In this post, I will describe a particular optimization implemented in Salsa —
👍4
#prog #article
Increasing Compiler Speed by Over 75%
Статья об опыте оптимизации DMD — компилятора для D.
Increasing Compiler Speed by Over 75%
Статья об опыте оптимизации DMD — компилятора для D.
Dr. Dobb's
Increasing Compiler Speed by Over 75%
D is designed to be a language that is amenable to fast compilation.
Forwarded from 🌈Радуга на звёздном небе
Четверо арестантов в камере СИЗО, попали все недавно, нормально перезнакомиться еще не успели.
- Тебя за что?
- Ругал Пригожина. А тебя?
- Хвалил Пригожина. А тебя?
- А я - Пригожин.
- А я - тоже Пригожин.
- Тебя за что?
- Ругал Пригожина. А тебя?
- Хвалил Пригожина. А тебя?
- А я - Пригожин.
- А я - тоже Пригожин.
❤9😁3
#prog #rust #python #article
The easiest way to speed up Python with Rust
Статья про rustimport — библиотеку для лёгкой интеграции Rust-кода в код на Python, позволяющая импортировать отдельные rs-файлы как расширения. Со стороны Python требует лишь установить import hook.
Отдельно отмечается, что применение у этого метода скорее для прототипирования — по мере роста объёма кода на Rust преимущества rustimport становятся менее полезными.
The easiest way to speed up Python with Rust
Статья про rustimport — библиотеку для лёгкой интеграции Rust-кода в код на Python, позволяющая импортировать отдельные rs-файлы как расширения. Со стороны Python требует лишь установить import hook.
Отдельно отмечается, что применение у этого метода скорее для прототипирования — по мере роста объёма кода на Rust преимущества rustimport становятся менее полезными.
Python⇒Speed
The easiest way to speed up Python with Rust
Rust can make your Python code much faster; here’s how to start using it as quickly as possible.
🔥1
Forwarded from 🌈Радуга на звёздном небе
Посты в моём канале:
-милота
-космос
-бабушка маньяк
-опять милота
-милота
-космос
-бабушка маньяк
-опять милота
🔥1
А вы знали, что в Челябинской области есть памятник Ленину с подписью "В. И. Ленин — почётный насекальщик"? Причём стоит он там потому, что в 1923 году туда зачислили работником Ленина, где он и числился в штате вплоть до 1991 года. Да, 67 лет после смерти.
Wikipedia
В. И. Ленин — почётный насекальщик
памятник В. И. Ленина в городе Миассе
❤2👍1👎1
Являются ли непрочитанные мемы в личке весомым поводом для пинга коллеги в рабочем чате?
👍8🤬3🤔2