Чи справді суперкомп'ютер, побудований з багатьох RPis, є практичним чи просто новинкою?


13

Це питання натхнене цією статтею .

В даний час я витрачаю багато часу на R, щоб аналізувати дані. Деякі сценарії, які я виконую в R, можуть скористатися паралельними обчисленнями, щоб заощадити час. Скажімо, я міг би побудувати «справжній» комп’ютер без баребонів приблизно $ 300, а за ці ж 300 доларів я міг би отримати 6 Pis (включаючи силовий кабель та SD-карту). Припустимо, що у мене було завдання, яке добре підходило для паралелізації, чи краще мені буде з Пісом чи "справжнім" комп'ютером?

Чи зміниться відповідь, якби я збільшив апаратне забезпечення "справжнього" комп'ютера до чогось, що може коштувати 1000 доларів, як би цей тариф проти 20 Піс?


Pi - повільний комп'ютер з невеликим таран, але хороший Gpu. Якщо ваші завдання від цього виграють, це може мати сенс.
Thorbjørn Ravn Andersen

Графічний процесор принесе користь лише в тому випадку, якщо ви хочете зробити щось, для чого вже існує код, або якщо ви можете домовитись про доступ до фірмової документації щодо програмування GPU.
Кріс Страттон

Відповіді:


10

Якщо ви хочете проаналізувати це, вам доведеться вийти за рамки сказати 20 rpis проти $ 1000 і вирішити для себе, що ви можете реально отримати та використати за $ 1000. Зауважте, що це не канал для покупок.

Скажімо, ви можете отримати материнську плату, блок живлення, 8 ГБ оперативної пам’яті, 6-ядерний процесор 3,4 ГГц i7, а також деякий старий жорсткий диск (все ж швидше, ніж SD-карта!) За ~ 1000 доларів. Загальний цикл у секунду склав би 6 * 3,4e9 = 20,4e9, проти 20 * 0,7e9 = 14e9 для суперкомп'ютера pi.

Тепер розглянемо той факт, що багатоядерний процесор є багатоядерним процесором, тоді як піс вводу / виводу між ними (якщо це стане значущим фактором) буде на порядок повільніше.

Хоча я не маю серйозного інтересу до (або знань) пі суперкомп'ютерів, я вважаю, що вони призначені для експериментальних та навчальних цілей. Це, безумовно, дешевий кластер, але якщо ваша мета - скоротити номери швидко (на відміну від експерименту та навчання), немає ніякого способу кластеру pi, він буде більш економічним та енергоефективним, ніж звичайний ПК.


Дякую, "Загальний цикл в секунду склав би 6 * 3,4e9 = 20,4e9, проти 20 * 0,7e9 = 14e9 для суперкомп'ютера pi". в основному те, що я шукав, але не знав, що шукати.
Дін Макгрегор

Один Пі використовує лише 5 Вт. Це означає, що на 20 піс витрачається лише 100 Вт, що менше, ніж ПК, який ви описали, - це більш економічно та енергоефективно (але з меншим процесором :))
Thorbjørn Ravn Andersen

@ ThorbjørnRavnAndersen з мого досвіду, 8-ядерний i7 + SSD-накопичувач + 16 ГБ оперативної пам’яті використовують близько 50-70 Вт залежно від завантаження процесора в безголовій установці (без монітора).
lenik

Якщо ви використовуєте RPi2, кількість циклів збільшиться до 20 * 4 * 0.9e9 = 72e9, при розгоні ви навіть можете досягти 20 * 4 * 1,1e9 = 88e9 циклів на секунду. Тепер, при збільшенні обчислювальної потужності pi, чи вважаєте ви, що варто було б побудувати RPi-кластер?
Сірак

1
@goldilocks 1) Мої знання про суперкомп'ютери не годиться сперечатися про швидкість Mbps. 2) Загалом, Intel-процесор може бути швидшим, ніж набір ARMv7 за ту ж ціну. Я маю шукати статистику, щоб краще зрозуміти це. 3) На збирання ядра на RPi2 потрібні години, я спробував це, і я сподіваюся, що більше не буду це робити в майбутньому. Підводячи підсумок, RPi може бути не ідеальним вибором для суперкомп'ютера, навіть не RPi2. Але це впевнено робить хороший проект, оскільки RPi дуже дешевий, і ви можете легко комбінувати декілька з них. Я думаю про мережеве моделювання, тому що ви можете ...
Сірак

2

На це є дещо складна відповідь - ключове запитання, на яке потрібно відповісти, - "яку роботу ви просите виконати машину?"

Інструкції встановлюються на різних машинах (ARM проти Intel проти тих, хто ще), а також якість компіляторів мають велику різницю в реальній продуктивності. Якщо робота, про яку ви просите, має апаратне прискорення на одній машині, але не на іншій, саме цей фактор матиме більше значення, ніж суттєва зміна тактової частоти.

У найзагальнішому плані, я думаю, що найбільший удар по ціні / продуктивності прийде від помірного багатоядерного загального процесора від AMD або Intel. Якщо ви перебуваєте в контрольованому середовищі, де температура навколишнього середовища низька, ви, швидше за все, можете трохи розігнати ці чіпи, щоб отримати більш високу продуктивність.

RasPi, безумовно, НЕ розроблений для такого роду матеріалів, що не повинно позбавляти його високої цінності в навчанні того, як все працює, і навіть побудові справді «розподіленої» системи за дуже доступною ціною. Але якщо вам потрібно зробити серйозні дані та / або скорочення чисельності, rasPi, швидше за все, не буде правильним вибором.


1

Залишаючи осторонь недоступний процесор на pi, я не бачу, як ви збираєтеся отримувати дані до процесорів досить швидко на десятках піс, щоб побачити підвищення продуктивності, що варто докласти зусиль. Швидкість шини є важливою для кластеризованих супер обчислень, як і швидкість процесора, і пі тут дуже неадекватний.

І мережевий, і доступ до дискових мереж будуть спільними для шини USB2 60 Мб. SD-карта має, у кращому випадку, продуктивність у діапазоні швидкості 20 Мбіт.

Комп'ютерне обладнання низького рівня з SATA зі швидкістю 150 Мбайт та Ethernet на шині PCI 2 ГБ пропонують на порядок більше пропускну здатність.


3
Це повністю залежить від програми - деякі програми мають дуже високі співвідношення "робота" до "комунікації", а інші вимагають набагато більше комунікації за кількість виконаної роботи.
Кріс Страттон

0

Якщо ви хочете навчитися суперкомп'ютеру між вузлами. .. Я б встановив пі. Якщо ви хочете чогось недорогого, але потужного - купіть використаний багатоядерний Intel Server / Workstation на базі Xenon та поставте одну або декілька використаних карт Tesla або Cpu gpu (s) або картки Intel Phi.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.