Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
3029 - Telegram Web
Telegram Web
Forwarded from ITc | новости
Создатель Doom: мы могли бы прекрасно работать на старом «железе», если бы не ленивые программисты

Известный разработчик игр Джон Кармак считает, что мы не так уж сильно нуждаемся в продвинутых чипах, как принято думать — просто это экономически выгоднее. Так он прокомментировал мысленный эксперимент про «CPU-апокалипсис» в Х.

Основатель студии id Software и экс-CTO Oculus утверждает, что дело не в ограниченности аппаратного обеспечения, а в неэффективности программного.

«Если бы приоритет отдавался оптимизации ПО, то работать на устаревшем оборудовании могло бы больше пользователей, чем многим может показаться», — написал Кармак. И добавил, что если бы на рынок перестали поступать новые чипы, то под влиянием действующих на нём сил произошло бы колоссальное повышение эффективности софта.

В качестве решения он предлагает кардинально поменять архитектуру современных программ: «Переписать все продукты на базе интерпретируемых микросервисов в монолитные приложения на нативном коде». По сути, это означает переход от современных подходов в разработке к более эффективным практикам прошлых эпох вычислительной техники. Программист признал, что у подобных изменений есть свои минусы, и значительные: «Новые инновационные продукты станут гораздо более редкими без сверхдешёвых и масштабируемых вычислительных мощностей», — полагает он.
👍378🤡6🤔1💯1
😁81👍6🤣5👀4🫡32🆒1
⚡️Компания Nebius, основанная израильским миллиардером Аркадием Воложем, сооснователем «Яндекса», получила от Управления инноваций Израиля грант в размере полмиллиарда шекелей ($135 млн) на создание израильского суперкомпьютера.
________
🎙Будь в курсе событий
🇮🇱
Подпишись на «Голос Израиля»
😁27😱20👍16🔥10💩32🥰1🐳1
commit -m "better"
В общем, после нескольких лет попыток придумать что-то не столь всратое, я плюнул, и переписал runsvdir - это часть runit, которая отвечает именно за управление деревом процессов.
#herobora

В итоге, мой #runsvdir у меня прижился, и, как понятное следствие, я окончательно отказался от ошметков #runit:

* https://github.com/pg83/ix/blob/main/pkgs/bin/ix/init/ewontfix/main.c - свой элементарный init.

* https://github.com/pg83/ix/blob/main/pkgs/bin/ix/init/rc/ix.sh#L9-L11 - клей между моим init, и схемой загрузки "как в runit", чтобы можно было заменять туда-сюда.

* https://github.com/pg83/ix/blob/main/pkgs/bin/ix/init/halt/main.c https://github.com/pg83/ix/blob/main/pkgs/bin/ix/init/reboot/main.c - реализации halt/reboot, они, как ни странно, тоже часть init. Если такой способ (без graceful shutdown) кажется странным - читаем мои заметки про #reboot, https://www.tgoop.com/itpgchannel/1572.

* https://github.com/pg83/ix/blob/main/pkgs/bin/ix/pid1/m.cpp#L157-L175 - пришлось перенести в runsvdir код, который убивает orphane процессы, в runit у меня это был cron job на shell (https://github.com/pg83/ix/blob/main/pkgs/bin/sched/stale/procs/scripts/staleprocs.sh), но в новой схеме так не получается, потому что сервисы сразу начинают наследоваться от pid 1, а не от pid > 1, поэтому инвариант "все, что подвисло к pid 1, но не runsvdir - мусор" перестал работать.

Так что теперь у меня официально полностью велосипедный in house init!

С точки зрения скриптов инициализации ничего не поменялось, ага.
👍11🔥74🆒3
Так как сабж запретил uBlock, то я подумываю съехать на какой-нибудь другой (chromium-based) browser.

Пока мне больше всех нравится https://brave.com/, но, возможно, я что-то упускаю?
💩236👍4🤔2🆒2💊1
commit -m "better"
Поэтому получается так, что дистростроители прямо очень сильно не любят Rust:
Продолжаем тему "почему дистростроители не любят Rust"

