Автор Тема: Мультиклет  (Прочитано 4578 раз)

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Мультиклет
« : Июль 10, 2012, 11:39:14 am »
http://www.multiclet.com/
Мильтиклеточные процессоры -- по сути сверхмощные микроконтроллеры.
Российская разработка, уже можно купить (в районе $15 за камень) -- произведено 10 тыс. шт.
Вот для них надо какой-то новый язык программирования, заточенный под эту модель вычислений мультиклеточную, а они там компилятор Си сделали...
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: Мультиклет
« Ответ #1 : Июль 11, 2012, 10:39:39 am »
Как раз одна из их идей (как и в dataflow-модели Бурцева) - автоматическое распараллеливание обычных императивных программ, за счёт того, что маш. код генерируется с графом зависимостей данных.
Т.е. штука в том, что подобные вещи должны сделать возможным параллелизм для нормальных языков и опровергнуть мифологемы ФП-шников, что будущее только за ними :) :)

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Мультиклет
« Ответ #2 : Июль 11, 2012, 01:47:30 pm »
Вот ещё бы увидеть где-то реальные тесты, и если там действительно произвольная императивная программа чудесным образом значительно ускорятеся -- то объяснение, за счёт чего...
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: Мультиклет
« Ответ #3 : Июль 11, 2012, 03:09:07 pm »
Мультиклет защищать не буду - не знаю, а в Бурцевской модели - за счёт использования ассоциативной памяти для увязывания готового результата вычисления с ожидающими его блоками кода. Естественно, там надежда на грядущее удешевление ассоциативной памяти...


Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Мультиклет
« Ответ #4 : Июль 11, 2012, 04:29:57 pm »
Мультиклет защищать не буду - не знаю, а в Бурцевской модели - за счёт использования ассоциативной памяти для увязывания готового результата вычисления с ожидающими его блоками кода. Естественно, там надежда на грядущее удешевление ассоциативной памяти...
Бурцевская -- это dataflow?
Но ведь dataflow -- это же путь к ФП на самом деле...

Предварительное вычисление -- фьючерсы -- это же как раз из ФП тема...
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: Мультиклет
« Ответ #5 : Июль 11, 2012, 05:25:25 pm »
Сайт burcom.ru, увы, не отвечает уже. Видимо, со смертью Бурцева работы в ИВВС РАН остановились...
У меня, правда, осталось много сохранённых их публикаций.

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

Т. е. при такой модели никакого "пути к ФП" уже, как бы, не нужно, ибо и для императивной программы весь потенциальный параллелизм вычисления будет задействован. Этого не может сделать компилятор, но это делает "аппаратный рантайм", просто в силу самого принципа его работы.

Прошу не воспринимать как пропаганду, я сам не очень верю, что скоро будет дешёвая ассоциативная память. Мне лично и без dataflow, и без ФП нормально :)

albobin

  • Full Member
  • ***
  • Сообщений: 198
    • Просмотр профиля
Re: Мультиклет
« Ответ #6 : Июль 12, 2012, 07:13:33 am »
Кстати у Конвея (это которого тут недавно вспоминали) тоже есть dataflow-идеи http://www.melconway.com/Home/Inventor.html . Он даже патентом их прикрыл.

Но, и тут он, как и в случае "своего" LAW,  в том, что такое dataflow наверняка не разобрался... увы  ;D


Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: Мультиклет
« Ответ #7 : Июль 12, 2012, 07:50:13 am »
Каждое значение имеет свой id (токен), по которому происходит связь. В активном поле лежат команды с id тех значений, которые им требуются. Как только значение вычислено, оно попадает в ассоциативную память - и вычислители выбирают из активного поля все команды, которые ждали этот id.

Блин, это же ленивые вычисления (вычисления по требованию). Так это же и есть ФП-машина! )))
С императивными языками, подозреваю, эффективность у неё будет существенно ниже, чем с чистыми ФП языками...
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…