Выбирай : Покупай : Используй
в фокусе
0

Изобретатель нашел способ превратить видеокарту в суперкомпьютер

Программист создал машинный язык, который позволяет эффективно использовать графические процессоры для разнообразных вычислений. Это открывает широкие возможности, например по созданию «настольного» суперкомпьютера.

Графические процессоры, GPU, в наших персональных компьютерах выполняют одну функцию – отвечают за обработку графики. Но эти крошечные чипы могут использоваться гораздо шире, например компания Google использует графические процессоры для моделирования человеческого мозга, также с и помощью проводится анализ сообщений в Twitter.


Графические процессоры гораздо эффективнее обычных при обработке больших массивов данных, но до сих пор их широкое использование упиралось в сложность разработки соответствующего ПО

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

И тут кроется главный подводный камень: программирование вычислений для GPU требует от программиста множества трудоемких операций низкоуровневого программирования.

К счастью, специалист в области информатики Эрик Холк (Eric Holk) из Университета Индианы разработал новый язык программирования, который позволяет быстро создавать высокоэффективные программы для GPU. Новый язык программирования называется Harlan, он берет на себя трудоемкое низкоуровневое программирование и позволяет создавать эффективное ПО для GPU. Эрик Холк подчеркивает, что графические процессоры имеют гораздо большую пропускную способность, чем центральные процессоры, благодаря чему GPU лучше работают при выполнении относительно простых вычислений, но в больших объемах данных. Подобные вычисления обычно выполняются на суперкомпьютерах, где моделируются сложнейшие системы, состоящие из огромного множества относительно простых процессов. Холк утверждает, что CPU и GPU, в конечном счете сольются в один высокопроизводительный универсальный процессор, а пока будут востребованы оба типа устройств, причем у GPU есть большой нереализованный потенциал.

Синтаксис Harlan основан «диалекте» Scheme языка программирования Lisp, который был создан в 1958 году исследователем проблем искусственного интеллекта Джоном Маккарти. Также, Эрик Холк разработал и более привычный вариант языка для программирования GPU, основанный на Rust - языке, разработанном программистами Mozilla специально для низкоуровневых систем. Harlan намного более мощный инструмент и может генерировать более эффективный и сложный код, а Rust - более практичен и удобен.

Комментарии