You can edit almost every page by Creating an account. Otherwise, see the FAQ.

Гетерогенні обчислення

Матеріал з EverybodyWiki Bios & Wiki
Перейти до:навігація, пошук

Гетерогенні обчислювальні системи — електронні системи, що використовують різні типи обчислювальних блоків. Обчислювальними блоками такої системи можуть бути процесор загального призначення (GPP), процесор спеціального призначення (наприклад, цифровий сигнальний процесор (DSP) або графічний процесор (GPU)), співпроцесор, логіка прискорення (спеціалізована інтегральна схема (ASIC) або програмується користувачем вентильна матриця (FPGA)).

Загалом, гетерогенна обчислювальна платформа містить процесори з різними наборами команд (ISA). Попит на підвищення гетерогенності в обчислювальних системах, частково пов'язаний з необхідністю в високо-продуктивних, високо-реакційних системах, які взаємодіють з іншим оточенням. У минулому, технологічні досягнення і масштабованість частоти дозволяли більшості комп'ютерних програм збільшувати продуктивність без структурних змін або апаратного прискорення. Хоча ці досягнення зберігаються, їх вплив на сучасні програми не так значно, як вплив деяких перешкод, таких як стіна пам'яті і стіна потужності. Тепер, з цими додатковими обмеженнями, основним методом отримання додаткової продуктивності обчислювальних систем є введення додаткових спеціалізованих ресурсів, в результаті чого обчислювальна система стає гетерогенною. Це дозволяє розробнику використовувати кілька типів обчислювальних елементів, кожен з яких здатний виконувати завдання, які найкраще для нього підходять. Додавання додаткових, незалежних обчислювальних ресурсів неминуче призводить до того, що більшість гетерогенних систем розглядаються як паралельні обчислення або багатоядерні системи. Ще один термін, який іноді використовується для цього типу обчислень «гібридні обчислення». (Помилка скрипту: Не існує модуля «lang».) — форма гетерогенних обчислень, в якій асиметричні обчислювальні пристрої співіснують в одному процесорі.[1]

Багатоядерні системи[ред.]

Протягом 30 років одним з основних методів підвищення швидкодії настільних комп'ютерів було збільшення тактової частоти процесора, а для цього потрібно було зробити основний осередок — комплементарну пару транзисторів (технологічний процес) як можна більш швидкодіючою, або якомога менших розмірів. Причому швидкодія осередку тим вище, чим тонше технологічний процес. Минуло 30 років — і тепер тактова частота процесорів в більшості настільних комп'ютерів складає від 1 до 4 ГГц. У 2005 році, коли стало зрозуміло, що подальший швидкий ріст тактової частоти CPU проблематичний, виробники CPU стали пропонувати процесори з двома обчислювальними ядрами замість одного. На даному етапі, гонка за зменшенням розміру осередку все ще триває. Але тепер її метою стало розмістити якомога більшу кількість осередків на кристалі, для отримання можливості ускладнення структури процесора (у тому числі збільшення кількості ядер та обсягу кешу) що дозволяє збільшити продуктивність. Друга причина — зниження споживаної ключем і відповідно процесором потужності. Істотне зростання тактових частот зупинилось. У подальшому виробники почали випускати CPU з трьома, чотирма, шістьма і вісьмома ядрами. Відбулася так звана багатоядерна революція.

Відмінності архітектур CPU і GPU[ред.]

Розробники CPU намагаються досягти виконання якомога більшої кількості інструкцій паралельно, для збільшення продуктивності. Для цього, починаючи з процесорів Intel Pentium, з'явилося суперскалярне виконання, що забезпечує виконання двох інструкцій за такт, а Pentium Pro відзначився позачерговим виконанням інструкцій. Але у паралельного виконання послідовного потоку інструкцій є певні базові обмеження, тому збільшенням кількості виконавчих блоків кратного збільшенню швидкості не досягти.

Текст вилучений зі статті через підозру в порушенні авторських прав

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

https://works.doklad.ru/view/wLI8tv9_4s0.html



