Здесь можно получить помощь и консультацию по любому языку программирования, в любой сфере разработки. Не важно, программируете ли вы собственного робота, пишете серверную приблуду, интегрируете чужие API, ковыряете игру, или пытаетесь сделать сайт на Wordpress - если аноним что-то об этом знает, он обязательно поможет. Пополняемая база знаний: http://pastebin.com/AGhLZppH Не знаете, какой язык и библиотеки взять для вашей задачи? Вам сюда. Не знаете, где клиент, а где сервер? Вам сюда. Не понимаете, что такое ООП? Вам сюда. Написали код, и не понимаете, почему не работает? Вам сюда. Обнаружили кусок кода, и не понимаете, как оно вообще могло работать? Вам тоже сюда. Не знаете, как подступиться к проблеме? Вам обязательно сюда. Другие тематические нити (иногда обновляется): https://pastebin.com/psy43ibG Примеры кода лучше выкладывать в виде ссылок на http://pastebin.com или http://ideone.com Фронтендные вещи лучше выкладывать на http://jsfiddle.net Аноним будет стараться дать максимально точный ответ на ваш вопрос и не пытаться предложить вам поменять весь стек технологий только потому что не знает, как решить проблему с тем что у вас есть. Впрочем, если вы забиваете гвоздь микроскопом, аноним постарается вас об этом предупредить. Чтобы не сбивать новичков с толку, а также не разбавлять полезную информацию мусором, беспредметные споры типа "какой язык / парадигма / библиотека / етц лучше" здесь запрещены. Для подобных вещей теперь есть отдельная диспутов нить >>/dev/21353 Если здесь поселится достаточное количество программистов на одном языке / одной сферы, можно будет их выделить в отдельную нить, а в этой оставить на неё ссылку. По мере поступления вопросов можно составлять FAQ и базу знаний. Архив нитей: http://410chan.org/dev/arch/res/14160.html http://410chan.org/dev/arch/res/15681.html http://410chan.org/dev/arch/res/17424.html http://410chan.org/dev/arch/res/19666.html http://410chan.org/dev/arch/res/21641.html http://410chan.org/dev/arch/res/23830.html Прошлая нить пока тонет тут: >>/dev/23830
>>27921 Я не программист микроконтроллеров, но интересовался разными вещами. Насколько я понял, FreeRTOS is a thing в этой области. Грубо говоря, это что-то вроде Си-библиотеки, используя которую можно превратить свои функции в нечто процессоподобное с кооперативной многозадачностью. Вот этот набор лекций даёт представление: https://vkvideo.ru/playlist/-58310134_55906556 Также, вот этот сайт в целом: https://easyelectronics.ru/freertos_manual.html
>>27924 Кстати, не обязательно кооперативной. Там есть настройка configUSE_PREEMPTION, и она включена по-умолчанию. https://www.freertos.org/Documentation/02-Kernel/03-Supported-devices/02-Customization#configuse_preemption
Знаете, у меня несколько раз в жизни было такое, что я долго не программироваю руками, а потом начинаю и обнаруживаю, что у меня прямо радикально повысился скилл. Скорее всего мне снятся байтики, в этом дело.
Из последнего, хочу поделиться. Когда я был студентом, я упарывался по байтикам, но программировать не умел совсем. Потом писал на скриптовых языках, еще позже работал джавистом, и в целом изменил своё мнение на то, что вообще дописать программу обычно важнее, чем сделать её оптимизированной. Но затем постепенно я снова начал обращать внимание на байтики, уже сквозь умение писать код. Недавно я пытался ускорить рендеринг одного виджета в GUI, и 2D-рендеринг оказался интересным упражнением, позволяющим ощутить пропускную способность компьютера. Еще вот посмотрел одно интересное видео, описывающее ограничения компьютера наглядно https://vkvideo.ru/video-227208217_456239018 (смотрел с автоматическим переводом). Затем я немного дискутировал с ChanGPT о разных вещах, и с его подачи, фактически, угорел по битовым маскам, с которыми не имел дела со студенческой скамьи. И теперь я творю всякую битовую дичь в джаваскрипте.
Также, в контексте движения Автобуса в Ад, интересно ознакомиться с докладом о коллапсе нашей цивилизации: https://vkvideo.ru/video-227208217_456239121 - Jonathan Blow в Москве, 2019.
Опытные аноны, подскажите, стоит ли развиваться как программист SQL (плавно переходя в Data Engineering, DWH или десктопный C#), или это не очень перспектино? Мне хочется быть разработчиком, но меня немного пугает веб. Был опыт в написании сайтов на Ruby on Rails и Python, но как я понимаю такие пет проекты сильно отличаются от того, что требуется на рынке. Мне не очень хочется учить JS и PHP, а с Java было очень много проблем ещё в универе. Что думаете? Пока планирую работать в своей компании и набираться опыта в написании запросов
>>27954 Учить разнообразные актуальные вот прям сейчас штуки всегда перспективно, а главное не занимает особо времени — потому что реальное погружение идёт только непосредственно на работе.
>>27940 Согласен, если ты можешь разобраться, какие байтики куда рендерятся - все девушки твои.
>>27954 Со своей колокольни безработного сеньёра: 1. Я не знаю, что такое SQL-программист, но и не понимаю, как программист может не знать SQL на каком-то среднем уровне. Это что-то почти настолько же базовое как арифметика, если не углубляться в особенности конкретной СУБД. Программы преобразуют данные, так что логично, что нам почти всегда нужно их откуда-то брать и куда-то записывать. 2. Я не уверен, что кодить для десктопа и получать за это деньги — рабочий вариант в 2025 году. Это возможно, наверно, но сложнее, чем найти работу, где софт используется через браузер. Скорее всего на десктопе будет C# или кресты. 3. В браузере сейчас всё гораздо удобнее, чем раньше. Я не шарю за Реакт, но есть много удобного на уровне самого языка JS. Например, fetch и промисы. Вёрстка и CSS осваиваются возможно и не очень просто, но почти везде пользуются костылями типа Bootstrap, так что в CSS лезть требуется довольно редко. Но из-за упрощения написания фронтенда из-за мощных фреймворков, сейчас всё что ни попадя тащат во фронт, что приводит к огромным коллекциям в куче, тысячам тегов в DOM и закономерным тормозам и гудящим вентиляторам на low-end-ноутбуках.
>>27825 27825-кун на связи. Спасибо тем, кто добавил канал в Tgstat. Вот прямые ссылки на материалы. Курc «Архитектура ЭВМ и язык ассемблера» от Падаряна Вартана Андрониковича (заведующего лабораторией обратной инженерии бинарного кода) Сайт: http://asmcourse.cs.msu.ru Старые видео: https://teach-in.ru/course/architecture-and-assembler http://asmcourse.cs.msu.ru/?page_id=2203 http://asmcourse.cs.msu.ru/?page_id=2439 Имеется репозиторий - https://gitlab.ispras.ru/snoop/asmcourse https://github.com/Dman95/SASM - IDE от сотрудников МГУ (в GH-репозитори есть курсы по HPC) ## Список лекций (все хеши - blake 3) [Правила курса fe6499e36921fe687eceb6bdd0a045913deb9485720ba08d24fcb7509569c6d9](https://web.archive.org/web/20250711032713im_/https://tg.telegramdownloader.net/7133/Slides2025-00---intro.pdf?hash=6fe483) [Лекция 1 2025-02-08 Основы асм 5eb6d90dde483def20c93d87dbbd857b76610f4389039e3b5fbd0bfb76169970](https://web.archive.org/web/20250711032644im_/https://tg.telegramdownloader.net/7132/Slides2025-01.pdf?hash=17d052) [Лекция 2 2025-02-12 IA-32 36021db838351e91109acfc291d7423d33556763663b4bb560994c4e94195512](https://web.archive.org/web/20250711032713im_/https://tg.telegramdownloader.net/7134/Slides2025-02.pdf?hash=0a5184) [Лекция 3 2025-02-15 Арифметика 1 fd0ab2dc0a8228ced0c83ccd2816bf8de59f26be50ad164568371c3876f2f785](https://web.archive.org/web/20250711032723im_/https://tg.telegramdownloader.net/7135/Slides2025-03.pdf?hash=646397) [Анонс курса "Основы анализа программных реализаций" ad25cf409a2115e23422910749d83ed65cf26fa36bea0dc4e508f611ce42148e](https://web.archive.org/web/20250711032737im_/https://tg.telegramdownloader.net/7136/Объявление-АПР.pdf?hash=ec624a) - на телеграм-канале @introSRE [Лекция 4 2025-02-19 Арифметика 2 fb8c24ecbc4674f66cdf7982d9ddeb278a267bec971670c1f6102b59cdb5ec05](https://web.archive.org/web/20250711032749im_/https://tg.telegramdownloader.net/7137/Slides2025-04.pdf?hash=3eb5ec) [Лекция 5 2025-02-22 Control flow f3a3eeb7a5f21f59f434e7772dee105197355e24d751761856ac6e4b37b4af71](https://web.archive.org/web/20250711032802im_/https://tg.telegramdownloader.net/7138/Slides2025-05.pdf?hash=7ba5fb) [Лекция 6 2025-02-26 Соглашения, ABI ed8cd0279add6120d89badcfda895203c3f33f64b85bacf4c09a8268d2f3a4bb](https://web.archive.org/web/20250711032812im_/https://tg.telegramdownloader.net/7139/Slides2025-06.pdf?hash=a05abb) [Лекция 7 2025-01-01 Соглашения 1dab2d8ca01dcd75b00be0dbbc3d4f4725edb15a99888077fc183caeb83770ef](https://web.archive.org/web/20250711032824im_/https://tg.telegramdownloader.net/7140/Slides2025-07.pdf?hash=aaaaec) [Лекция 8 2025-01-05 Соглашения, Оптимизация e412c36ee1243b380ff64b380cdf220a9a08eef7d870f7662673f2236e672049](https://web.archive.org/web/20250711032841im_/https://tg.telegramdownloader.net/7141/Slides2025-08.pdf?hash=8d9ede) [Лекция 9 2025-01-12 Соглашения e3eb94284262450a3db307d70bbd7cb830c668a42055f0d53f2e8ed3e9e7dc69](https://web.archive.org/web/20250711032847im_/https://tg.telegramdownloader.net/7142/Slides2025-09.pdf?hash=d55d7d) [Лекция 0xA 2025-01-15 Соглашения ae9925d33f527e375318644c6b20644f090517fdbea93f3cb40c2e1a8435304c](https://web.archive.org/web/20250711032910im_/https://tg.telegramdownloader.net/7143/Slides2025-10.pdf?hash=6d8692) [Лекция 0xB 2025-01-19 ABI f316f9fe1aa33be1c06fa30d7c1634fe0d1e4240bb5091cbe0ae21c241d54a33](https://web.archive.org/web/20250711032917im_/https://tg.telegramdownloader.net/7144/Slides2025-11.pdf?hash=fe92a7) [Лекция 0xC 2025-03-22 x86_64 a049dde221550c271768fc19ff0dee098e07d1091796b332cada285fe9d12b89](https://web.archive.org/web/20250711032926im_/https://tg.telegramdownloader.net/7145/Slides2025-12.pdf?hash=767e22) [Лекция 0xD 2025-03-29 Sploits + canary, DEP abd033bc3601f15e80bfc40203828d8d522180e107c367fe0a34467b33f0bb98](https://web.archive.org/web/20250711033013im_/https://tg.telegramdownloader.net/7147/Slides2025-13.pdf?hash=04a2a1) [Лекция 0xE 2025-03-29 ASLR, CFI, Capability-based addressing, Intel MPX. Куча. 2b20f2088b19262fa9354e7796c5cd416102b5a1fac89def90e5cdaff591a165](https://web.archive.org/web/20250711033001im_/https://tg.telegramdownloader.net/7148/Slides2025-14.pdf?hash=3ebdc7) [Лекция 0xF 2025-04-02 Куча, прерывания, x87 FPU b93ecd60eeac34c1313f32c3dd6ea3e2c7481a3a3284c60ba1fdc55cfc6d967c](https://web.archive.org/web/20250711033013im_/https://tg.telegramdownloader.net/7149/Slides2025-15.pdf?hash=dc09bd) [Лекция 0x10 2025-04-05 FPU, классификация соглашений вызова b8cb36d8cecf0eae6841626b88c006afddbe5a5816515f43dd6ed514efa2c6d5](https://web.archive.org/web/20250711033025im_/https://tg.telegramdownloader.net/7150/Slides2025-16.pdf?hash=504567) [Лекция 0x11 2025-04-09 SIMD. C tolchain. abad4345331e9f76ad9c9fa45b507675e79d33769f101861626d4c90433831a0](https://web.archive.org/web/20250711033040im_/https://tg.telegramdownloader.net/7151/Slides2025-17.pdf?hash=4a7d19) [Лекция 0x12 2025-04-12 Компоновка 625a96bfc9705c43ddfe16fdfc29aada6c9027ea129acec6781db004a1f7cb44](https://web.archive.org/web/20250711033425im_/https://tg.telegramdownloader.net/7152/Slides2025-18.pdf?hash=13537d) [Лекция 19 2025-04-16 Типы библиотек, PIC, Procedure Linkage Table, динамическая линковка ad8ad6222306cc2a7658ca0c4c211e7b23dd0c5e7ad29774146e3b01bfb6c240](https://web.archive.org/web/20250711033430im_/https://tg.telegramdownloader.net/7153/Slides2025-19.pdf?hash=a81450) [Лекция 20 2025-04-19 Вентили, SRAM, DRAM, суперячейки DRAM, verilog 54d1c70ace11a02e09dc3227ae75b237bbb0f545dfb043eec6ec0ab743bcae71](https://web.archive.org/web/20250711033446im_/https://tg.telegramdownloader.net/7154/Slides2025-20.pdf?hash=2a34c0) [Лекция 21 2025-04-23 Эмпирические именные законы, шины северного моста, IO, синхронизация доступа к памяти 85a0bb239caf1b818906ba942f928b064c052753c03315bf95a82832484188f1](https://web.archive.org/web/20250711033458im_/https://tg.telegramdownloader.net/7155/Slides2025-21.pdf?hash=f083fe) [Лекция 22 2025-04-26 HDD, SATA, IO, NVRAM, SSD, шины южного моста, локальность, иерархия памяти, кеши и их модели, 8bcbc473e1626e23072965fdef29a094aac5f206af9b781e26f2f021498be9d7](https://web.archive.org/web/20250711033516im_/https://tg.telegramdownloader.net/7156/Slides2025-22.pdf?hash=7ec724) [Лекция 23 2025-04-30 Запись в память, RISC, CISC, RISC-V, Intel64, режимы, загрузка ОС, модели адресации, кольца, APIC, syscallы, b3e81c1bf5365267da7b480447754e16cae4e43377a9f88e03c0281604b7274a](https://web.archive.org/web/20250711033527im_/https://tg.telegramdownloader.net/7157/Slides2025-23.pdf?hash=c2621b) [Итоги 06a03c43af7a5dfa0a17de6309cbdb54aeebe9577cb6db08f933cdfdcd679c91](https://web.archive.org/web/20250711033538im_/https://tg.telegramdownloader.net/7158/Tutor2025.pdf?hash=e4aede) (материалы занимательные, но нужного не нашлось, видимо из его перестали читать в последние годы) === Просьба добавить в tgstat https://tgstat.ru/add/channel ещё @introSRE (напоминаю - я сам добавит не могу из-за рекапчи).
Эх, вот вы тут все шарите, а я вообще полный нуль в программировании. Не делал ничего сложнее калькулятора на питоне и пустого сайта в html, даве не разобрался как CCS работает. Надеюсь на этой досе ке найду что то полезное и вкачусь наконец
>>27982 Достаточно начать с бесплатных сайтов и прочей мазни.
>>27983 Всмысле бесплатных сайтов?
>>27984 ну метанит можно какой нить или в этом роде
>>27982 > Надеюсь на этой доске найду что то полезное и вкачусь наконец Если ты уже придумал куда поконкретнее вкатиться, то рекомендую обратить внимание на вот это: >> Роадмапы для разработчиков, настоящих, прошлых и будущих https://roadmap.sh/roadmaps
Важно не как вкатиться в айти, а сделает ли это тебя счастливым.
>>27987 периодически разочаровываюсь но в целом да
>>27986 Думаю фронтенд осваивать, удаленная работа, и не сложно относительно всего остального, и надеюсь востребованно.
Хочу кое-что порекламировать. Можно? Пару лет назад узнал про OpenSCAD. Меня эта система очень заинтересовала. Возможно, заинтересует и вас. Она есть в репозиториях большинства Линукс-дистрибутивов. Что же в ней хорошего? Ты описываешь геометрию в виде текста, который затем компилируется в STL, который можно загнать в слайсер. Не всегда просто описать даже относительно простые вещи, но, в теории, модели можно хранить в контроле версий и отслеживать всё, что с ними происходит. На практике этому мешает отсутствие автоформата в родном редакторе кода. Ни в каких IDE, насколько мне известно, этот язык не поддерживается. Так, с произвольным форматированием, код быстро превращается в нечитаемую мешанину. Недавно нашёл решение: https://github.com/hugheaves/scadformat Категорически недооценённый маленький проект на ANTLR и Go, который приводит код к единому стилю. В релизах есть готовые бинарники. Пользуюсь больше недели. Пока одни положительные эмоции. В языке OpenSCAD есть модули. По смыслу это что-то вроде процедур. Например, ты можешь создать параметрическую трапецию и вызывать её многократно, поворачивая, извлекая из других форм. Надо ли говорить, что модули могут внутри вызывать другие модули. Вот проект, который я пока не пробовал, но наверняка скоро попробую. Это библиотека для упрощения создания сложных форм на OpenSCAD: https://github.com/BelfrySCAD/BOSL2 Краткая ознакомительная статья об OpenSCAD: https://eax.me/openscad/ Шпаргалка: https://openscad.org/cheatsheet/ Официальная документация: https://openscad.org/documentation.html Есть викиучебник, частично-переведённый на русский язык. А что вы думаете об этом инструменте кодирования форм реального мира?
>>27992 >А что вы думаете об этом инструменте кодирования форм реального мира? Пользуюсь изредка для изготовления деталек для дома. Если есть базовые знания линейки и программирования, то, пожалуй, это CAD с одним из самых низких порогов вхождения. Сам подход мне нравится больше, чем WYSIWYG редакторы или графические ЯП типо нод в Блендере. Из минусов: 1) Когда берешь разность и поверхности совпадают в превью получается пикрил, приходится всегда накидывать длины на негативные объемы. 2) После рендера, можно померить что вышло - но если опять-таки бралась разность, то Measure Distance/Angle отказываются работать. 3) Язык несколько безногий - но, кстати, в июльском релизе добавили наконец-то ассоциативные массивы, что радует.
Смотрите на какую прелесть наткнулся, когда искал книгу по C++: https://gamehacking.academy/assets/GameHackingAcademy.pdf Не очень понятно для какой аудитории она, ибо кому нужно разжёвывание азов "вот это Visual Studio, а вот это процессор в системном блоке" - те просто не целевая аудитория. Также там используется нестандартная терминология, напр. хук через сплайсинг назван code cave, хотя на самом деле code cave - это место где хранить свой код, а хук - это хук. Но всё же весьма познавательно. Напоминает рисование совы - на бумаге выглядит просто, а как программист понимаешь, что это работать не будет и что за каждой малейшей операцией стоят сутки реверсинга и trial-and-error, которые, разумеется, в тексте не упомянуты, я что есть тысячи способов реализовать каждый примитив, и угадать, как руководство предлагает - маловероятно.
https://0x0.st/KAtO.pdf/Small_Memory_Software.pdf
>>28035 Ультрабазированная книжка (я пока пролистал лишь небольшую часть). Некоторые советы там трудновыполнимы.
У меня вот уже джва года сломан qbittorrent. Вот просто вообще ничего не качается: нет соединения с трекером, и всё тут. No route to host [sock_read]. Разумеется, маршрут есть, как и через curl всё соединяется, как и через aria2c, но мне хотелось бы починить qbittorrent. На вайршарке почти пусто. Кончилось тем, что я скачал исходники обеих, сделал Debug-сборки, запустил под отладчиком... Тут чёрт ногу сломит. 1. Сначала оказалось, не собирается против современной libtorrent из репозитория. Пришлось починить. Потом оказалось, что не прикручено логгирование. Совсем: настройки и параметры командной строки - это обман сплошной, логи самой libtorrent-rasterbar они не содержат, а ведь это главные логи. Пришлось прикрутить. https://paste.debian.net/1398659/ Не пойму, как можно было вообще разрабатывать qbittorrent без этой базовой функциональности. 2. Дальше начался форменный ужас. Изначально (до того, как залез в исходники) на вайршарке вообще не видно соединения к трекерам. Только на lo (loopback-интерфейс) виден одинокий ICMP, что нет пути до IP трекера. Изначальна гипотеза была, что наговнокодили и стучится на тот же интерфейс, на котором DNS-сервер висит (у меня dnscrypt-proxy), даже если в настройках сказано, через какой всю активность вести. Я запихнул в URL IP-адрес вместо домена - тот же результат. Потом я подумал, что стучится через тот же, на котором DNS, использованный для проверки наличия инета. Оказалось всё это не так - при отладке локальный IP-адрес сокета какой надо вылезает (физического адаптера), я даже печать в прямо в ASIO прикрутил: https://paste.debian.net/1398662/ Connect, как оказалось, проходит, но это дерьмо ещё чтение после него делает. Асинхронно, без обработчика, хрен достанешь, где сискол делается через отладчик. 3. Из-за грёбанной полной асинхронности (дерьмо не напрямую дёргает сисколы, а сериализует их в события, которые записывает в очередь, которые event loop в потоках по одному обрабатывает) под отладчиком хрен дотянешься до системного вызова чтения - программа постоянно в очередь пихает бесполезные события по таймеру. 4. попробовал отключить асинхронность флагами сборки ... она неотключаема. Ты можешь отключить epoll или kqueue, но аснхронность отключить - не предусмотрено в принципе, всё так или иначе пойдёт через очередь событий. 5. При этом в libtorrent-rastebar разработчик (более 20 лет эту либу разрабатывает, и основной автор новых стандартов на протокол) вместо того, чтобы не выпендриваться и использовать libcurl всё сделал на asio ... Вот логи: https://paste.debian.net/1398664/ Почему у других качается - не знаю. Видмо у меня очень нестандартная конфигурация. Однако сообщу - в dmesg нет сообщений о нарушениях, да и кастомно-собранный qbittorrent не может подпадать под политику для системно-установленного, там в apparmor полные пути требуются, да и профиль для qbittorrent попросту отсутствует. Мои силы, навыки и возможности компа (что libtorrent, что qbitorrent собираются довольно долго на моём железе и вгоняют его в своп, всё из-за бусто-дебилов (всегда знал, что за использование boost нужно десять лет без права переписки давать, так как это говно мало того что гигантское, так ещё и хуже аналогов, не претендующих на "сейчас мы запилим свою солянку из велосипедов"), поехавших на метапрограммировании и header-only, то есть в каждую единицу трансляции инклюдится целиком ASIO вместе с оставшимся бустом, нет бы хоть в модули всё загнать и выкинуть всё, что есть в C++26) по отладке этого говна почти исчерпаны, запрашиваю авиаподдержку.
https://www.gabzhong.dev/simd_asm_code_visualization/ Ссылку не найдёте, эта штука просто описана в статье (его диплом), а URL на неё был вообще угадан исходя из того, что в аккаунте на гитхабе автора нашёлся репозиторий проекта, в котором есть ветка gh-pages.
https://www.officedaytime.com/tips/simd.html
https://github.com/FFmpeg/asm-lessons
https://cs0330-fall2024.github.io/
https://github.com/swojtasiak/fcml-lib
https://probml.github.io/pml-book/
https://www.cs.toronto.edu/~bonner/courses/2022s/csc2547/
https://randomascii.wordpress.com/
https://github.com/dendibakh/perf-ninja + https://github.com/dendibakh/perf-book
https://people.duke.edu/~ng46/meteorites/nc-meteorites/DIGITAL%20MECHANICS%20Fredkin.pdf
https://writings.stephenwolfram.com/2023/08/remembering-the-improbable-life-of-ed-fredkin-1934-2023-and-his-world-of-ideas-and-stories/
>>28054 Зацените, пытаюсь пилить что-то своё. Дело было вечером, студенту делать нечего. Работает почти круглосуточно, лишь иногда отрубаясь на обслуживание пк https://test-chat-brn.cloudpub.ru/
>>28056 Онлайна практически нет, за редким исключением нашедших ссылку чуваков, но я надеюсь увижу, ибо я кое как подкрутил, чтобы header мигал когда приходит СМС
>>28056 Err 503/
https://branchfree.org/
https://www.mycpu.org/
https://extremelearning.com.au/
https://bitbanksoftware.blogspot.com/
https://davejingtian.org/
https://userpages.cs.umbc.edu/jtang/cs411.s24/lectures/
По-видимому это один из самых офигенных наборов лекций, которые я на данный момент видел.
https://arxiv.org/html/2505.04896v1
https://www.lighterra.com/papers/modernmicroprocessors/ (это другой Паттерсон, не тот, что книгу написал)
https://dl.acm.org/doi/pdf/10.1145/3357375 Интересно, а что если ... CGRA, одно горячее ядро на высокой частоте, на нём компилятор по типу transmeta, который динамически компилит произвольную ISA в uops и раскидывает их по execution unitам. uopы пакуются в пакеты и рассылаются по исполнительным блокам по сети на кристалле топологи "звезда". Сеть работает на промежуточной частоте, блоки - на низкой, чтобы поменьше грелись. Блоки могут быть в том числе кешем. Между блоками - умные муксы с регистрами, которые принимают пакеты. В каждом пакете есть адрес мукса и данные, сеть рассылает по адресу. Без необходимости пакеты на мукс не рассылаются, и чип работает как систолический массив. Или наоборот, пакеты рассылаются, и чип работает как либо многоядерный out-of-order процессор на любой ISA, либо как целый SMP-процессор, либо что угодно промежуточное. Низкая частота блоков даёт низкое энергопотребление основной вычислительной сети, софтовая реализация декодинга и планирования позволяет экономить на площади на кристалле и тепловыделении, которые присущи аппаратной реализациям ILP, OoO и спекулятивного исполнения, и позволяет гибко управлять планированием, оптимизируя его под задачи и устраняя баги вроде Spectre, и декодировать множество разных ISA, в том числе кастомных и оптимизированных под задачу.
https://www.realworldtech.com/crusoe-exposed/
ОП, видимо, так и не вернулся. Где-то через месяц ещё что-нибудь порешаю с перекатом тогда.