|
что-то новое ?, мультиклеточные процессоры |
|
|
|
Aug 24 2011, 08:46
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
прислали тут ссылку http://www.multiclet.com/index.php/ru/mult...ular-processors новое слово в процессоростроении ? я не до конца понял Цитата От фон-неймановской модели мультиклеточная архитектура отличается непосредственным указанием информационных связей между операциями и, соответственно, снятием требования упорядоченного размещения описаний операций в программе.
Эта неупорядоченность делает ненужными все те методы (суперскалярность, широкое командное слово, суперконвейер, предсказание переходов и т.п.), которые резко усложняли процессы проектирования процессора и инструментальных программных средств. почему им не нужен предсказатель переходов при конвейере. UPD. немного покурил доки, они немного лукавят, но с точки зрения программы он не нужен %)
--------------------
|
|
|
|
|
 |
Ответов
|
Apr 17 2012, 06:40
|
Профессионал
    
Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118

|
Сравним обычную, и "мультиклеточную" (как понял) реализацию выполнения a=b+c; все данные - в регистрах.
Обычная 3х-операндная архитектура: одна команда, один такт, порядковый номер команды задается неявно - через адрес команды в памяти команд, в команде(32 разряда) указывается только код операции и номера трех регистров-операндов: номер==адрес: (add a,b,c)
"Мультиклеточная" архитектура: a=b+c при компиляции разбивается на 4 микрокоманды(64 разряда каждая), 3 такта: read b; read c; add; write a; микрокоманды кодируется с явным указанием своих порядковых номеров (физический адрес команды уже не несет никакой информации) и номеров команд-источников: адрес0: (номер3, write a ) адрес1: (номер0, read b ) адрес2: (номер2, add номер0 номер1) адрес3: (номер1, read c)
микрокоманды и операнды ассоциативно извлекаются по явно указанным в полях номерам, и исполняются. В итоге "мультиклеточная" архитектура многократно проигрывает обычной, по тактам, объему кода, площади кристалла. Если я неправильно понял "мультиклеточную" архитектуру - объясните мне понятно. (По поводу клока - он есть, см "даташит").
Сообщение отредактировал Leka - Apr 17 2012, 06:41
|
|
|
|
|
Apr 18 2012, 06:14
|

МедвеД Инженер I
   
Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951

|
Цитата(Leka @ Apr 17 2012, 15:40)  ....... микрокоманды и операнды ассоциативно извлекаются по явно указанным в полях номерам, и исполняются. В итоге "мультиклеточная" архитектура многократно проигрывает обычной, по тактам, объему кода, площади кристалла. Если я неправильно понял "мультиклеточную" архитектуру - объясните мне понятно. (По поводу клока - он есть, см "даташит"). 1) по тактам я не понял почему 2) по обьёму кода, да но не многократно, я бы сказал 20-30% 3) площадь кристала, х.з. как сравнить. и я бы сравнивал 4 клеточный с 4-х ядрённым мипсом, предлагаю разобраться как следует. ----------------------- target: z=SUM[(ai+bi)*ci-(ai-bi)*di] тоесть на С так for(int z=0,i=0;i<10;i++) z=z+(a[i]+b[i])*c[i] - (a[i]-b[i])*d[i]) triads: 1)sum_ab=a+b 2)sub_ab=a-b 3)mult_abc=1*c 4)mult_abd=2*d 5)sub34=3-4 6)target=target+sub34 Код (tag_2, <=0) i (tag_1, <=0) target
(tag0, read [a+tag_2]) (tag1, read [b+tag_2]) (tag2, read [c+tag_2]) (tag3, read [d+tag_2]) -- вероятно эти таг0-3 можно было бы заменить на некую команду (tags0,1,2,3 read [a+tag_2<<2]). х.з.
(tag4, tag0+tag1) (tag5, tag0-tag1) (tag6, tag2*tag4) (tag7, tag3*tag5)
(tag8, tag6-tag7) (tag_1, tag_1 + tag8) (tag10, store tag_1 to target adr) (tag_2, tag_2 +1)-
(tag_2, tag_2 EQU 10) (tag11,jmpNZ tag_2, adr to tag0) пояснения + упрощения 1)адреса команд не указаны, есть привязка к tag-у, тоесть это ассоциация как команды так и результата после выполнeния команды(для простоты tag это регистр  ). 2)показаны только 1 стадия конвейра exec 3)все стадии конвейра - 1 такт 4)все данные в cache (cache hit rate=1) в данном и невероятно простом примере видно что ускорение выполнения может быть не более чем в 4 раза и выводы: 1) стадия fetch должна быть сделана следующим образом(чтобы было "4х" ускорение): - либо широкий порт инструкций в "4 раза шире" - либо в "4 раза быстрее" 2)если каждая клетка это очень примитивный (одно лишь АЛУ) cpu, то автомат "дирижирующий" этим ансамблем видиться очень не простым. 3) и действительно в случае отказа 1 клетки, катастрофы не случится, пока есть хотя бы 1 работающая. 4) для случая 16 клеток ускорение расти не будет, будет тем же что и для 4-х клеток (для данного примера) 5) из п4 следует что для 16 клеток, возможно(?) выполение в параллель ещё какого то кода(справится ли fetch?) 6) тоесть данный алгоритм _не заточен_ для выполнения на 16 клетках, и следовательно нельзя говорить о "естественном" параллелизме вообщем этот мультиклет что-то вроде systolic array cpu http://web.cecs.pdx.edu/~mperkows/temp/May...-Processors.pdfз.ы. 4х - это конечно же фейк(л) ещё тот, попробуйте временную диаграмму нарисовать, так там и будет видно что закон амдала обойти не получится
--------------------
Cogito ergo sum
|
|
|
|
|
Apr 18 2012, 14:18
|
Профессионал
    
Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118

