Пользователь
0,0
рейтинг
13 сентября 2012 в 20:05

Разработка → «Суперкомпьютер» из 64 Raspberry Pi и Lego

Одноплатный дешёвый мини-компьютер Raspberry Pi уже использовали повсеместно — теперь у исследователей из университета Саутгемптона под предводительством профессора Саймона Кокса (Simon Cox) руки дошли до того, чтобы из Raspberry соорудить суперкомпьютер при помощи известного детского конструктора Lego.

Профессор Кокс заказал для проведения научного эксперимента 64 мини-компьютера и, по всей видимости, не один комплект Lego. Каждый Raspberry был снабжён SD-картой объёмом в 16 Гб и был установлен в «стойку», для изготовления которой и был применён конструктор.

Каждое «ядро суперкомпьютера» выглядело следующим образом:




Далее, применив знания и умения своего шестилетнего сына Джеймса, профессор Кокс получил симпатичную стойку из Lego,



куда и было установлен каждый Raspberry, получив, таким образом, общий объём дискового пространства полученного «кластера» в 1 Тб. Все платы были объединены в локальную Ethernet-сеть.



Тот кластер же, но с немного другого ракурса и поближе:



Профессор Кокс не поленился и привёл подробную инструкцию. по развертыванию своего «суперкомпьютера» из «двух ядер» при помощи одного из образов Linux, доступных на официальном сайте Raspberry (причём сам профессор использовал Raspbian “wheezy”), взглянуть на которую можно здесь. Сам мануал может служить подробным «how-to» при работе с Raspberri Pi.

Общая стоимость описанного решения составила £ 2 500 (около 4030$).

[Источник]
Евгений @jeston
карма
80,2
рейтинг 0,0
Пользователь
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Разработка

