Ремесло программиста

Объявление

форум на движке phpBB доступен для тестирования
www.strategia.space
www.strategia.space/forum/
по предложению Лиса - канал на Matrix - #remdev:matrix.org

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Ремесло программиста » ПЛИС и "Плисоводы" » Разработка архитектуры


Разработка архитектуры

Сообщений 1 страница 27 из 27

1

Прошу прощения за внезапность... а разработку новой архитектуры вычислительных устройств, Вы часом в своей концепции не забыли упомянуть? Или все дело низводится просто до местной локализации существующих IDE?

2

flamehowk написал(а):

разработку новой архитектуры вычислительных устройств

- Да, это хорошее замечание, но изобретателей-разработчиков по железу среди программистов трудно искать. Да ещё и "Чубайсы" прихватизировали и отделили от народа надлежащие средства производства. Придётся начинать с "гаража"... И да: программист-электронщик в одном лице - это именно то, что необходимо для прогресса.

3

А смысл новой архитектуры? Чем текущая не устраивает?

4

Сандро написал(а):

но изобретателей-разработчиков по железу среди программистов трудно искать

Зачем искать, ими нужно становиться... не так велика задача - новая архитектура, в конечном счете - это лишь логические схемы и система машинных команд на них да передачи данных. У меня есть кое-какие разработки.
Что касабельно "делания", то здесь есть ПЛИСы, на них можно отлаживать основные концепты, а потом у нас таки осталось еще пару заводов, которые могут выпускать недорогие чипы по устаревшим технологиям, я уже не говорю, что добрые китайцы готовы сделать любой чип по любой технологии... Ну и заводик по производству плат тоже имеется. В общем - для начала все что нужно кроме желания уже есть ;)

atezo-replica написал(а):

А смысл новой архитектуры? Чем текущая не устраивает?

Текущая - это бутылочное горлышко, не говоря уже о других "преимуществах". Скажем так - это узкая грунтовая дорога-одноколейка, размытая дождями и разъезженная транспортом до ям по пояс, которая была просто накатана древними как мир возами с воловьими упряжками, а мы по этой дороге сейчас пытаемся многополосный поток 50 тонных фур пустить в две стороны... Надеюсь аналогия понятна.

5

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

6

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

7

Если забыли давайте впишем в манифест.
п. 3.4. Разработка новой архитектуры вычислительных устройств

8

на сколько я помню сейчас будет дешевле разработать нефтяное месторождение чем воплотить в жизнь промышленно свою архитектуру

9

Яр
Посмотрите мультиклет. Изготовление опытной партии им обошлось в 10 000 долларов*.  У нас корпусировали и опытная партия стала серийной.
В партии где-то 1500 штук процессоров. Себестоимость одного процессора 6,6 долларов. Продают они их в 3 раза дорожи 600 руб. Умножим на 4 шатла в год.
В год оборот мультиклет выходит где-то 120 тысяч долларов. Они эту цифру где-то раскрывали у них было больше порядка 400 тысяч .
Скорее всего живут на грантах иначе бы обанкротились, а сам процессор типо фан для души.

* Цена маленькая за счёт отказа от покупки фирменных элементов, открытые бесплатные. Отсутствия проверки документации на совместимость с фабрикой. Большие риски, но так все российский дизайн-центры действуют. Ибо рынок конкуренция.

Месторождение стоит дорожи на порядки.

10

Павиа написал(а):

Себестоимость одного процессора 6,6 долларов. Продают они их в 3 раза дорожи 600 руб.

Не понятно за сколько продают) 6,5 баксов это 400р, 600р это в полтора раза дороже. Или продают по 3*600=1800р? Или по 1200р?

11

600 р. Это до  кризиса. Сейчас дорожи.

12

flamehowk написал(а):

Текущая - это бутылочное горлышко ... Надеюсь аналогия понятна

Обоснуй без аналогий пожалуйста. Где конкретно бутылочное горлышко.

13

Павиа, мультиклет это здорово, но я не думаю что они их печатают в гараже в подмосковье. Не уверен но в РФ пока что и на 45нм не печатают. Все китай

14

Сандро написал(а):

- Не "новая/старая", а непрерывно обновляющаяся архитектура и её прог-обеспечение.

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

Сандро написал(а):

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

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

Яр написал(а):

на сколько я помню сейчас будет дешевле разработать нефтяное месторождение чем воплотить в жизнь промышленно свою архитектуру

А это Вы откуда помните? Из прошлой жизни? :)
Давайте глянем на объективную реальность. Как только майнеры врубились, что выгоднее будет реализовать майнинг на асиксах, их разработка и практическое воплощение в кремний и текстолит заняли не более полугода. Сейчас асиксы для майнинга УЖЕ делают по более тонким техпроцессам, нежели ЦПУ для персоналок.
Тах шта давайте без неподтвержденного скептицизма и необоснованных страхов... пажалуста :)

utkin написал(а):

Если забыли давайте впишем в манифест.

Это немножко зависит не от того - забыли ли или нет, а от того, что, собственно, собираемо делати. Ибо в данный момент сам манифест еще не позволяет понять сути вопроса даже в приближении. И хоть я и специалист в написании манифестов и прочих идеологических штук, но мне даже как не специалисту до конца не понятно. Возникает впечатление, что есть какое-то невысказанное желание, а то ли потребность, но, как говорится - на языке вертится, а сказать не могу. Так что тут нужно сначала более четко определиться с чем боремся и куда идем, а уж потом хорошо подумать и решать как, что, где и когда...

atezo-replica написал(а):

Обоснуй без аналогий пожалуйста. Где конкретно бутылочное горлышко.

Понял, ща обосную. Вычислительные блоки являются узким местом во всем вычислительном процессе. Подача данных и отбор результатов по скорости в разы превышает сам процесс их обработки математическими и логическими устройствами. Именно потому на процессоре гораздо больше места занимают кэши всех видов, чем сами расчетные блоки. Количество расчетных блоков тоже увеличивают именно по той причине, что они не справляются с поставленными задачами. В видеокартах вообще перешли на мульти-блочность по этим же соображениям. Само появление нескольких ядер - это результат именно этих пирогов. И это я еще не упоминал про внешнюю периферию, ибо связь между ЦПУ и ОЗУ, а так же другими устройствами - это бутылочное горло №2 во всем этом параде.
Конечно, я понимаю Ваше недоумение, но это именно потому, что Вам не с чем сравнить, а мне есть... ;) В моей архитектуре многие тысячи расчетных элементов и к ним ведут сотни дорог, так что там нет подобного узкого места. Но Вы пока не зацикливайтесь, в этом всем не обязательно разбираться.

15

flamehowk написал(а):

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

Тут на мой взгляд перепутаны причина и следствие. До сих пор не вижу бутылочного горлышка. Хотя против новых архитектур ничего не имею (только за), однако они должны быть конкурентноспособны.
Зацикливаться даже не думал. Думал может какая интересная идея есть.

flamehowk написал(а):

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

Майнерам тупо платят деньги. Не было бы заказчика, который платит - не было бы и майнеров. Мотивация тут другая.

Яр написал(а):

на сколько я помню сейчас будет дешевле разработать нефтяное месторождение чем воплотить в жизнь промышленно свою архитектуру

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

16

atezo-replica написал(а):

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

Хорошая статья с описанием различных архитектур GPU
https://code.msdn.microsoft.com/windows … e-45c11e6d

17

atezo-replica написал(а):

До сих пор не вижу бутылочного горлышка.

Плохо, что не видите.
Ладно, попробуем еще больше лупу взять.
На то, чтобы записать данные в кэш требуется несколько тактов. Чтобы подать их на регистры ЦПУ - и того меньше. А вот чтобы потом банальные 64 бита прошли банальный же сумматор, необходимо потратить пару-тройку сотен тактов процессорного времени. И это - просто сложение. И в этом процессоре таких сумматоров - от нескольких штук до пары десятков, ну может сейчас уже слегка больше, я последние данные не смотрел. Остальное место идет под другие виды расчетных устройств, каждое из которых является специализированным набором логических элементов, задействуемых только в случае, если нужна именно такая обработка данных. Все остальное время эти вычислительные устройства просто занимают место на кристалле.
Вы еще бутылочное горлышко не увидели?

atezo-replica написал(а):

Мотивация тут другая.

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

atezo-replica написал(а):

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

О! "Слова не мальчика - но мужа!" :)

18

flamehowk написал(а):

прошли банальный же сумматор, необходимо потратить пару-тройку сотен тактов процессорного времени.

Это вы про параллельный сумматор ничего не знаете. Все процессоры используют параллельный сумматор и суммирование в нём занимает 1 такт.

flamehowk написал(а):

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

Да нет ещё они могут выделять тепло и не выделять тепло. А современные процессоры ограничены в производительности в основном тепловыделением.

19

flamehowk написал(а):

Вы еще бутылочное горлышко не увидели?

Такие рассуждения противоречат тому, что мне известно, и основываясь на этом делаю вывод о ложности гипотезы. Ошибка тут:

flamehowk написал(а):

чтобы потом банальные 64 бита прошли банальный же сумматор, необходимо потратить пару-тройку сотен тактов процессорного времени

20

atezo-replica написал(а):

Ошибка тут:

Павиа написал(а):

Это вы про параллельный сумматор ничего не знаете. Все процессоры используют параллельный сумматор и суммирование в нём занимает 1 такт.

Это Вы говорите парню, который разрабатывает собственные архитектуры? :) Ну ладно... тогда только один вопрос: как "параллельный сумматор", который складывает два числа за 1 такт, знает прибавлять ли бит переноса в каждый из последующих 31-63 старших разрядов? Например, у нас есть два числа 01 и 11, при сложении в первом такте мы получим 10 + перенос бита 1 в старший разряд, и по окончании у нас должно получиться 100... как Ваш сумматор знает - будет там этот бит или нет еще до того, как произойдет сам факт сложения битов младшего порядка? Может я и вправду чего-то не знаю, научите "секретам" современной техники? Мож я безнадежно застрял в прошлом? А ну-ка просветите...

21

flamehowk

flamehowk написал(а):

как Ваш сумматор знает - будет там этот бит или нет еще до того, как произойдет сам факт сложения битов младшего порядка?

Придельная частота кремния вам известна? Нет, подскажу 300 ГГц (и это не придел  если не путаю у арсенид-галия 500 ГГц). А частота процессора 3-5 ГГц. Чувствуете разницу в 100 раз? 

Но это только одна из фишек.  Есть схема ускоренного переноса. Эта фишка параллельности. Есть у нас два рабочих они не могут выполнить работу гарантированно в 2 раза быстрее. Но если у вас есть 4 рабочих, то они удивительным образом могут это сделать. А для ускорения в 4 раза вам потребуется 16 параллельных рабочих.

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

Данная разработка лежит в основе:
https://ru.wikipedia.org/wiki/Схема_ускоренного_переноса

Благодаря тому что мы можем одновременно(параллельно) выполнять AND и OR от 4 входов.  мы можем сократить число уровней логических элементов в сумматоре.
Тем самым ещё его ускорить.

Как строиться ускоренный перенос? Я уже говорил о вариантах. Вот составляем табличку с вариантами. После оптимизируем схему.
Аналогично для 16 разрядов. Для 64 разрядов закономерность просто угадывается.

22

Может я и вправду чего-то не знаю, научите "секретам" современной техники? Мож я безнадежно застрял в прошлом? А ну-ка просветите...

Есть еще транспьютеры.

23

- Ай да Павиа, ай да молодец! Хотя могу дать маленький совет насчёт "пре" и "при". К чёрту правила, мы по своему щас скумекаем. Так быстрее запомнить. )))
Пристройка, прикладная наука, - это то, что "прилагается", (якобы в довесок), но превыше всего, пререкания, превосходительство, - это уже когда чего-то сверх нормы, то бишь, "пере"гружено, а потому "Предельная частота", как и "это не предел"... )))
- Всех благ!...

24

Павиа написал(а):

Чувствуете разницу в 100 раз?

Я то ее чувствую, да Вы боюсь - нет. А все патамушта Вы не совсем понимаете с какого боку у кремния предельная частота авто-колебаний, и при чем-тут ТАКТОВАЯ частота процессора. Но я позволю себе не углубляться, так как походу Вам это не нужно.

Павиа написал(а):

Есть схема ускоренного переноса.

Ух, ты - не знал. Цикава штука. Не спорю, можно сказать, что "почти" да "чуть-чуть" не утерли мне нос... :) Да все же не утерли. Ща объясню почему.
для вычисления первого бита переноса нам нужен 1 однобитный сумматор = 5 логических вентилей.
для вычисления второго бита переноса нам нужно + 2 однобитных сумматора = 5 + 10  = 15 логических вентилей.
для третьего бита переноса 15 + 5*3 = 15 + 15 = 30
для четвертого 30 + 5*4 = 30 + 20 = 50.
для 64-го... (64*5)!
!!!
Как то помнится один царь уже отсыпал создателю первого прообраза шахмат по подобному принципу зерна...
А посему так никто не делает. Да, они разбивают все это на блоки, которые выстраивают в такие же последовательности, разве что уже не по 1 биту суммируют, а по 4 зараз. Но в результате никак не получается 1 такт!!! Ну никак!
Но это все мелочи... есть решение куда круче =).

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

В любом случае Вам благодарность за новое знание, я и вправду не знал о подобных ухищрениях, теперь буду знать :) С миру по нитке, как говорится - голому веревка :)

25

flamehowk написал(а):

А посему так никто не делает.


Здесь ссылка на приложение C, страница 17 (в документе это страница 663))

http://se.uploads.ru/t/VhWej.gif

Отредактировано ВежливыйЛис (2017-07-15 02:09:32)

26

"God" wouldn't be up this late.

27

flamehowk

flamehowk написал(а):

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

Конвейерная архитектура известна давным давно. Обратите внимание на вторую половину таблицы, которую привёл Лис, там где throughput.

flamehowk написал(а):

!!!Как то помнится один царь уже отсыпал создателю первого прообраза шахмат по подобному принципу зерна...А посему так никто не делает. Да, они разбивают все это на блоки, которые выстраивают в такие же последовательности, разве что уже не по 1 биту суммируют, а по 4 зараз. Но в результате никак не получается 1 такт!!! Ну никак!

И почему не получается? Показывайте расчёты, сейчас найдем ошибку.

Отредактировано Павиа (2017-07-15 06:52:11)


Вы здесь » Ремесло программиста » ПЛИС и "Плисоводы" » Разработка архитектуры