|
Цитата(Postoroniy_V @ Apr 18 2012, 10:14)  предлагаю разобраться как следует Цитата 1) по тактам я не понял почему Если правильно понял, у мультиклета даже регистровые переменные надо загружать отдельными инструкциями, отсюда заметный проигрыш на коротких цепочках вычислений. А на длинных - пусть паритет, тогда в среднем - проигрыш. Цитата 2) по обьёму кода, да но не многократно, я бы сказал 20-30% Непонятна разрядность микрокоманды, если 64 разряда, то уже в 2 раза больше (как минимум) Цитата 3) площадь кристала, х.з. как сравнить. и я бы сравнивал 4 клеточный с 4-х ядрённым мипсом Идеология Multiclet: компилируем код на ЯВУ в очень мелкие инструкции, аппаратно параллелим их, и получаем "превосходство" в MIPS и MIPS/W. Пример: "a=b+c;" компилируем в "rd b; rd c; add; wr a;", параллельно выполняем их на 100МГц, и получаем дутые 400MIPS. Так что сравнивать надо с обычным 1-ядерным процем (или с DSP, в зависимости от архитектурных примочек вроде индексных регистров и проч.) Ассоциативная адресация, буфера, и проч - отнимает площадь, ничего не давая взамен. Цитата (tag_2, <=0) i В "даташите" упоминаются индексные регистры, чтобы их использовать - надо как-то проинициализировать и установить необходимые флаги. Цитата (tag0, read [a+tag_2]) если использовать специальные индексные регистры для косвенной адресации, тогда и сравнивать будем с DSP-процессором. А если сравнивать с универсальным( ai=a+i; ai=*ai ), то индексное чтение надо делить на несколько микрокоманд: (tag00, read a) (tag01, tag00+tag_2) (tag02, read [tag01]) (?) Ввод специальных DSP-примочек в "мультиклеточную" архитектуру уже настораживает - зачем это, если можно просто нарастить число клеток, сохранив чистоту концепции? Цитата и действительно в случае отказа 1 клетки, катастрофы не случится, пока есть хотя бы 1 работающая У каждой клетки своя независимая память команд, в случае отказа весь этот код пропадает --> катастрофа. Цитата вообщем этот мультиклет что-то вроде systolic array cpu Имхо, совсем не похоже, тк systolic... - просто явно описываемый и программируемый длинный конвейер.
|
|
|
|
Сообщений в этой теме
des00 что-то новое ? Aug 24 2011, 08:46 SSerge Это хорошо забытое старое. Вариации на тему data f... Aug 24 2011, 10:33 des00 Цитата(SSerge @ Aug 24 2011, 04:33) Это х... Aug 24 2011, 11:11  vadimuzzz Цитата(des00 @ Aug 24 2011, 18:11) причем... Aug 24 2011, 13:36   des00 Цитата(vadimuzzz @ Aug 24 2011, 07:36) мо... Aug 24 2011, 15:25 Porychik Kize Так как "Мультиклет" - это ОАО, то на са... Aug 25 2011, 05:34 iosifk Цитата(des00 @ Aug 24 2011, 12:46) присла... Aug 25 2011, 05:58 MrYuran Встречайте!
Цитатаот 1000 шт. - 350 руб.
Цит... Apr 9 2012, 05:08 san822 Цитата(MrYuran @ Apr 9 2012, 09:08) Встре... Apr 9 2012, 06:25 vladec По моему это очередное Российское средство по виби... Apr 9 2012, 06:18 MrYuran Цитата(vladec @ Apr 9 2012, 10:18) По мое... Apr 9 2012, 07:11 ViKo А не на ПЛИСе ли оно все сделано? Apr 9 2012, 07:27 cant Цитата(ViKo @ Apr 9 2012, 10:27) А не на ... Apr 9 2012, 09:31  MrYuran Цитата(cant @ Apr 9 2012, 13:31) написано... Apr 9 2012, 09:45   ViKo Цитата(MrYuran @ Apr 9 2012, 12:45) Может... Apr 9 2012, 09:51    MrYuran Цитата(ViKo @ Apr 9 2012, 13:51) На их са... Apr 9 2012, 10:15     Builder Цитата(MrYuran @ Apr 9 2012, 13:15) Можно... Apr 9 2012, 15:16      MrYuran Цитата(Builder @ Apr 9 2012, 19:16) Судя ... Apr 11 2012, 07:08       Builder Цитата(MrYuran @ Apr 11 2012, 10:08) Данн... Apr 11 2012, 10:27        MrYuran Цитата(Builder @ Apr 11 2012, 14:27) дата... Apr 11 2012, 10:43         Corvus Цитата(MrYuran @ Apr 11 2012, 14:43) А по... Apr 11 2012, 11:10          MrYuran Цитата(Corvus @ Apr 11 2012, 15:10) Кто-н... Apr 11 2012, 13:06 Мур Вот для просмотра особенности архитектуры.... понр... Apr 11 2012, 07:28 DSIoffe Цитата("MrYuran")Москвичи могут увидеть ... Apr 11 2012, 13:20 Uuftc Цитата(DSIoffe @ Apr 11 2012, 17:20) А чт... Apr 18 2012, 10:30 Aner Сомнения меня одолевают, вспоминается история, ~12... Apr 11 2012, 14:05 MrYuran Цитата(Aner @ Apr 11 2012, 18:05) Подходя... Apr 11 2012, 14:14  Aner Цитата(MrYuran @ Apr 11 2012, 17:14) С та... Apr 11 2012, 14:53 san822 Через PR-службу получил такие ответы:
ЦитатаПосмо... Apr 16 2012, 04:35 Leka Распил, имхо. Apr 16 2012, 07:22 DSIoffe Цитата("Leka")Распил, имхо.
Зачем этот и... Apr 16 2012, 07:34 Leka Цитата(DSIoffe @ Apr 16 2012, 11:34) Подт... Apr 16 2012, 07:41 DSIoffe А если не в виде художественных образов? Что невня... Apr 16 2012, 07:45 Leka Цитата(DSIoffe @ Apr 16 2012, 11:45) Что ... Apr 16 2012, 07:55  MrYuran Цитата(Leka @ Apr 16 2012, 11:55) Есть об... Apr 16 2012, 08:31   Leka Цитата(MrYuran @ Apr 16 2012, 12:31) Ну и... Apr 16 2012, 08:58 DSIoffe Какие общие проблемы? Apr 16 2012, 08:05 Leka Цитата(DSIoffe @ Apr 16 2012, 12:05) Каки... Apr 16 2012, 08:17 DSIoffe Нда, самое то для datasheet. Кстати, именно об это... Apr 16 2012, 08:21 Leka "4. Высокое быстродействие объясняется принци... Apr 16 2012, 08:30 Poluektovich Вот концепция:
http://www.multiclet.com/docs/ru/M... Apr 16 2012, 09:33 Leka Попробуйте пересказать своими словами. Apr 16 2012, 09:38 jojo Цитата(Leka @ Apr 16 2012, 13:38) Попробу... Apr 16 2012, 16:47 jojo два раза отправилось
Короче, не понимаю, в чём се... Apr 16 2012, 16:47 Leka Какой такой pinball
Лично я понял только (если... Apr 16 2012, 20:02 MrYuran Цитата(Leka @ Apr 17 2012, 00:02) Лично я... Apr 17 2012, 04:27 Victor® Цитата(Leka @ Apr 16 2012, 23:02) причём ... Apr 17 2012, 09:29 jojo >Какой такой pinball
Это абстрактное высказы... Apr 16 2012, 20:43 MrYuran Цитата(Leka @ Apr 17 2012, 10:40) Сравним... Apr 17 2012, 07:58  Leka Цитата(MrYuran @ Apr 17 2012, 11:58) А в ... Apr 17 2012, 11:49 Soflover Сегодня был на выставке Новая Электроника. Видел и... Apr 17 2012, 16:41 Wic О любых революционных изделиях можно говорить долг... Apr 18 2012, 05:44 Мур И где обещанное?...
http://www.new-electronics.inf... Apr 18 2012, 05:47 Poluektovich Цитата(Мур @ Apr 18 2012, 09:47) И где об... Apr 18 2012, 07:54 Postoroniy_V Цитата(Leka @ Apr 18 2012, 23:18) Если пр... Apr 19 2012, 01:32 Leka Цитата(Postoroniy_V @ Apr 19 2012, 05:32)... Apr 19 2012, 06:12  MrYuran Цитата(Leka @ Apr 19 2012, 10:12) поиском... Apr 19 2012, 06:22 Uuftc А меня вот еще интересует вопрос - а как может обс... Apr 19 2012, 04:38 MrYuran Цитата(Uuftc @ Apr 19 2012, 08:38) А меня... Apr 19 2012, 05:05 Postoroniy_V Цитата(Uuftc @ Apr 19 2012, 13:38) А меня... Apr 19 2012, 05:09 Leka Роснано, кстати, мультиклету фигу показало. Apr 19 2012, 06:28 Postoroniy_V Цитата(Leka @ Apr 19 2012, 15:28) Роснано... Apr 19 2012, 07:19 DSIoffe Цитата("Uuftc")Рассказываю:
Живьем - нет... Apr 19 2012, 07:09 Uuftc Цитата(MrYuran @ Apr 19 2012, 09:05) А в ... Apr 19 2012, 11:54 _Pasha Цитата(Uuftc @ Apr 19 2012, 14:54) то в м... Apr 19 2012, 12:09  Postoroniy_V Цитата(_Pasha @ Apr 19 2012, 21:09) Тут т... Apr 20 2012, 01:17 tegumay по поводу архитектуры я луше просто промолчу.(а чт... Apr 19 2012, 19:21 ArtemDement Цитата(tegumay @ Apr 19 2012, 23:21) кол-... Apr 22 2012, 11:19 Postoroniy_V Первая партия мультиклеточных процессоров произвед... Jul 1 2012, 04:56 Soflover Цитата(Postoroniy_V @ Jul 1 2012, 08:56) ... Jul 1 2012, 10:34  MrYuran Цитата(Soflover @ Jul 1 2012, 14:34) Как-... Jul 2 2012, 04:47   Soflover Цитата(MrYuran @ Jul 2 2012, 08:47) Под з... Jul 2 2012, 08:37  ArtemDement Цитата(Soflover @ Jul 1 2012, 14:34) Это ... Jul 2 2012, 15:50 MrYuran Возможно, что все доводы строятся исходя из традиц... Jul 3 2012, 04:54 spectr Загрузка с внешней флэшки, малое количество памяти... Jul 3 2012, 05:46 Wic Выпустили партию FPGA-шек под своим названием. Теп... Jul 3 2012, 06:58 BarsMonster Цитата(Wic @ Jul 3 2012, 09:58) Выпустили... Jul 3 2012, 08:16  Soflover Цитата(BarsMonster @ Jul 3 2012, 11:16) Р... Jul 3 2012, 10:35  Wic Цитата(BarsMonster @ Jul 3 2012, 15:16) Р... Jul 4 2012, 03:42   BarsMonster Цитата(Wic @ Jul 4 2012, 06:42) Вы уже по... Jul 4 2012, 10:30    MrYuran Цитата(BarsMonster @ Jul 4 2012, 14:30) Э... Jul 6 2012, 11:38     sqrt Цитата(MrYuran @ Jul 6 2012, 15:38) Тепер... Jul 7 2012, 06:08     Torpeda Цитата(MrYuran @ Jul 6 2012, 14:38) Тепер... Jul 10 2012, 09:18      BarsMonster Цитата(Torpeda @ Jul 10 2012, 12:18) Заин... Jul 12 2012, 22:33       zzzzzzzz Цитата(BarsMonster @ Jul 13 2012, 01:33) ... Jul 13 2012, 06:24 sqrt Судя по спецификациям на младшую модель MCp 040210... Jul 4 2012, 15:08 Postoroniy_V на хабре есть ещё одна статья
http://habrahabr.ru/... Jul 6 2012, 08:41 Canis Dirus А тем временем разработчики разродились отладочной... Dec 13 2012, 09:33 BarsMonster Отладочная плата у меня есть, буду ковырять на дня... Dec 27 2012, 09:39 MrYuran Цитата(BarsMonster @ Dec 27 2012, 13:39) ... Dec 27 2012, 10:21  BarsMonster Цитата(MrYuran @ Dec 27 2012, 13:21) Ждем... Dec 27 2012, 10:34 alman Бегло пробежался по обсуждению и не увидел ссылки ... Dec 29 2012, 08:44 MrYuran Цитата(alman @ Dec 29 2012, 12:44) Разраб... Dec 29 2012, 09:15 BarsMonster http://habrahabr.ru/post/165043/ - Мультиклет: пра... Jan 8 2013, 09:59 BarsMonster Цитата(BarsMonster @ Jan 8 2013, 11:59) h... Jan 26 2013, 22:04 ArtemDement BarsMonster, это Ваш проект ?
ЦитатаПЕРВЫЕ ДЕТАЛИ... Jan 27 2013, 13:16 BarsMonster Цитата(ArtemDement @ Jan 27 2013, 16:16) ... Jan 27 2013, 13:31
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|