Комментарии (122)

  • +23
    Интересна итоговая мощность
    • 0
      Думаю, не сравнится с 4к долларовым ПК )
      • +2
        Смотря на каких задачах
        • +1
          И на каких задачах можно применить этот кластер?
          • +1
            Если на 4к долларовом ПК использовать CUDA то тут никуда не деться — в таком случае комп будет круче этого кластера.
            • –1
              Особенно, если это кластер на Tesla или AMD Radeon.
            • 0
              Решение на Rasbery Pi будет хуже хотя бы через большие затраты на инттерконект отдельных узлов через Ethernet.
          • 0
            Будем следить за новостями от Саймона.
          • +1
            на задачах ОБУЧЕНИЯ!
    • +7
      Вообще странно всё это. Такое впечатление, что сделали ради лулзов. Больше всего поражает, что даже в пресс-релизе университета ни слова о производительности, лишь упоминание того, что первым тестом было вычисление числа пи.
      • +14
        Нет, ну что вы. Конечно же, это было сделано абсолютно серьёзно. Было задействовано множество ученых, инженеров и программистов.

        Можно сказать, это наше будущее.
        • +4
          Ваш сарказм не уместен.
          В пресс-релизе говорится, что такая система вполне себе неплохое средство для обучения студентов высоко-производительным (читайте «распараллеленным») вычислениям.
          А для того, чтобы прогнать несколько тестов, собрать результаты и отобразить их в сравнительной таблице, «множество ученых, инженеров и программистов» и ни к чему.
          • +2
            Наверное, имеется в виду обучению принципам, подходам и технологиям. Просто в масштабе.
            • +29
              image
      • +1
        А что им еще для тестов было на нем считать? Linpack гонять не вариант. Интерконнект между узлами всего 100 Мегабит. Памяти на каждом узле кот наплакал. То есть даже тест с нормальным размером матрицы не погоняешь, а если с мелкими запустишь, так интерконнект все результаты испортит. Вот и тестируют на вычислениях числа Pi :)
        • 0
          Т.е. 256МБ рамы — это уже кот наплакал?
          У меня в университете был предмет, связанный с распараллеленными вычислениями. И на практических занятиях мы гоняли те же матрицы по 100mbps сети — никто не умер.
          • +6
            Ага. Был у нас первый кластер на альфах 21164 (533 MHz). Памяти на каждой было как раз по 256Мб и 100 Mbit интерконнект. Году так в 99. По нынешним меркам у него ооочень чахлая производительность была. Его уже лет 5 как музейный экспонат только используют. Даже студентов учить уже слишком медленный он.
            • +1
              У нас такие на офисе. На них работают люди. Работают. Люди. Это не музей.

              Смотря для каких задач. Для офиса — этого достаточно.
              • –1
                Бедный-бедный-бедный офис =(
                • –1
                  Не обязательно, может это тонкие станции.
                  • +3
                    Нет.

                    Да вы чего, люди? Зачем нужно что-то мощнее? Они офис тянут, работают, им нужно до восьмерки обновляться? Или офис2010 ставить? Пока они справляются со своей задачей, смысла их менять нет.
                    • +1
                      ChiWriter? :)
                      • +2
                        Лексикон!
                      • 0
                        office97
                      • 0
                        Слово и дело
                • 0
                  Офис у которого нет интернет-эксплореров, маил агентов и прочей ереси видится мне гораздо богаче некторых.
                  • +3
                    Они там даже не запускаются. :)
              • 0
                А почему бы им не работать на таких машинах, если они справляются с поставленными задачами? У меня есть знакомые, которые и на 286-х работают. На этих машинках бегают программки для управления станком. Собственно зачем их менять, если все и так прекрасно работает.
                У нас эти машины перестали справляться и были списаны.
                • 0
                  Ну вот, и я о том же.
          • 0
            К сожалению, да. Сегодня на настоящих HPC машинах минимальным является 1 Gb RAM на ядро, а чаще всего — 2 Gb. А про интерконнект вообще даже не стоит сравнивать — стоимость Infiniband доходит до половины стоимости всей системы и счёт идёт на микросекунды задержки.
            • 0
              кстати, вы не знаете откуда такие цифры появились?
              • 0
                Из практики. Столько требуется средней задаче из разных областей. Конечно, кому-то больше, кому-то меньше.
                • 0
                  ну да, я такие же характеристики обычно видел, думал вдруг вы знаете каки-нибудь обзоры на эту тему.
      • +3
        А причём тут производительность? На такой системе студенты могут пробовать и обкатывать полноценные кластерные проекты. Настоящий кластер из 64 компов обошёлся бы на порядок-два дороже,
        • 0
          Дело в том, что для обучения можно наклепать виртуалок и получить близкую производительность на современной машине. Поэтому для обучения тоже не очень интересный вариант. Например, студенты некоторые задачки компилировать сдохнут на R-Pi.
          • 0
            Кросс-компиляцию вчера запретили?
            • 0
              Представил себе лабы по программированию для mpi. «А сейчас, господа, мы с вами будем учить что такое кросс-компиляция» :) Немного не по профилю предмета — это раз.
              Каждый раз после исправления ошибки в коде таскать код с рабочей станции на кластер — это два.
              Зачем изобретать трудности, а потом их преодолевать? :(
              • –1
                Во-первых, код таскать в любом случае придется, потому что в кластере-то 64 узла, и код должен быть на каждом из них.
                А во-вторых, «таскание кода» прекрасно поддается автоматизации.
                • +1
                  Ну ок. Будем считать что убедили. Начинайте проводить лабы по mpi на R-Pi :)
                • –1
                  Кластерные ФС уже не в моде, да.
                  • 0
                    Пожалуйста, читайте ветку с начала, а не с конца.
                    Я не утверждал, что «таскание» кода на все 64 узла — это сложная задача. Я утверждал, что эта задача не проще «таскания» кода с рабочей станции на сервер.

                    Кластерная ФС решает сразу обе задачи, за что ей честь и хвала.
                    • 0
                      Проще. Кластерную ФС должен настроить администратор кластера. А за таскание кода и данных с рабочей станции на кластер отвечает каждый самостоятельно.
                      • 0
                        В любом случае, один раз настроить кросс-компиляцию проще, чем регулярно «сдыхать компилировать некоторые задачки на R-PI»
                        • 0
                          … а потом ещё настроит и эмулятор, потому что всё равно придётся бинарник копировать. Я считаю что если есть компьютер целевой платформы достаточной мощности для разработки, то лучше разрабатывать нативно.

                          • 0
                            Ась? А эмулятор-то зачем?!
                            • 0
                              1. Кросс-компиляция, копирование на девайс, запуск.

                              2. Копирование на девайс, компиляция, запуск.

                              3. Кросс-компиляция, запуск под эмулятором.

                              4. Компиляция, запуск. (Всё на девайсе.)

                              Выбирайте какой вариант проще. Я считаю что если уже возиться с кросс-компиляцией, то лучше вариант (3). А если запускать на девайсе, (а мы говорим о ресурсоёмких задачах), то можно и компилировать там же — вариант (2). Вариант (1) сочетает недостатки всех подходов.
                              • 0
                                Это все я понял.
                                Но недостатки-то какие?
                                • –1
                                  И кросс-компиляция, и копирование.
                          • 0
                            Вы вообще что-нибудь разрабатывали с использование кросс-компиляции? В этом нету ничего сложного. Более того, руками ничего копировать не надо. Все один раз настраивается (запустить специальный сервис на целевой и вбить адрес на инструменталке), далее из IDE запускается либо отладка, с подключение к удаленному отладчику, либо просто запуск. Исполняемые файлы заливаются сами. Так например это все происходит при разработки под QNX. При том, что там целевые машины могут быть вполне приличными, просто разработчики перестали делать IDE непосредственно под QNX, наверно она просто не пользовалась особой популярность.
                            • 0
                              Вот в только таких хорошо отлаженных случаях кросс-компиляция работает хорошо — когда этот юзкейс предусмотрен и оттестирован разработчиками тулчейна и IDE.
                              • 0
                                Целевая платформа все-таки ARM, тут все же наверно в большинстве своем и так используется кросс-компиляция. Основная проблема это все один раз настроить. Далее сама кросс-компиляция практически ничем не отличается от обычной, за исключение того, что используются другие пути. Вот доставить какие-нибудь библиотеки для дальнейшего использования на целевой платформе, да, может быть сложно.
      • +3
        Честно говоря, не могу представить проект НЕ для лулза из ЛЕГО, помоему два этих слова в одном анонсе исключают любую серьезность, ну и как же можно не обрптить внимание на кавычки в слове Суперкомпьютер?
        • 0
          не нужно кавычек, лего часто используется для прототипирования девайсов в лабах.
          • 0
            Я думаю если бы они делали суперкомпьютер без кавычек, то лего было бы совсем неуместно. Предлагаю взглянуть на реальный СК (http://habrastorage.org/storage1/478c60c2/5ec9e42f/adb8d0e4/0052ebc6.jpg), ну и сколько по времени и деньгам уйдет сборка корпуса для нашего суперкомпьютера? Лего то нынче не дешевый.
            • 0
              суперкомпьютеры видел, спасибо. по существу (про прототипирование) есть что возразить?
              • 0
                Ну хотя бы то что именно суперкомпьютер прототипировать из лего это фейл =), а то что лего удобный инструмент, для мелочей то вполне согласен. Но опять же прошу обратит внимание я не о лего в частности говорил а о том что слова Суперкомпьютер и Лего в одном анонсе исключают любую серьезность.
                • 0
                  прототипы чего угодно из чего угодно это по большей части фейл, просто потому что это прототипы, поиск решений. про «ислючает серьезность»: вы просто играете словами или действительно считаете, что прототипирование это несерьезно? или с лего несерьезно? а с липкой лентой типа скотч?
                  • 0
                    Не, я говорил что прототипировать что то громоздкое и навороченное вроде суперкомпьютера из лего это фейл, поэтому обратил внимание на кавычки, вместе с ними эти понятия более менее уживаются, так как для простых вещей лего самое то.
                    • 0
                      у вас, по-моему, искаженное представление о research and development.
    • 0
      1 Paspberry Pi ≈ 300 MHz, тут, значит, около 20 GHz, если сосчитать.
      Как один современный шестиядерный i7, в-общем.
      • +9
        Ну да, конечно. Если так считать, то можно еще разделить на суммарное расстояние между ядрами.
        • 0
          Не, это я прикинул теоретически достижимый максимум. На самом деле понятно, что всё там хуже.
          • 0
            Вы не учли один интересный факт. В i7 6 ядер. А тут 64 ядра + свое отдельное железо. Правда тут будет выгодно параллелить задачу вроде подбора хэша. Хотя машинка выбрана не особо. Сейчас можно например собрать компьютер из 128 каких нибудь Snapdragon S4 с 4 ядрами на частоте 1.5 ггц. Вот это будет мощь. И по идее вполне уместится в большую сумку.
            • +5
              Только реактор с собой не забульте.
            • 0
              Мощь будет 4 компьютера, каждый с 4мя топовыми видеокартами.
              Вот там подбор хеша будет быстрый и исчисляться будет производительности многофлопсами.
            • 0
              вы не учли «графические ядра» (: в броадкомовском чипе, имеется в виду
      • 0
        Ну это в теории. Также как значения пиковой производительности больших супер-компьютеров. Просто берут и суммируют производительность всех узлов. Но в реальности хорошо если на линпаке процентов 70-80 от пика получится выжать. На реальных задачах и того меньше. Точнее говоря на реальных задачах после определенного числа узлов или прироста нет, или наоборот падение идет.
        • +1
          Угу. Назвывается закон Амдала.
  • +18
    Профессор Кокс

    Символично
    • –27
      image
  • +2
    Судя по 3-ей фотографии он еще и 64 монитора заказал)
    • +2
      KVM уже запретили?
      • 0
        К чему Вы KVM вспомнили? Я про мониторы на заднем плане.
        • 0
          Только сейчас их заметил…
  • +23
    Дак вот почему на Raspberry большая очередь была.
    • 0
      Щас еще пара людей такой собирет, и вообще своего Raspberry недождусь!!!
      • 0
        Соберет*
        • 0
          Там уместнее «собирает», скорее всего просто опечатка
      • –4
        Вы пока учебник русского закажите, скоротать время.
  • 0
    Игрушечный суперкомпьютер по стоимости неплохого обычного.
    Хотя, может по характеристикам ВНЕЗАПНО обогнал и десктоп.
    • 0
      А это идея, нужно делать суперкомпьютер из LM4F120, пока они копейки с доставкой стоят.
      Единственный минус — почти все ресурсы «супер компьютера» уйдут на взаимодействие плат друг с другом)
      • 0
        Если следовать вашей логике и дальше, монжо назаказывать тысячь 16 микрух pic16, собрать в кучу, и… вернуться к компьютерам, размером с комнату.
        А если серёзно, то у 64 RPI есть шансы уменьшить расходы на взаимодействие если использовать алгоритмы, предназначенные для операций над матрицами, векторами и прочим, что можно безболезненно распараллелить (прямо как в GPU).
        И сколько там у rpi памяти?
        256 мегабайт?
        256*16 = 16 384
        по сути — 16 гигабайт памяти
        • 0
          По факту меньше — на каждом своя кушающая ось стоит
          • 0
            Еще не стоит забывать про максимум 240 Мб под нужды юзера. Минимум 16 метров жрет GPU. Так что даже еще меньше :(
  • +1
    Вот почему их поначалу не хватало. Так как один кадр сразу 64 штуки купил)
  • 0
    А как у них с выделением тепла? Поскольку с отводом оного, я смотрю, тут туговато будет.
    • 0
      Не подплавился бы пластик лего.
      • +2
        Расплавится — получится литой пластиковый корпус:)
  • 0
    Есть задачи, где это можно использовать?
    • 0
      Теоретически — да.
    • +10
      Постройка игрушечного дата-центра
      • +7
        И запуск на нём игрушечного гугла. Легугла.
        • +2
          Запуск на нём игрушечных сайтов!
          За право списать на контрольной.
          • 0
            А на третьей фотографии, соответствующий админ.
        • +2
          сервака майнкрафта тогда уж)
          • +2
            Гениально) Лего-игра на лего-сервере)
  • +4
    Вот что такое… у когото 64 Raspberi, а ктото одну никак не дождется…
  • +2
    Уважаю профессора Кокса. С таким папой не соскучишься :)
  • –4
    Чувак какими-то связями 64 RPI сынуле поиграться раздобыл, но на это насрать вообще. Он за счёт универа ещё и Lego 64 коробки сынуле достал, в каждой коробке минимум по 4 лего-человечка( я бы в детстве убил за такую армию). Молодец чё..))…
    • +4
      Они будут админами игрушечного датацентра.
  • 0
    Профессора нужно подружить с этим чуваком:
    www.youtube.com/watch?v=qWkUFxItWmU&feature=related
    • 0
      Лучше с этим, у вашего как-то не очень.
      • 0
        Согласен.
        Жалко что я пока не могу найти никакого металла, исполненного на флоппи-дисководах.
      • –6
        меня одного прикололо то что на авке у Xazzzi Дарт Вейдер?
        1347569153-clip-10kb
  • +2
    Ну на счет использования мануала как how-to по R-Pi это громко сказано. В нем подробно расписано как собрать mpich, но вот по оптимизации системы инфы ноль. Раз уже хотим использовать R-Pi как вычислительные ноды, то надо как минимум по памяти оптимизацию сделать, т.е. вырубить все ненужное и отдать GPU минимум оперативки, заменить ssh на dropbear, проц разогнать и т.п.
    Ну и плюс не повредило бы хотя бы C3 прикрутить, а то рулить зоопарком из 64 узлов это еще то удовольствие будет. Запустить например одну и ту же команду на всех узлах, или скопировать один и тот же конфиг. На самом деле у него еще куча заморочек вылезет — тут я точно могу сказать, т.к. ковыряюсь с кластерами уже лет 15, в основном как админ конечно, но все же… :)
  • 0
    А оно разве не расплавит лего, когда будет выделять тепло?
    • 0
      В таком случае не дай б-г чтобы ничего не случилось с текстолитом и прочими пластиковыми деталями RPI.
      • –1
        Значит теоретически, в случае перегрева, 4к$ накроется медным тазом?
    • +3
      Температура плавления ABS-пластика, из которого делаются кубики Lego окрло 240 градусов Цельсия, то думается раньше расплавятся сами R-Pi
      • +1
        Спасибо, что ответили, а не минусов налепили.
  • +2
    Вот имя чувака, который создал искусственный дефицит малины!
  • +2
    Эксперимент проплачен Лего!
  • –1
    и все это собранно без гвоздей Синей Изоленты? :)
    • 0
      и супер клея? =)
    • 0
      Лего же делают из синей изоленты, поэтому он такой прочный.
  • 0
    И сколько такая штука электричества ест? Киловатта полтора?
    • +3
      Устройство питается самолюбием собравшего его.
    • 0
      Для одной штуки рекомендуют БП 5В, 700мА. Т.е. 3,5Вт максимум. Т.е. при самых худших раскладах (КПД БП меньше 50%) для 64 больше 500Вт не получается.
  • 0
    Как насчет охлаждения? Загорится же эта пластиковая хреновина.
  • 0
    А куда идут все эти кабели?

    Вариант, судя по фото — концы валяются на полу. Завтра они с сыном коммутатор из Лего доделают — туда и воткнут :)
  • 0
    Напомнило анекдот:
    «Я изобрёл и построил электромобиль. На всё изобретение у меня ушло 10.000$. Одна тысяча — на электромобиль и девять на провода.»
  • +1
    Ну пипец.

    Следующий шаг — дата-центр на ардуинах.

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