https://gitlab.archlinux.org/archlinux/packaging/packages/mesa/-/blob/main/PKGBUILD?ref_type=heads#L103-144

Вот так, например, приходится приседать в Arch, чтобы доставить до сраной #meson сборки #mesa (которая, сама по себе, сошла с ума, и решила запилить сборку Rust без cargo, и его механизмов вендоринга) зависимости для компилятора шейдеров #NVK (драйвер для Nvidia vulkan).

Особенно автору всего этого добра доставляет копипастить версии руками, ага.

Мне еще это только предстоит, а я уже ненавижу этот процесс тихой ненавистью.
😁9🤡8🐳5😭4👍3💯2👀1🦄1
Forwarded from javawatch
ChatGPT достигла уровня человека! Я попросил ее написать пример использования модулей в C++23 через cmake, и у нее не получилось. У меня тоже не получилось. Каких высот мы достигли!
😁98🐳10💯8👍7🤣4🆒21
👍16😁11🤡10🤔3🆒1
Forwarded from /g/‘s Tech Memes (damr)
😁62🔥5🆒3👍2🤡1🤣1
🤔105💩3🐳3🆒1
👍22💯8😁43🔥2🆒1
commit -m "better"
Правда, я вот сейчас активно пытаюсь выкинуть #mesa вообще, и попробовать построить альтернативный стек, типа #AMDVLK + #ANGLE. Зачем?
Давненько не рассказывал про #ANGLE.

Это смешно, но у меня, до сих пор, не получилось скачать его исходник.

Первая проблема, с которой я столкнулся - часть submodules c https://github.com/google/angle ведет на приватные, запароленные, гуглорепы.

Ладно, как-то я это обошел, точечно вырезав эти submodules.

Но вот то, что у меня произошло прямо сейчас:

Cloning into 'third_party/dawn/third_party/angle'...


Ну вы поняли, да?

Angle хочет в своем third_party Dawn, а Dawn в своем third_party хочет Angle.

Никто такого не ожидал, но они смогли - рекурсивно сослаться на себя же, в цепочке загрузки submodules. Этот процесс, очевидно, не имеет шансов сойтись.

В этот момент я заплакал (честно), и отложил это говно, на неопределенный срок.
🔥22😁18😭18🤡6🎉3🤯1🐳1🆒1
commit -m "better"
Давненько не рассказывал про #ANGLE. Это смешно, но у меня, до сих пор, не получилось скачать его исходник. Первая проблема, с которой я столкнулся - часть submodules c https://github.com/google/angle ведет на приватные, запароленные, гуглорепы. Ладно,…
Вот я написал "в этот момент я заплакал (честно), и отложил это говно, на неопределенный срок", и мне стало стыдно. В конце-концов, я программист, или где?

Та-да, #mesa free 3D stack, #ANGLE + #AMDVLK!!!

Глючит пока что пиздец, через раз дедлочится на старте, но лиха беда начало.

Как сделал?

https://github.com/pg83/ix/blob/main/pkgs/lib/angle/chromium/ix.sh#L1-L6 - сильно считерил, полностью сконфигурировал chromium, но собрал из него только #ANGLE.

OpenGL setting:
GL_VENDOR: Google Inc. (AMD)
GL_RENDERER: ANGLE (AMD, Vulkan 1.4.308 (AMD Radeon Graphics (0x00001900)), AMD open-source driver-2.0.341)
GL_VERSION: OpenGL ES 3.1.0 (ANGLE 2.1.0 git hash: unknown hash)
GL_SHADING_LANGUAGE_VERSION: OpenGL ES GLSL ES 3.10 (ANGLE 2.1.0 git hash: unknown hash)
🎉34🔥96👏4🤯3👀2💊2👍1😁1🆒1
😁43👍4💯3🆒2
2025/07/13 20:29:03
Back to Top
HTML Embed Code: