Як слід вивчити створення та програмування систем HPC?


16

Я в галузі, яка не обов'язково робить велику роботу з HPC, і коли вона стикається, часто це результат дослідників з інших галузей, які вивчають нові програми для їх методів тощо. Перш за все, це означає, що він ніколи насправді не впроваджується в процесі навчання, або багато виховується на семінарах, семінарах тощо - це можливо зробити всю свою кар’єру, не потребуючи цього.

В той же час, велика частина роботи, яку я роблю, могла б отримати користь від кращого використання доступних мені ресурсів HPC - переважно у вигляді чудово паралельних моделювань Монте-Карло.

Моя проблема полягає в пошуку ресурсів для того, щоб навчитися користуватися кластерами, MPI і т. Д. І відокремлювати добро від поганого, якщо я не знаю багато.

Будь-які пропозиції щодо книг або щодо програмування для таких типів систем, або щодо створення та роботи дуже скромних налаштувань HPC?


Чи має це мати щось на зразок тегу "великий список"?
шухало

@Martin: ні. У ньому повинні бути відповіді людей, які насправді це зробили і знають, про що вони говорять, а не гігантський перелік усього, що може бути пов’язане. Змінено заголовок, щоб відобразити це.
Shog9

Відповіді:


13

Перевірте університет HPC . Зокрема, розділ ресурсів , який включає такі речі

і багато іншого.

Існує багато програм вищої освіти, які включають курси з HPC . Як приклад, моя власна програма включає курси в

  • Високопродуктивні обчислення (2 семестри)
  • Парадигми паралельного програмування
  • Наукова інженерія програмного забезпечення
  • Програмування GPU та GPGPU

а також різноманітні курси наукових обчислень та чисельного аналізу.


4

Мій особистий досвід полягає в тому, що HPC вимагає такого широкого набору навичок, що це зробити дуже важко лише за одну книгу, рецепт, університетський курс. Подумайте, що HPC не в тому, щоб програмувати великі машини або будувати кластер, а скоріше вирішувати великі наукові проблеми на кровотоці обчислення.

Я не впевнений, що всі згодні, але я думаю, що перелік областей, що беруть участь у HPC, може бути:

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

У моєму випадку я почав з одного куточка інженерії та повільно розвивав досвід та мережу співпраці. На самому початку у мене була одна інженерно-прикладна математична задача, яку я хотів вирішити, звідти я перейшов до програмування, до отримання більшої продуктивності за допомогою більш потужних комп'ютерів, чисельного аналізу, досконалих алгоритмів, паралельних комп'ютерів, паралельних алгоритмів , до ще більших комп’ютерів, до більш повної наукової моделі, а зрештою, до нової проблеми і знову повторювалася. Якщо я озирнусь назад, намагаючись зрозуміти та вирішити свою першу проблему, було те, що склав мій план навчання. Маючи керівника, який може тримати вас на правильному шляху, також дуже допомагає, інакше будьте обережні, щоб не втратити з поля зору свою кінцеву мету (у моєму випадку це була проблема науки, яку я мав під рукою).

Якщо я маю назвати одне, що насправді має значення, коли йдеш по шляху HPC - це зустрічатися з людьми з інших областей, обмінюватися ідеями та скористатися поширеними знаннями громади. Також важливо не надто боятися бути відкрито наївними і робити дурні речі. Перші кроки завжди важкі і найважливіші!


2

Це мій план викладання себе деяким фундаментам HPC цієї весни. Я був розробником протягом останніх півтора десятиліть і працюю виключно з технологіями Microsoft. Я також студент, тому я можу безкоштовно придбати програмне забезпечення через MSDN Academic Alliance(у вашому профілі вказано, що ви студент випускника, тому вам слід перевірити, чи бере участь ваша школа), а обмежувальним фактором є звільнення місця для речей вдома. У моєму офісі / den / ManCave вже є декілька комп’ютерів, тому я вже можу перевірити деякі речі. HPC Windows Server 2008 вказаний у деяких доступних пакетах, але він, здавалося, зник із завантажуваного програмного забезпечення моєї школи протягом минулого семестру ("кластерний пакет обчислень" є додатком для сервера 2003 року, тоді як сервер 2008 hpc поставляється зі знятою версією сервера 2008, за допомогою ccp вам потрібно буде відключити послуги, які вам не потрібні).

Моя запланована топологія - це "Кластер з включеним SOA", який є четвертим зображенням на цій сторінці (натисніть на крихітні квадрати під основним малюнком). У мене вже є Active Directory та деякі інші сервери, які вже налаштовані, тому я думаю про отримання 4 дешевих комп’ютерів з невеликим форм-фактором Dell від eBay (оновлення Dell 655 SFF працює на $ 100-200). Оскільки я намагаюся лише вивчити деякі речі, я вважаю, що мені потрібні лише "головний вузол", "брокерський вузол" та 2 "обчислювальні вузли" та кілька запасних карт Ethernet, щоб побачити, що приватні та додаткові шини (з цього зображення ) робити. Ліцензія MSDNAA дозволяє до 16 обчислювальних вузлів, що набагато більше, ніж я шукаю.

Я читав комп'ютерні комп'ютери Beowulf Cluster Computing з Windows , і думаю, що в мене є уявлення проти чого я проти деяких ідей в офісі (є Linux версія книги, але я маю 0 навичок / платформ Linux вдома - робіть те, що підходить саме вам). В офісі є велика кількість великих кластерів , але вони вже насичені, і навчальні інтервали "Я хочу / потрібно вивчити Х" дуже важко отримати. Один, як очікується, знати речі, перш ніж можна буде подати завдання.

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