Перейти к содержимому
Калькуляторы

Вопрос к сообществу NAG

40 минут назад, Rutel сказал:

Что думаете ?

Ровным счетом ничего:). Рад за Ваше кипение мысли! :) Обратитесь за думами и отзывами к профильным специалистам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Только что, frol13 сказал:

Ровным счетом ничего:). Рад за Ваше кипение мысли! :) Обратитесь за думами и отзывами к профильным специалистам.

Не думать это легко )))

Только в нашей стране таких специалистов нет, вот в этом проблема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 минуту назад, Rutel сказал:

Только в нашей стране таких специалистов нет, вот в этом проблема.

Мысли Ваши, проблемы Ваши, Вам и решать:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Только что, frol13 сказал:

Мысли Ваши, проблемы Ваши, Вам и решать:)

Да, я и решаю - сейчас общаюсь с китайскими "товарищами",

да и если подумать зачем "Российским" инженерам теоретические знания 

если последние 70 лет Российская электроника разрабатывается методом 

наклеивания этикетки поверх "буржуинских" микросхем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В 13.02.2021 в 01:48, Rutel сказал:

Вообще это описание вычислительной системы тип DataFlow

DataFlow вполне реализуется уже сейчас поверх существующей архитектуры, то же реактивное программирование.

 

Всё, что вы описали -- реализуемо (и практически используется) в языках высокого уровня уже сейчас. С накладными расходами (но куда без них? даже в вашей идеальной системе будет хотя бы конвертация среды и предел эффективной гранулярности). Есть возможность протестировать ваши гипотезы, проработать граф (всё будет намного сложнее) и продумать блокировку данных (без этого никак, вообще).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, ixi сказал:

DataFlow вполне реализуется уже сейчас поверх существующей архитектуры, то же реактивное программирование.

 

Всё, что вы описали -- реализуемо (и практически используется) в языках высокого уровня уже сейчас. С накладными расходами (но куда без них? даже в вашей идеальной системе будет хотя бы конвертация среды и предел эффективной гранулярности). Есть возможность протестировать ваши гипотезы, проработать граф (всё будет намного сложнее) и продумать блокировку данных (без этого никак, вообще).

Существующая архитектура (фон-неймана), позволяет "вычислять" математические модели, а значит : да может быть реализовано.

Но эффективность реализации будет желать много лучшего. (например можно 3D картинку обсчитывать используя счеты с костяшками, но как то не хочется).

(время энергию и тд требуется экономить).

 

В каких языках высокого уровня программа преобразуется в направленный граф?

 

Если у Вас есть возможность протестировать описываемое - буду очень рад (например создать компилятор из языка СИ в граф или в набор нитей ?  Rutel@Mail.ru)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, Rutel сказал:

Существующая архитектура (фон-неймана)

Млять, она шо, единственная? Гарвардской архитектуры уже не существует?
 

 

17 часов назад, Rutel сказал:

Если Ваш стиль общения попытаются оценить Ваши подчиненные или руководители ?

Стыдно не будет?

Они вместе со мной читают эту ветку. И веселятся тоже.

 

Вот сегодня по мотивам аэрозольных баллончиков (в этой ветке) один даже предложил бизнес-идею - закачивать в баллончики сжатый воздух где-нибудь в Америке, и продавать их здесь под торговой маркой "Воздух свободы".
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

35 минут назад, straus сказал:

Вот сегодня по мотивам аэрозольных баллончиков (в этой ветке) один даже предложил бизнес-идею - закачивать в баллончики сжатый воздух где-нибудь в Америке, и продавать их здесь под торговой маркой "Воздух свободы".

Опоздал.

https://yandex.ru/images/search?from=tabbar&text=Консервированный воздух

 

Вопрос о всеобщем счастье, а не о тех кто и так может купить билет на самолет ;-).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 часа назад, straus сказал:

Вот сегодня по мотивам аэрозольных баллончиков (в этой ветке) один даже предложил бизнес-идею - закачивать в баллончики сжатый воздух где-нибудь в Америке, и продавать их здесь под торговой маркой "Воздух свободы".

Слабовато. Предлагаю по теме дезодорант Date Flow для продажи в Австралии.:) Ну и оформить надо его должным образом.:)

 

2 часа назад, sdy_moscow сказал:

Вопрос о всеобщем счастье,

Можно отдельную тему завести, потрепаться там. Только что по Культуре док фильм прошёл, там эта тема затрагивалась. Говорят, самая точная с точки зрения психологов формулировка озвучена в старосветском фильме «Доживем до понедельника» : «Счастье-это когда тебя понимают». С этим туговато что-то как-то тут. По крайней мере в этой теме:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, frol13 сказал:

«Счастье-это когда тебя понимают». С этим туговато что-то как-то тут. По крайней мере в этой теме:)

Да вы фролите! :)
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

11 часов назад, straus сказал:

Млять, она шо, единственная? Гарвардской архитектуры уже не существует?
 

https://ru.wikipedia.org/wiki/Гарвардская_архитектура

"Идея, реализованная Эйкеном, заключалась в физическом разделении линий передачи команд и данных"

 

Для того что бы называться "другой архитектурой", как то маловато, хотя у "связистов" есть аналог 

4х проводная линия https://studfile.net/preview/5086423/page:18/, но они не назвали ее новой Архитектурой связи

Цитата

Они вместе со мной читают эту ветку. И веселятся тоже.

 


 

По поводу баллончиков - вы там аккуратнее, не все они одинаково полезны

C1vY_DyXEAI6H9m.jpg

 

Они тоже "ничего не думают" или еще есть чем, просто стесняются высказывать свое мнение по поводу описываемой сети передачи данных ?

Интеллект это "развиваемое" свойство мозга и развивается оно только в процессе решения (анализа) сложных задач.

Если каждый день делать одно и тоже, то развиваются только "обезьяньи" моторные навыки.

 

PS Если вы боитесь "санкций" или просто "стесняетесь" своего уровня IQ,

     то можете писать на анонимную и зашифрованную почту https://tutanota.com/ru/ ( longevitydefender@tutanota.com).

     Есть и такие люди, почему конкретно выбирают такой метод общения меня не волнует.

 

Изменено пользователем Rutel

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

15 часов назад, Rutel сказал:

В каких языках высокого уровня программа преобразуется в направленный граф? 

В самих языках -- не реализуется, хотя компиляторы графы строят и "магии" для оптимизаций там хватает.

Прочитайте всё же, что такое реактивное программирование -- как раз строится ваш граф (вручную, да). Расширяется микросервисами, которые также строят свой граф для выбора узла, где будут производиться вычисления, без лишних действий со стороны программиста.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

3 часа назад, ixi сказал:

В самих языках -- не реализуется, хотя компиляторы графы строят и "магии" для оптимизаций там хватает.

Прочитайте всё же, что такое реактивное программирование -- как раз строится ваш граф (вручную, да). Расширяется микросервисами, которые также строят свой граф для выбора узла, где будут производиться вычисления, без лишних действий со стороны программиста.

Реактивное программирование это не язык, скорее стиль программирования и не факт, что на уровне команд процессора от него что то останется.

По поводу магии компиляторов, да там много всякого, как самый простой пример - переставляются команды в пределах последовательности исполнения

так что бы они максимально хорошо заполняли вычислительный блоки поэтому и не взлетают процессоры VLIW (англ. very long instruction word — «очень длинная машинная команда»)

https://ru.wikipedia.org/wiki/VLIW

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Rutel Вспомнил я, какой "велосипед" мне напомнили ваши изобретения.

Никогда не сталкивали с такой вещицей как язык программирования FBD?

Если нет - почитайте и посмотрите реализации. Прямо ваши "идеи" украли :-).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

24 минуты назад, sdy_moscow сказал:

@Rutel Вспомнил я, какой "велосипед" мне напомнили ваши изобретения.

Никогда не сталкивали с такой вещицей как язык программирования FBD?

Если нет - почитайте и посмотрите реализации. Прямо ваши "идеи" украли :-).

Визуальное программирование, https://ru.wikipedia.org/wiki/LabVIEW, графическое проектирование FPGA

post-3963-0-74474000-1319572865.png

 

Таких подходов море. Пока еще никто не упрекнул в "пере-открытии" цифровых автоматов. ))

Да я "открыл" более общий вид цифрового автомата (обычный вариант является его частным случаем).

 

То что я открыл можно назвать аналогом векторного процессора для неструктурированного набора данных или команд (что касается процессора)

 

Вот скажите мне - сеть которую я "придумал", разве не является самой лучшей по совокупности пользовательских свойств.

Если интересно, могу описать следующий слой, там еще интересней - гарантированно отсутствует в современных сетевых решениях.  

Изменено пользователем Rutel

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

12 минут назад, Rutel сказал:

 

 

Вот скажите мне - сеть которую я "придумал", разве не является самой лучшей по совокупности пользовательских свойств.

