Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
21.05.2018, 16:15
|
|||
|---|---|---|---|
|
|||
Архитектура вычислительных систем |
|||
|
#18+
Современная концепция архитектуры компьютеров сформировалась в середине прошлого века и с тех пор применяется практически повсеместно. Действительно, сейчас считается само собой разумеющимся, что любая вычислительная система - это ни что иное, как комбинация активного вычислительного модуля (процессора, контроллера) и пассивной памяти, в которой обычно в одной куче навалены и программы и данные. К этому нерушимому единству контролера и памяти добавляются различные внешние устройства, с помощью которых система общается с внешним миром. По такому принципу сегодня устроено практически все - от контролера кофеварки до системы управления космическими кораблями. Подобная архитектура кажется абсолютно естественной и даже трудно помыслить, что она могла бы быть совершенно другой. Однако, если вдуматься, становится понятно, что это - самая противоестественная архитектура, какую только можно было придумать. Например, почему процессор должен быть именно один? Собственно, очень быстро человечество пришло к тому, что он и не должен быть один - стали появляться системы с несколькими процессорами. Однако, тут и начались проблемы. Дело в том, что эта архитектура принципиально однопоточная - один процессор - одна память. Попытки сначала запустить несколько потоков на одном процессоре, а потом еще и на нескольких процессорах одновременно, но с общей памятью, быстро стали приводить к сильному усложнению всей вычислительной системы - и железа и программного обеспечения - тут и механизмы переключения потоков и процессов, и необходимость обеспечения согласованного доступа к общей памяти и другим ресурсам. Однако, никто и не подумал, что основная проблема здесь именно в принципиальном ограничении архитектуры. Но сложившаяся концепция к тому времени уже завладела умами и ломать ее никто не решился. На мой взгляд, большинство описанных могут быть решены созданием новой архитектуры вычислительной системы, изначально параллельной. Набросок такой архитектуры я сейчас и покажу. Главным элементом новой системы является вычислительная матрица - многомерная решетка, состоящая из огромного количества, десятков и сотен миллионов, соединенных друг с другом примитивных элементов. Каждый из этих элементов состоит из двух частей: элементарной ячейки памяти, способной хранить одно число и элементарного логического модуля (сумматора, мультипликатора, инвертора и т.д.). Каждый примитивный элемент может читать число из ячейки памяти соседних элементов - эти числа являются входами элемента. Один из входов - управляющий, другие - входы данных. На каждом шаге элемент может выполнить одно из двух действий в зависимости от состояния управляющего входа - он может либо выполнить свою логическую операцию над операндами, полученными с входов данных и сохранить результат в своей ячейке памяти. Либо может ничего не делать. Программа для такой вычислительной системы представляет состоит из нескольких частей. Во первых она задает конфигурацию подграфа вычислительной матрицы, требуемой для выполнения программы. Во вторых - начальные значения ячейка памяти всех примитивных элементов выбранного подграфа. В третьих - для каждой ячейки задает внешние условия модификации - например, для конкретной выбранной ячейки может быть указано, что ей следует присвоить нулевое значение, как только она достигнет определенного значения. При загрузке программы в матрицу загрузчик должен будет найти изоморфный требуемому программой графу свободный подграф матрицы, проинициализировать значения элементов и запустить подграф на выполнение. Легко видеть, что такая система изначально параллельна - даже само понятие шага программы для нее не настолько очевидно, как для традиционной архитектуры. Кроме того, понятие потока исполнения для нее бессмысленно - появляется новое понятие активного подграфа матрицы, ассоциированного с программой. А раз нет никаких потоков и процессов, то нет и проблемы синхронизации и других проблем многопоточности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 16:26
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
arkashashevА раз нет никаких потоков и процессов, то нет и проблемы синхронизации и других проблем многопоточности. Осталось где-то взять распараллеливающиеся алгоритмы. Большинство используемых алгоритмов однопоточны, хотя бы частично, поэтому требуют синхронизации и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 16:30
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Я к тому что проблемы с синхронизацией возникают не из-за особенностей устройства процов, а из-за особенностей решаемых задач, т.е. алгоритм задачи требует синхронизации, а не проц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 17:42
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
arkashashevА раз нет никаких потоков и процессов, то нет и проблемы синхронизации и других проблем многопоточности. «Проблема многопоточности» никак не связана именно с компьютерами. Эта проблема окружает нас везде и повсюду. Попытки устранить эту «проблему» в корне, типа полностью сменив архитектуру, подход и прочие галлюциногенные идеи, всегда меня смешили. Решать надо саму задачу, а не бороться с ветряными мельницами. arkashashevВо первых она задает конфигурацию подграфа arkashashevначальные значения ячейка памяти всех примитивных элементов arkashashevдля каждой ячейки задает внешние условия модификации arkashashevзагрузчик должен будет найти изоморфный требуемому программой графу свободный подграф матрицы Легко видеть, что все эти операции и процессы сами себя сделают за один такт. Нужно просто знать нужное заклинание, освящённый бубен и кровь младенца. А дальше, как-то всё само собой... arkashashevА раз нет никаких потоков и процессов, то нет и проблемы синхронизации и других проблем многопоточности. Навыдумывали всяких потоков и процессов. Вот дурачки )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 17:43
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Dima TЯ к тому что проблемы с синхронизацией возникают не из-за особенностей устройства процов, а из-за особенностей решаемых задач, т.е. алгоритм задачи требует синхронизации, а не проц. Нет, это дубовый проц и деревянная архитектура виноваты, задачи тут неупричом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 19:37
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
hVostt, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 20:14
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
ViPRos, ох ё... 20% хоть сколько-нибудь полезной усвояемой инфы в расчёте на потребляемую площадь. Десктоп разработка имеет свои последствая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 20:15
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Или это специально так слабал, чтобы показать максимум? )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 20:20
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Вообще, идеальных универсальных визуальных средств для проектирования логики я не видел. Обычно под каждый процесс, если вообще требуется, нужен свой UI. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 20:29
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Смешались в кучу кони, люди ... (с) ТС про железо, а тут какие-то фото бизнес-логики. ViPRos, ваш интим с hVostt понятен только вам. Или расшифровывай или занимайтесь этим в другом месте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 20:45
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Dima T, никакой кучи ТС пишет про матрицу процессоров (корпус многоэтажный набитый станками) и граф работ (нормативный гант - проект), который надо скармливать матрице. Это обычное планирование производства. Так как компьютер можно рассматривать (и всегда рассматриваю) как цех по переработке мягкого ганта (только отношение предшествования) - программы, то все тут при чем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 21:03
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
ViPRosЭто обычное планирование производства. Я заметил схожесть, но ТС упустил значительный нюанс процессоростроения - условный переход. У тебя он есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 21:07
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Компьютерный мир и мир производства ТМЦ полностью совпадают, вплоть до структур и алгоритмов. Но, мало кто этого замечает и потому в производственном мире строят детские теории типа - JIT (ленивое исполнение), оптимальные сети дистрибьюции (могоуровневые кеши с хорошим попаданием), вплоть то дебильных веревок и барабанов (диспетчеров узких мест).,..., и т.д. фигни. Я решил, что надо этому положить конец и все достижения компьютерных наук сделать доступными в производстве ТМЦ. ТС (возможно не осознанно) открыл для себя обратный процесс (хоть этот подход и был выбран как базовый в свое время). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.05.2018, 21:13
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Dima T, Есть "обусловленные процессы" - они запускаются в зависимости от состояния контекста (состояние процессоров, предыдущих процессов серверов, прогнозируемых процессов клиентов,...). (Например, процесс переналадки станка зависит от состояния процессоров (наличие/отсутствие инструмента в нужной кондиции, оснастки, параметров станка и т.д.) этого процесса) Даже есть процессы "синглтоны" - это когда единственный экземпляр процесса обслуживает все запросы :) Т.е. полные аналоги. Дык почему бы не пользоваться? А то всякие деминги, голдраты, вумеки и другая шушера забил мозги производственникам фигней типа "бережливого производства" и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.05.2018, 07:42
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Многомерную вычислительную матрицу я бы предложил убрать из топика и вообще не обсуждать. В ней не больше смысла чем в эвристической машине старикашки Эдельвейса. А для позитивного примера взять биологические системы и искусственные НС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.05.2018, 07:47
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
arkashashevГлавным элементом новой системы является вычислительная матрица - многомерная решетка, состоящая из огромного количества, десятков и сотен миллионов, соединенных друг с другом примитивных элементов.Вы, случаем, не транспьютер изобрели? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.05.2018, 19:50
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Если еще упростить то будет похоже на клеточный автомат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.05.2018, 21:31
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
arkashashev, Вы просто промоделируйте предложенную схему - модель из нескольких тысяч/десятков тысяч элементов можно обсчитать на практически любом компьютере (возможно, не в реальном времени). Реализуйте несколько простых алгоритмов - а там и видно будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.05.2018, 21:43
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
вы упустили главное... arkashashevА раз нет никаких потоков и процессов, то нет и проблемы синхронизации и других проблем многопоточности. тут вопрос, а что же тогда такое программа, какие задачи она решает, конкретно и в каких условиях существует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2018, 07:55
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
Кулибины :) "— Можно взглянуть? — Помилуйте! За счастье... Он подвел нас к колесу, потом обвел кругом. Оказалось, что и спереди и сзади — колесо. — Вертится? — Должно бы, кажется, вертеться. Капризится будто... — Можно отнять запорку? — Презентов вынул палку — колесо не шелохнулось. — Капризится! — повторил он, — надо импет дать. Он обеими руками схватился за обод, несколько раз повернул его вверх и вниз и, наконец, с силой раскачал и пустил, — колесо завертелось. Несколько оборотов оно сделало довольно быстро и плавно, — -слышно было, однако ж, как внутри обода мешки с песком то напирают на перегородки, то отваливаются от них; потом начало вертеться тише, тише; послышался треск, скрип, и. наконец, колесо совсем остановилось. — Зацепочка, стало быть, — сконфуженно объяснил изобретатель и опять напрягся и размахал колесо. Но во второй раз повторилось то же самое. — Трения, может быть, в расчет не приняли? — И трение в расчете было... Что трение? Не от трения это, а так... Иной раз словно порадует, а потом вдруг... закапризничает, заупрямится — и шабаш. Кабы колесо из настоящего материалу было сделано, а то так, обрезки кой-какие”." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2018, 13:57
|
|||
|---|---|---|---|
Архитектура вычислительных систем |
|||
|
#18+
arkashashevСовременная концепция архитектуры компьютеров сформировалась в середине прошлого века и с тех пор применяется практически повсеместно. Действительно, сейчас считается само собой разумеющимся, что любая вычислительная система - это ни что иное, как комбинация активного вычислительного модуля (процессора, контроллера) и пассивной памяти, в которой обычно в одной куче навалены и программы и данные. К этому нерушимому единству контролера и памяти добавляются различные внешние устройства, с помощью которых система общается с внешним миром. По такому принципу сегодня устроено практически все - от контролера кофеварки до системы управления космическими кораблями. Подобная архитектура кажется абсолютно естественной и даже трудно помыслить, что она могла бы быть совершенно другой. Однако, если вдуматься, становится понятно, что это - самая противоестественная архитектура, какую только можно было придумать. Например, почему процессор должен быть именно один? Собственно, очень быстро человечество пришло к тому, что он и не должен быть один - стали появляться системы с несколькими процессорами. Однако, тут и начались проблемы. Дело в том, что эта архитектура принципиально однопоточная - один процессор - одна память. Попытки сначала запустить несколько потоков на одном процессоре, а потом еще и на нескольких процессорах одновременно, но с общей памятью, быстро стали приводить к сильному усложнению всей вычислительной системы - и железа и программного обеспечения - тут и механизмы переключения потоков и процессов, и необходимость обеспечения согласованного доступа к общей памяти и другим ресурсам. Однако, никто и не подумал, что основная проблема здесь именно в принципиальном ограничении архитектуры. Но сложившаяся концепция к тому времени уже завладела умами и ломать ее никто не решился. Так уже достаточно давно у современных компьютеров нет общей памяти для всех процессоров. То, что есть -- это такая фикция. Эмулятор. Отсюда и 1000 проблем оптимизации и распараллеливания. arkashashevНа мой взгляд, большинство описанных могут быть решены созданием новой архитектуры вычислительной системы, изначально параллельной. Набросок такой архитектуры я сейчас и покажу. Так было уже, 20 лет назад, транспьютеры назвалось... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=16&mobile=1&tid=1340106]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 12ms |
| total: | 280ms |

| 0 / 0 |
