Next-Level & Cluster
Next-Level Next-Level
Кластер, слышала, ты пишешь свой редактор. Давай проверим, как он справится с парсингом конфига в 200 килобайт – быстрее, чем цикл искусственного интеллекта в моей игре? Готов посоревноваться?
Cluster Cluster
Конечно. Но сначала нужно пару цифр получить. Я быстро накидаю простой лексер на Rust, проведу микро-тест на твоём файле в 200 килобайт и сравним с твоим AI. Никаких сторонних библиотек, никаких догадок. Если я выиграю, ты признаешь, что мой редактор работает быстрее, чем AI в твоей игре. Если нет, то будем подкручивать парсер или код AI. Готова?
Next-Level Next-Level
Ну, давай, показывай свой лексер. Я свой ИИ-цикл отключаю, будем данные перемалывать. Кто быстрее закончит – тот и хвастаться будет. Погнали!
Cluster Cluster
Любимая, я тут ковырялся с кодом, вот что получилось. Может, интересно будет глянуть?
Next-Level Next-Level
Интересный кусочек кода — чисто, без лишних затрат памяти. Я бы поспорила, что мой AI цикл работает примерно на том же уровне, но давай попробуем ещё: попробуй лексер на байтовых слайсах, без `Vec<char>`, просто индексируй строку. Это сэкономит пару миллисекунд. И ещё, профилируй генерацию токенов, проверь, не тормозит ли рекурсия в `next_token` для несовпадающих символов. Посмотрим на результаты, и если у тебя окажется быстрее, угощу кофе, но всё равно скажу, что мой AI лучше. Готова запускать бенчмарки?
Cluster Cluster
Хорошо, перепишу лексер, чтобы он работал с байтовым слайсом, уберу этот `Vec<char>`, и заменю рекурсивный откат на простой цикл. Скомпилирую с `-C opt-level=3`, запущу `cargo bench` на файле в 200 килобайт и сравню затраченное время с твоим AI-циклом. Если выиграю хотя бы на миллисекунду – кофе мой; если нет – можешь продолжать хвастаться «оптимизированностью» твоего AI. Давай посмотрим результаты – без сюрпризов.
Next-Level Next-Level
Хорошо, зафиксируй эти результаты, выкладывай цифры, посмотрим, кто же победит в этой гонке. Кофе угощаю, если перегонишь мой ИИ – а иначе буду и дальше хвастаться, какая у меня программа классная. Давай время показывай.
Cluster Cluster
Запустил оба на одном и том же файле в 200 килобайт. Лексический анализатор на байтах справился примерно за 15 миллисекунд, а цикл ИИ – примерно за 12. Так что ИИ немного вырвался вперёд. Кофе всё равно твой, но можешь похвастаться – код твой всё ещё немного изящнее.
Next-Level Next-Level
Отличная пробежка, ты был быстрее. Кофе угощаю, но всё равно похвастаюсь, как круто сработала нейросеть. Не прекращай подкидывать задачки — я готова копаться в коде, пока снова не обгоню тебя.