Если интересно, могу описать следующий слой, там еще интересней - гарантированно отсутствует в современных сетевых решениях.  

 

Лучше скажите, как Вам мое открытие воздуха счастья.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

15 минут назад, sdy_moscow сказал:

Лучше скажите, как Вам мое открытие воздуха счастья.

"Велосипед" - закиси азота открыли очень давно : https://ru.wikipedia.org/wiki/Оксид_азота(I)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

3 часа назад, Rutel сказал:

Да я "открыл" более общий вид цифрового автомата (обычный вариант является его частным случаем).

Чем дальше, тем все чудесатее! (Льюис Кэрол "Алиса в стране чудес")

Надеюсь, Булева алгебра пока не переоткрыта? (Хотя про логику с тремя состояниями я читал еще в студентах.) Может их уже четыре? К известным "Да", "Нет", "не определено", добавлено "Черт знает что!/Весь кабздец".   

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

4 минуты назад, frol13 сказал:

Чем дальше, тем все чудесатее! (Льюис Кэрол "Алиса в стране чудес")

Надеюсь, Булева алгебра пока не переоткрыта? (Хотя про логику с тремя состояниями я читал еще в студентах.) Может их уже четыре? К известным "Да", "Нет", "не определено", добавлено "Черт знает что!/Весь кабздец".  

А как же женская логика?

да-нет

ни да ни нет

нет нет и не проси
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

15 часов назад, frol13 сказал:

 

Цитата

К известным "Да", "Нет", "не определено", добавлено

Добавлено - "еще не вычислено" (все равно 2 бита - нужно последнюю комбинацию использовать с пользой для дела)

Вот что такое типичный цифровой автомат (Мили или Мура неважно), это входы, выходы, логика и регистр состояния.

А если к этому добавить "не определено", добавить "расходование" данных  при вычислениях и добавить вычисления только при наличии данных (любое состояние кроме "еще не вычислено"),

то  цифровой автомат сильно изменится.

Если в базовом варианте необходимо каждый такт предоставлять полный набор данных это определяет  невозможность конвееризации в общем случае

(нельзя второй раз запустить ЦА до вычисления новых значений регистра состояния).

 

Наличие понятия "не определено" позволяет запускать вычисления с частичными данными.

Наличие понятия "еще не вычислено" останавливать вычисления в незаконченном состоянии (ожидать следующих данных) и выполнять конвейерную обработку

Наличие понятия "еще не вычислено" делает понятие "регистр состояния" расплывчатым - может изменяться состав переменных.

Наличие понятий "время", "еще не вычислено" и расходуемости данных позволяет разделять один цифровой автомат на несколько взаимодействующих автоматов

Наличие понятий "время", "еще не вычислено" и расходуемости данных позволяет объединять несколько взаимодействующих цифровых автоматов в один.

 

И что это дает на практике ?

Это "мостик" между цифровой логикой и программами для процессоров, позволяющий использовать весь математический аппарат из цифровой логики

для анализа и оптимизации программ и наоборот.

Вы замечали, что чем дальше во времени, там все больше размер одинаковых по функционалу программ.

Происходит это из-за отсутствия действенного механизма оптимизации структуры ПО (ну нет карт Карно для языка СИ),

вот и приходится включать весь написанный ранее "мусор" в новую программу.

Кроме того появится возможность разделить ПО на части по исполняемым функциям.

Есть часть программы исполняемая в 99% случаях, ее выделяем в отдельный модуль и только ее загружаем в оперативную память.

Все остальное загружаем только по наступлению этого самого "редкого" события.

Согласно закону подлости, эти последние 1% функций занимают 99% хоть как то исполняемого кода.

(90% исходного кода и вообще не исполняется - будет исключено на этапе оптимизации)

 

Ради интереса посмотрите - сколько занимает ваш браузер в памяти - и это только для просмотра преимущественно текстовых страничек.

 

Понятно что написанное это очень кратко и не полно, но думаю специалистов в теории программирования, компиляторов и тд среди вас нет.

Да и я сам не могу похвастаться супер глубокими знаниями в этих областях, хотя про устройство компиляторов, формальные грамматики многое другое имею представление.

 

 

Если я правильно понимаю, ничего "предосудительного" в описании нижнего уровня сети вы не нашли и полученный результат работоспособен

и он много лучше всего того что уже придумано в технике цифровой связи.

Про второй уровень сети рассказывать ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

21 час назад, Rutel сказал:

Реактивное программирование это не язык, скорее стиль программирования

Да, это парадигма программирования, практически полностью реализующая DataFlow. Доступна на куче языков, от плюсов до яваскрипта. Применима уже сейчас, не дожидаясь качественно нового железа. Вполне подходит, чтобы реализовать небольшую программу для оценки недостатков, тестирования и определения узких мест. У вас пропущены самые основы -- блокировки и сборщик мусора -- с вашим подходом они сильно усложнятся и как вы их собираетесь автоматизировать без потери производительности, я даже не представляю.

 

1 час назад, Rutel сказал:

Есть часть программы исполняемая в 99% случаях, ее выделяем в отдельный модуль и только ее загружаем в оперативную память. 

Это легко реализуемо сейчас вручную (а кое-где автоматически, ценой производительности). Проблема в том, что время программиста дороже, чем оперативка. Сделаете нужный (и 100% рабочий) препроцессор -- вас на руках носить будут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, ixi сказал:

 У вас пропущены самые основы -- блокировки

Блокировки, цитирую :

Цитата

Вычислительный процесс состоит из множества нитей, необходимо синхронизировать (выравнивать) скорость исполнения во всех нитях. В парадигме фон-неймана, без дополнительных и весьма неэффективных ухищрений, это невозможно по причине отсутствия понятия «нет данных». В новой парадигме в вычислениях участвуют не просто битовые последовательности, а символы которые кроме непосредственно значения имеют еще и тип. АЗУ при отсутствии требуемого «ключа», будет при чтении выдавать символ: «нет данных». Вычислительный процесс в каждом «ядре» идет независимо друг от друга, но в момент когда в ответ на запрос чтения приходит значение «нет данных», вычисления останавливается до момента пока не вернется другой тип символа. Таким образом скорость в конкретном «ядре» притормаживается, относительно всех остальных. Результат вычисления должен быть записан (если это необходимо) в локальное АЗУ, писать можно только в свою локальную часть АЗУ (иначе может случиться «клинч»). Размер АЗУ конечен и в какой то момент наступит переполнение, после которого необходимо ждать освобождения памяти соседними «ядрами» (они используют эти данные для вычисления своих вершин). Увеличение размера локального АЗУ позволяет выполнить большее число команд, подготовить больше данных для соседних «ядер». Возможность заранее вычислять еще не востребованные данные, является аналогом внеочередного исполнения, в разных «ядрах» вычислительный процесс может находиться на разных «слоях». Если результат вычисления вершины графа используется в нескольких вычислениях, то выгоднее к данным добавить счетчик и уменьшать его при каждом чтении и когда он станет равным нулю освободить ячейку АЗУ, а не занимать отдельные ячейки памяти.

Цитата

и сборщик мусора -- с вашим подходом они сильно усложнятся и как вы их собираетесь автоматизировать без потери производительности, я даже не представляю.

С мусором все реализуется полностью автоматически - данные полностью расходуются при исполнении кода.

Если какая то переменная не будет востребована в "будущих" вычислениях, она просто "израсходуется" в текущих вычислениях.

Иными словами, не востребованные  в дальнейшем переменные просто стираются автоматом (без каких то дополнительных усилий со стороны вычислительной системы).

Цитата

 

Это легко реализуемо сейчас вручную (а кое-где автоматически, ценой производительности). Проблема в том, что время программиста дороже, чем оперативка. Сделаете нужный (и 100% рабочий) препроцессор -- вас на руках носить будут.

В ручную много чего реализуется, главное научиться "тупыми" автоматами это реализовывать.

 

PS Про DataFlow для интерпретируемого языка (JAVA) звучит минимум смешно.

Изменено пользователем Rutel

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

14 минут назад, Rutel сказал:

Блокировки, цитирую : 

Блокировки в первую очередь -- это когда нескольким потребителям необходим может понадобиться одновременный доступ к одним и тем же данным. даже синхронизация при многопоточности -- заметные накладные расходы.

 

21 минуту назад, Rutel сказал:

Если какая то переменная не будет востребована в "будущих" вычислениях, она просто "израсходуется" в текущих вычислениях.

, после чего её необходимо удалить из памяти. Т.к. память у вас -- один большой объект (key/value) без компромисов, то чистка будет печальной

 

22 минуты назад, Rutel сказал:

В ручную много чего реализуется, главное научиться "тупыми" автоматами это реализовывать. 

Пока это не реализуется даже умными. Начните с этого, всё равно оно для вас необходимо.

 