Тому, хто поставив цей шаблон:
на сторінку обговорення користувача, який розмістив цю статтю, чи додав текст з порушенням авторського права, варто додати повідомлення {{subst:Nothanks tr|Гетерогенні обчислення|url=https://works.doklad.ru/view/wLI8tv9_4s0.html }} --~~~~.


Увага До уваги користувача, який розмістив цю статтю

Не редагуйте статтю зараз, навіть якщо ви збираєтеся її переписати. Додержуйтеся вказівок нижче.

  1. Напишіть хоча б гарний накид статті на цій підсторінці. Зверніть увагу: не треба копіювати текст, що порушує авторські права, на зазначену підсторінку й редагувати його. Якщо ви взялися за написання нової статті, не забудьте сповістити про це на сторінці обговорення.
  2. Залиште все як є, і тоді стаття буде вилучена.

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

Вихідний текст цієї статті з можливим порушенням копірайту можна знайти в історії змін.

Зверніть увагу, що розміщення у Вікіпедії матеріалів, включаючи дослівний переклад, автор яких не надав явного дозволу на їхнє використання відповідно до ліцензії GNU FDL без незмінюваних секцій та Creative Commons із зазначенням автора / розповсюдження на тих самих умовах, може бути порушенням законів про авторське право. Користувачі, які додають до Вікіпедії такі матеріали, можуть бути тимчасово позбавлені права редагувати статті.

Незважаючи ні на що, ми завжди раді вашим оригінальним статтям.

Дякуємо.


[2]

Історія розвитку GPU[ред.]

Текст вилучений зі статті через підозру в порушенні авторських прав

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

https://studylib.ru/doc/135296/sokolova_i.__o._var_14x



Тому, хто поставив цей шаблон:
на сторінку обговорення користувача, який розмістив цю статтю, чи додав текст з порушенням авторського права, варто додати повідомлення {{subst:Nothanks tr|Гетерогенні обчислення|url=https://studylib.ru/doc/135296/sokolova_i.__o._var_14x }} --~~~~.


Увага До уваги користувача, який розмістив цю статтю

Не редагуйте статтю зараз, навіть якщо ви збираєтеся її переписати. Додержуйтеся вказівок нижче.

  1. Напишіть хоча б гарний накид статті на цій підсторінці. Зверніть увагу: не треба копіювати текст, що порушує авторські права, на зазначену підсторінку й редагувати його. Якщо ви взялися за написання нової статті, не забудьте сповістити про це на сторінці обговорення.
  2. Залиште все як є, і тоді стаття буде вилучена.

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

Вихідний текст цієї статті з можливим порушенням копірайту можна знайти в історії змін.

Зверніть увагу, що розміщення у Вікіпедії матеріалів, включаючи дослівний переклад, автор яких не надав явного дозволу на їхнє використання відповідно до ліцензії GNU FDL без незмінюваних секцій та Creative Commons із зазначенням автора / розповсюдження на тих самих умовах, може бути порушенням законів про авторське право. Користувачі, які додають до Вікіпедії такі матеріали, можуть бути тимчасово позбавлені права редагувати статті.

Незважаючи ні на що, ми завжди раді вашим оригінальним статтям.

Дякуємо.

Цей підхід передбачає розбиття програми на відносно невеликі етапи (ядра), які обробляють елементи потоків даних. Ядра відображаються на шейдери, а потоки даних — на текстури в GPU.[3]

Застосування обчислень на GPU[ред.]

Необхідно відзначити, що за призначенням обчислення на GPU нічим не відрізняються від обчислень на CPU. Але в окремих областях обчислень на багато перевершують в продуктивності універсальні процесори. Нижче описані кілька областей успішного застосування обчислень на GPU.

Медицина: Компанія TechniScan впроваджує в практику перспективну методику тривимірного ультразвукового сканування. В системі ультразвукового сканування компанія TechniScan використовує GPU Tesla від компанії NVIDIA для покращення можливостей лікарів з прогнозування та діагностики раку молочної залози на ранніх стадіях, причому більш точно, ніж традиційні методи. Американський національний інститут з вивчення ракових захворювань повідомив про 12х прискоренні при використанні CUDA для обчислень зв'язування протеїнів, що використовуються для розробки нових ліків від таких хвороб як рак або хвороба Альцгеймера.[4]

Індустрія: Компанії, подібні OptiTex, використовують CUDA для розробки одягу для споживчого ринку. Автомобільні компанії створюють дизайн машин наступного покоління з допомогою трасування променів на GPU, використовуючи CUDA. Компанії виробники чистячих засобів та засобів гігієни застосовують GPGPU для моделювання молекул своїх продуктів. Так, промисловий гігант Procter Gamble спільно з університетом Темпл працюють над моделюванням взаємодії молекул поверхнево-активних речовин з брудом, водою та іншими матеріалами.

Мультимедіа: Завдання конвертації відео на портативні пристрої тепер набагато зручніше і швидше завдяки додатку Badaboom від компанії Elemental. Тести показують, що стандартний півторагодинний фільм на ньому із застосуванням технології CUDA конвертується в формат iPod / iPhone менш ніж за двадцять хвилин. І це при тому, що на CPU цей процес займає більше години. Технологія NVIDIA PhysX — симуляція фізичних законів для ігор і комп'ютерної анімації. Статистично було доведено, що, який би складний рендеринг не виконував GPU, частина його ядер все одно простоює. Саме на цих ядрах і працює рушій PhysX. Завдяки CUDA величезна частка обчислень, пов'язаних з фізикою ігрового світу, стала виконуватися на відеокарті. За оцінками експертів, приріст продуктивності ігрового процесу з PhysX, працюючому, на CUDA зріс мінімум на порядок. CUDA бере на себе рутинний розрахунок реалізації тертя, тяжіння і інших звичних нам речей для багатовимірних об'єктів. Сучасні ігри виглядають дуже реалістично. Завдяки розробникам текстур.

Текст вилучений зі статті через підозру в порушенні авторських прав

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

http://www.lki.ru/text.php?id=5942&print



Тому, хто поставив цей шаблон:
на сторінку обговорення користувача, який розмістив цю статтю, чи додав текст з порушенням авторського права, варто додати повідомлення {{subst:Nothanks tr|Гетерогенні обчислення|url=http://www.lki.ru/text.php?id=5942&print }} --~~~~.


Увага До уваги користувача, який розмістив цю статтю

Не редагуйте статтю зараз, навіть якщо ви збираєтеся її переписати. Додержуйтеся вказівок нижче.

  1. Напишіть хоча б гарний накид статті на цій підсторінці. Зверніть увагу: не треба копіювати текст, що порушує авторські права, на зазначену підсторінку й редагувати його. Якщо ви взялися за написання нової статті, не забудьте сповістити про це на сторінці обговорення.
  2. Залиште все як є, і тоді стаття буде вилучена.

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

Вихідний текст цієї статті з можливим порушенням копірайту можна знайти в історії змін.

Зверніть увагу, що розміщення у Вікіпедії матеріалів, включаючи дослівний переклад, автор яких не надав явного дозволу на їхнє використання відповідно до ліцензії GNU FDL без незмінюваних секцій та Creative Commons із зазначенням автора / розповсюдження на тих самих умовах, може бути порушенням законів про авторське право. Користувачі, які додають до Вікіпедії такі матеріали, можуть бути тимчасово позбавлені права редагувати статті.

Незважаючи ні на що, ми завжди раді вашим оригінальним статтям.

Дякуємо.


[5]

Наука: Проблема паралелізації алгоритму на безліч потоків з метою адаптації для GPU. Це адже сама по собі наукова задача, які алгоритми і методи можна успішно розпаралелити і провести на GPU. На цю тему було захищено безліч дисертацій та випущено безліч наукових досліджень. Використання паралельної архітектури NVIDIA GPU дозволяє отримувати чудові результати при роботі з додатками в сфері молекулярної динаміки. Адже віруси, збудники багатьох хвороб, є найменшими відомими живими організмами на планеті. У силу простоти будови і маленького розміру вірусів дослідники в галузі обчислювальної біології вибрали їх для своєї першої спроби створити повну модель форми життя за допомогою комп'ютера, вибравши для своїх експериментів один з найбільш крихітних вірусів — вірус тютюнової мозаїки. Вони використовували програму під назвою NAMD (Nanoscale Molecular Dynamics), розроблену Університетом Іллінойсу в Урбані-Шампейн, для моделювання вірусу у краплі солоної води. Робота NAMD була прискорена майже в 12 разів завдяки CUDA і в цілому показала приріст швидкості в 330 разів у порівнянні з одноядерним CPU при запуску на кластері з GPU-прискоренням в Національному центрі суперкомп'ютерних додатків (NCSA). У кількох проектах гідродинаміки, що використовують моделі Нав'є-Стокса і «метод решіток Больцмана», було відзначено значне прискорення завдяки GPU з підтримкою CUDA. Протягом багатьох років завдання проектування ефективних гвинтів і лопаток знаходилося в застої. Неймовірно складний рух повітря і рідини, що обтікають ці пристрої, неможливо досліджувати на простих моделях, а точні моделі виявляються занадто ресурсоємними з обчислювальної точки зору. Лише самі потужні суперкомп'ютери могли запропонувати ресурси, достатні для обрахунку чисельних моделей, необхідних для розробки та перевірки конструкції. Дослідники з Кембриджського університету отримали колосальну перевагу в продуктивності за рахунок використання CUDA. В результаті застосування дешевих GPU-кластерів принципово змінило підхід до проведення досліджень. Майже інтерактивне моделювання відкрило нові можливості для новаторських ідей в області, яка раніше страждала від застою. Також ведуться більш ефективні роботи з моделювання погодних явищ і океанічної поверхні планети з використанням GPU.

Примітки[ред.]

  1. B. Chapman, P. Mehrotra, H. Zima. Extending HPF for advanced data-parallel applications. IEEE Parallel and Distributed Technology, 1994.
  2. B.M. Maggs, L. R. Matheson, R. E. Tarjan, Models of parallel computation: a survey and synthesis. HICSS, 1995.
  3. D. Y. Cheng. A survey of parallel programming languages and tools. Moffett Field, 1993.
  4. Ian Foster. Designing and Building Parallel Programs. Addison-Wesley, 1995.
  5. Jonathan M. D. Hill. An introduction to the data-parallel paradigm. Department of Computer Science, 1994.



This article "Гетерогенні обчислення" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Гетерогенні обчислення.



Read or create/edit this page in another language[ред.]