-
- Зачем все это Evgeny_CD(1 знак., 20.12.2022 23:17, ссылка)
- Диагноз - "Стекофилия" - argus98(20.12.2022 22:24)
- Телепатический диагноз? :) Я пока что просто стаскиваю инфу в кучу. Выводы я пока не публиковал. - Evgeny_CD(20.12.2022 22:46)
- Монография по теме. Филипп Купман мл. "Стековые компьютеры - новая
волна". teap0t(1 знак., 20.12.2022 18:22, ссылка)
- Вот жеж... Выспаться хотел, а тут интереснейшая книжка про фрактальное программирование. Впрочем, спасибо. - max(21.12.2022 00:11)
- Бегло посмотрел. Спасибо интересно. Жалко не скачать в FB2 (надо
поискать, мож найдётся чего) Но общий вывод - стековые машины
требуют аппаратной оптимизированной под их структуру реализации.
Софтовые - не более, чем "костыли" к нестековым хостам, и никаких
преференций при этом не несут, так - только платформа для
разработки Adept(179 знак., 20.12.2022 19:53)
- Кстати, да - у Тарасова был отдельный стек под плавучку. Тогда я
думал, что это связано с математическим сопроцессором (хоть он c
486 уже и монолитен с ядром), а тут новый взгляд на ситуацию: под
определённый функционал свой стек. PS: предлагаю монографию и всё
последующее перенести в "зачем всё это". - Dingo(21.12.2022 05:11)
- Ха, тут можно обобщить - сколько исполнительных, устройств, столько и стеков. - =AlexD=(21.12.2022 08:46)
- Множество стеков не проблема. Память работает блоками, кеширование
тоже. Если планировшик хороший, то мы заранее начинаем кешировать
стек будущей задачи, можно нескольких в случае условных ветвлений,
и переключение пройдет быстро. Evgeny_CD(290 знак., 20.12.2022 20:41)
- по сути, наверное, мультистековая машина - конвейерная структура
наподобие современных видеокарт, с соответсвующей потенциальной
поточной производительностью при обработке векторных данных :)) В
общем идея, опередившая своё время, и вероятно, повлиявшее на
архитектуру процессоров в целом и видеокарт, в частности. - Adept(20.12.2022 21:00)
- А если совокупить с идеей гипетрединга? Или как там у падауков
сделано: физически проц один, но у него есть несколько банков
регистров. И он поочерёдно переключает банки/стеки и выполняет по
одной команде в каждом банке. Тогда можно перекрыть время обращения
к стеку одного потока с выполнением команды в другом потоке. - LightElf(20.12.2022 22:23)
- Точнее, совокуплять надо с идеей спекулятивного исполнения. У задачи N данные готовы? Ок, ползем по ее коду. Кеш мисс? Пусть качает кеш, ищем задачу с закешированным стеком и переключаем на нее. - Evgeny_CD(20.12.2022 22:48)
- А можно просто забить на производительность. Идея симпатичная? Так
точно. "Не надо мипсы. У нас духовность!"™ :-) - SciFi(20.12.2022 22:28)
- Во-первых - это просто красиво ;-) - LightElf(21.12.2022 12:30)
- А если совокупить с идеей гипетрединга? Или как там у падауков
сделано: физически проц один, но у него есть несколько банков
регистров. И он поочерёдно переключает банки/стеки и выполняет по
одной команде в каждом банке. Тогда можно перекрыть время обращения
к стеку одного потока с выполнением команды в другом потоке. - LightElf(20.12.2022 22:23)
- по сути, наверное, мультистековая машина - конвейерная структура
наподобие современных видеокарт, с соответсвующей потенциальной
поточной производительностью при обработке векторных данных :)) В
общем идея, опередившая своё время, и вероятно, повлиявшее на
архитектуру процессоров в целом и видеокарт, в частности. - Adept(20.12.2022 21:00)
- Кстати, да - у Тарасова был отдельный стек под плавучку. Тогда я
думал, что это связано с математическим сопроцессором (хоть он c
486 уже и монолитен с ядром), а тут новый взгляд на ситуацию: под
определённый функционал свой стек. PS: предлагаю монографию и всё
последующее перенести в "зачем всё это". - Dingo(21.12.2022 05:11)
- Офигеть! Спасибо! - Evgeny_CD(20.12.2022 19:06)
- А зачем? Ну вот не понимаю я. Регистровые цпу научились делать ну
очень компактными, память тоже уже не считают по байтам. Тупо не
вижу для них ниши применения. - =AlexD=(20.12.2022 08:25)
- Помнишь историю, как мужик в глуши подметал ВПП лет 20 подряд? А
потом туда самолёт прилетел. Вот и тут пусть будет, авось
когда-нибудь пригодится. Или не пригодится, что вероятнее :-) - SciFi(20.12.2022 08:30)
- Тут ты прав, делать стековый на лампах будет сподручнее. - =AlexD=(20.12.2022 08:31)
- Сподручней на ПЛИС и не выёбываться. - Kpoк(20.12.2022 10:40)
- Когда
самолётприлетит, не будет у вас никаких плис. - =AlexD=(20.12.2022 10:59)- Я припас несколько штук. Но больше, чем ламп. - Kpoк(20.12.2022 12:15)
- Когда
- Сподручней на ПЛИС и не выёбываться. - Kpoк(20.12.2022 10:40)
- Тут ты прав, делать стековый на лампах будет сподручнее. - =AlexD=(20.12.2022 08:31)
- Помнишь историю, как мужик в глуши подметал ВПП лет 20 подряд? А
потом туда самолёт прилетел. Вот и тут пусть будет, авось
когда-нибудь пригодится. Или не пригодится, что вероятнее :-) - SciFi(20.12.2022 08:30)
- Проблема(одна из) для современных путей развития в том, что
стековая архитектура плохо уживается с кэшами. Хорошие статьи на
хабре-> . Про Forth отдельно: проще уж Си-исходник
компилировать в стековый код, чем вырастить школу программистов для
стековых языков. Для управления телескопом или запуска хоть чего-то
на голом железе - уместен, но следующий шаг обычно: "а давайте
напишем Си". Тут тогда встаёт вопрос, а не проще ли 8 или 16 RISC
втиснуть? Dingo(334 знак., 20.12.2022 05:31, ссылка, ссылка)
- с нуль-адресными (стековыми) машинами нужно мозги набекрень. Во
времена медленных ОЗУ (как раз, когда ФОРТ зарождался) работа со
стеком (читай регистрами) была на порядки быстрее работы с памятью,
но сейчас.... ну ХЗ, А так да очень интересная штука (кто в юности
не увлекался ФОРТом - не поймёт :)) Adept(810 знак., 20.12.2022 05:56)
- Не набекрень, но сильно в сторону от массовых парадигм. - Dingo(20.12.2022 12:59)
- Тарасов Илья (г. Ковров) во времена Pentium, Pentium-II написал
PM-Fort, работавший в защищённом режиме. Могу бинарник поискать,
вдруг выжил. Там работа с VESA, прерываниями была "из коробки". - Dingo(20.12.2022 06:14)
- спасибо. не стоит
метать бисерломать копья я не настолько спец по ФОРТу, чтобы углубляться в предметные дискуссии и изучать исходники. Просто озвучиваю свой опыт изучения ФОРТа. Там конечно и асм-вставки можно, и соответсвенно вообще, всё что угодно, при желании, но вот сам стандарт языка не даёт удобных инструментов для нелинейного программирования. Всё заточено исключительно под линейные последовательные алгоритмы и стековый обмен данными (и это тоже Adept(82 знак., 20.12.2022 13:02)
- спасибо. не стоит
- с нуль-адресными (стековыми) машинами нужно мозги набекрень. Во
времена медленных ОЗУ (как раз, когда ФОРТ зарождался) работа со
стеком (читай регистрами) была на порядки быстрее работы с памятью,
но сейчас.... ну ХЗ, А так да очень интересная штука (кто в юности
не увлекался ФОРТом - не поймёт :)) Adept(810 знак., 20.12.2022 05:56)
- FPGA для таких проциков Evgeny_CD(1 знак., 20.12.2022 03:33, ссылка)
- [microCore] - хорошая документация, активно пилится. В статье про J1 microCore использован как референс плотности кода. Evgeny_CD(1 знак., 20.12.2022 02:51, ссылка)
- [J1] - потрясает своей минималистичностью во всем. IP стек менее 8
Кбайт. Много форков. Evgeny_CD(1 знак., 20.12.2022 02:40, ссылка)
- [Swapforth] is a cross-platform 16- and 32-bit ANS Forth. Evgeny_CD(1 знак., 20.12.2022 03:24, ссылка)
- [forth-cpu] - развитие идей. Evgeny_CD(1 знак., 20.12.2022 02:56, ссылка)
- [J1a] is a simplified variant of the original J1. Evgeny_CD(2 знак., 20.12.2022 02:46, ссылка, ссылка)
- [Novix NC4016] - источник вдохновения авторов J1 Evgeny_CD(13 знак., 20.12.2022 02:43, ссылка, ссылка)
- Смутно помнится, что было (как минимум в проекте) сильно похожее
отечественное изделие, ЕМНИП, К1865ВМ1. А вот и фотка нагуглилась: LightElf(1 знак., 20.12.2022 14:38, ссылка)
- Кстати, там ссылки на отечественные Forth софткоры и решения на их основе. - Evgeny_CD(20.12.2022 20:13)
- Книга про этот процессор Evgeny_CD(1 знак., 20.12.2022 03:01, ссылка)
- Смутно помнится, что было (как минимум в проекте) сильно похожее
отечественное изделие, ЕМНИП, К1865ВМ1. А вот и фотка нагуглилась: LightElf(1 знак., 20.12.2022 14:38, ссылка)
- [ZPU] - старый очень интересный проект Evgeny_CD(1 знак., 20.12.2022 02:38, ссылка)