P.S. давно уже использую в интерпретаторах, всё отлично. Сама идеология сильно упрощает код, а то, что гранулярность не слишком высокая -- вообще не проблема

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

18 минут назад, ixi сказал:

Блокировки в первую очередь -- это когда нескольким потребителям необходим может понадобиться одновременный доступ к одним и тем же данным. даже синхронизация при многопоточности -- заметные накладные расходы.

Такой ситуации в описываемой парадигме не может быть в принципе.

Здесь нет просто данных, это всегда объект.

18 минут назад, ixi сказал:

 

, после чего её необходимо удалить из памяти. Т.к. память у вас -- один большой объект (key/value) без компромисов, то чистка будет печальной

Здесь нет памяти в сегодняшнем ее виде, это просто буфер для хранения объекта целиком и в момент вычисления он из нее целиком считывается (и считается стертым) и потом возвращается с уже обновленными 

данными и каких то отдельных действий по "очистке" производить ненужно.

Более того доступ в память за отдельными данными никогда не осуществляется (только коллективный)

18 минут назад, ixi сказал:

 

Пока это не реализуется даже умными. Начните с этого, всё равно оно для вас необходимо.

Ум сам по себе еще не гарантия успеха, если обставил задачу "неудачными" ограничениями, то никакой ум не поможет.

Вот как пример : Как люди представляли себе полеты.

Крылья, ковер самолет, карлик колдун, дракон или большая птица.

Вот ничего из того что перечислил не реализовано и не может быть реализовано современными средствами.

Вот Вам картинка демонстрирующая инерцию человеческого мышления (процесс "придумывания" автомобиля) :

0_73ba2_c555e0f2_XXXL.jpg

Да, убрали лошадей и вожжи доработали для управления передними колесами.

Сегодня смотрится смешно.

 

18 минут назад, ixi сказал:

 

P.S. давно уже использую в интерпретаторах, всё отлично. Сама идеология сильно упрощает код, а то, что гранулярность не слишком высокая -- вообще не проблема

Интерпретатор, это какое то странная перверсия - зачем, после создания вычислительной машины, еще раз эмуллировать другую машину ?

Нет, когда вы создаете программируемый калькулятор, что то типа электронных таблиц, тут все понятно, но никакого отношения к высокоскоростным вычислениям 

интерпретатор не имеет.

 

Вы согласны, что любую современную программу можно превратить в граф, оптимизировать и исполнить максимально быстро

(достичь теоретического предела исполнения данного конкретного кода) и все это с вычислительными ядрами микроскопического размера (объем затрачиваемой логики) ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

17 часов назад, Rutel сказал:

Здесь нет просто данных, это всегда объект. 

И взаимодействует он с множеством объектов в одно время, и взаимодействий могут быть/не быть параллельными и быть/не быть долгими.

 

18 часов назад, Rutel сказал:

Здесь нет памяти в сегодняшнем ее виде, это просто буфер для хранения объекта целиком

И что-то железное (некие ячейки памяти?) для хранения 100500 буферов больших размеров, которые периодически удаляются, оставляя вам все прелести фрагментации.

 

18 часов назад, Rutel сказал:

Ум сам по себе еще не гарантия успеха, если обставил задачу "неудачными" ограничениями, то никакой ум не поможет.

Есть абстрактный код, надо построить для него граф. Никаких ограничений.

Ни ваше железо, ни мегакомпилятор, способный строить полный граф, сами по себе не появится. В любом случае их придётся делать на существующей основе.

 

18 часов назад, Rutel сказал:

процесс "придумывания" автомобиля

Вы же, как настоящий Стратег, предлагаете забить на эту самодвижущуюся повозку и делать сразу мобиль на антигравах, игнорируя все промежуточные этапы. Круто, конечно, но...

 

18 часов назад, Rutel сказал:

никакого отношения к высокоскоростным вычислениям интерпретатор не имеет.

В последнее время даже у интерпретаторов есть JIT-компиляция, и по скорости они во многих ситуация проигрывают совсем немного. В моём случае удобства перевешивают.

 

18 часов назад, Rutel сказал:

Вы согласны, что любую современную программу можно превратить в граф, оптимизировать и исполнить максимально быстро 

Нарисуйте блок-схему, тоже ведь граф получится? Только не сильно помогает. А секрет построения нужного вам графа для абстрактной, не сформированной специальном образом, программы пока неизвестен.

(и да, теоретический предел неффективен из-за накладных расходов)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.