TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #399 · 25.06

Когда я впервые наткнулся на чит-коды в игре, мне было, кажется, лет 10-11. Я играл тогда в Quake II на самом первом семейном компьютере, и кто-то из старших друзей рассказал мне, что можно нажать кнопку с буквой Ё и ввести GOD, тогда не будешь умирать от выстрелов врагов. Я попробовал и удивился. «Почему авторы игры сделали такой простой способ выиграть?» — подумал тогда я. «Почему код это простое слово, а не какая-то длинная цифробуквенная комбинация, которую держат в секрете? Неужели авторы игры не хотели, чтобы игроки не узнали о существовании этого кода? Ведь тогда очень легко выиграть в эту игру, и все будут использовать код!» Я разумом не очень понимал тогда, что, в общем-то, суть игры как раз в создании для самого себя некоторых сложностей. С моей детской точки зрения игра была внешней средой, которая создаёт сложности, а я их должен преодолеть. Я не понимал, что разработчики без проблем могли сделать в игре кнопку «Выиграть», и её никто бы не нажимал, потому что люди играют в игры не для этого. Вообще, хороший баланс между сложностью и интересностью это как раз-таки отдельная не слишком простая задача в разработке игр. Я быстро узнал ещё про коды NOCLIP (проходить сквозь стены) и GIVE ALL (всё оружие). Я посмотрел всё оружие в игре, побегал по уже открытым уровням и забросил игру. Так я Quake II в своей жизни и не прошёл, хотя он мне тогда очень нравился, и вообще это была чуть ли не единственная игра на компьютере. И я не понимал, почему его бросил, а понял уже потом, через много лет. Подозреваю, в жизни что-то похожее: нужен баланс между сложностью и интересностью. Если вам сложно, вы выживаете и каждый день сражаетесь за существование, то жить вам тяжело и не слишком приятно. Но и если всё легко, вы не сталкиваетесь ни с какими серьёзными проблемами, у вас есть всё желаемое по волшебству — жить тоже не будет слишком интересно, по крайней мере, в перспективе. P.S. Там вроде как давно уже выпустили Quake II RTX с обновлённой графикой. Надо бы, наверное, скачать заценить, как время будет. И читы не вводить ни в коем случае. #games

Hashtags

Резултати

Намерени 1 подобни публикации

Търсене: #llvm

当前筛选 #llvm清除筛选
Android Broadcast

@android_broadcast · Post #9894 · 17.03.2026 г., 05:32

🤖Google ускорила ядро Android, скормив компилятору профили реального использования Команда LLVM toolchain в Google рассказала, как они применили AutoFDO (Automatic Feedback-Directed Optimization) к ядру Android — и результаты интересные. Идея простая: обычный компилятор принимает решения об оптимизациях на основе статических эвристик. Встроить функцию или нет, какая ветка условия чаще выполняется — всё это угадывается без реальных данных из приложений и пользовательских сценариев. AutoFDO меняет подход: компилятор получает профили реального выполнения кода и на их основе принимает куда более точные решения. Эта техника Google уже давно применяется к своей серверной инфраструктуре и ChromeOS, так что подход обкатанный и зарекомендовавший себя. Кто знаком с ART Profiles — идея покажется знакомой. Там тот же принцип: собираем данные о реальном выполнении, отдаём компилятору, получаем более точный нативный код. Только ART Profiles работают на уровне ART для Java/Kotlin-кода конкретного приложения, а AutoFDO — на уровне ядра, C/C++ и LLVM. Разные слои, одна философия. Для ядра профили собирают не с реальных устройств, а в лабораторных условиях: запускают топ-100 самых популярных приложений, используют simpleperf и аппаратные возможности ARM для записи истории ветвлений. Собранные данные показывают 85% совпадение с профилями реального парка устройств — этого достаточно, чтобы считать подход рабочим. Результаты на ядрах 6.1, 6.6 и 6.12: 👉 холодный старт приложений стал быстрее на ~4% 👉 время загрузки сократилось на ~1% 👉 ядро занимает ~40% CPU-времени на Android, так что любая оптимизация здесь ощутима Важный момент: AutoFDO не меняет логику кода, только влияет на решения компилятора — инлайнинг, раскладку кода. Функции, которые не попали в профили («холодные»), компилируются стандартным образом, без изменений. Сейчас это уже в проде — профили включены в ветки android15-6.6 и android16-6.12, так что устройства на этих ядрах уже собираются с AutoFDO. Pixel-устройства точно попадают в эту категорию. С другими производителями сложнее: многие используют сильно модифицированное ядро и не переходят на GKI из AOSP, так что там это может быть не применено вовсе. В планах — GKI-модули, вендорные модули через DDK и поддержка новых версий ядра. 🔗 Источник - блог Android Developers #Android#AndroidDev#Производительность#LLVM#Native