NeuroPro | нейронные сети |
|
Главная Новости Услуги Нейронные сети Программы Статьи Заметки Ссылки Вопросы и ответы Об авторе / контакты |
Нейрокомпьютеры из видеокартВ последние годы практически прекратились продажи специализированных нейрокомпьютеров: рост мощности персональных компьютеров и суперкомпьютеров позволил использовать программную эмуляцию - нейропрограммы, а нейрокомпьютеры и нейропроцессоры применяют только для отдельных задач. Но научно-инженерная мысль двигается, в журналах и материалах конференций по нейронным сетям продолжают появляться работы с описанием новых электронных реализаций нейрокомпьютеров, нейропроцессоров, нейронных сетей. Однако, могут получить распространение нейровычисления на обычных графических ускорителях (видеокартах, GPU) персональных компьютеров. Массовость рынка видеокарт делает массовым и потенциальный рынок тех нейропрограмм, которые будут переносить нейровычисления с обычного процессора на процессор видеоплаты или одновременно использовать оба эти процессора. И цены на такие программы-нейроэмуляторы должны быть на относительно невысоком уровне. Теперь о потенциальной производительности нейрокомпьютеров-видеокарт. Мысль об этом у меня возникла в начале 2005г, когда стало понятно, что вскоре относительно бюджетные цены в $100-200 получат видеокарты с 8-12 пиксельными конвейерами (и на момент написания заметки это именно так), а рост числа пиксельных и вершинных конвейеров станет одним из главных способов повышения производительности видеосистемы. Так, выпускаемый сейчас (весной 2006г) на рынок фирмой ATI их лидирующий графический процессор X1900 имеет аж 48 пиксельных конвейеров - года через два он или его потомки вполне смогут подешеветь до привлекательного уровня цен. Плюс обкатанные в 2005г технологии SLI и CrossFire (одновременная работа двух видеокарт в компьютере, с автоматическим аппаратным распараллеливанием расчетов между ними) также обеспечивают повышение производительности видеосистемы. Можно вспомнить и про постоянный рост объемов собственной памяти видеокарт. Конечно, сложно по соотношению частот обычного и графического процессоров и по числу конвейеров точно оценить возможный коэффициент ускорения - но результаты указанных ниже работ демонстрируют ускорение в разы и более. Соответственно, с ростом числа конвейеров графического процессора потенциал параллельности вычислений (внутренняя параллельность вычислений - отличительное свойство нейросетей) делает перспективным перенос многих ресурсоемких нейроалгоритмов с центрального процессора на видеокарту. Видеокарта, таким образом, выступает в роли нейрокомпьютера, изначально встроенного в персональный компьютер. Дело остается за написанием программ. Стоит отметить, что при этом смогут использоваться и относительно нетрадиционные решения - например, замена вычислений с плавающей запятой на вычисления с использованием целочисленных операндов (фиксированная запятая или реально целочисленные аргументы). Но теоретическая и практическая база для этого уже накоплена при разработке моделей нейросетей и способов нейровычислений для многих из созданных ранее нейрокомпьютеров и нейропроцессоров (которые блоков вычислений с плавающей запятой не имели). Использование графических плат для общевычислительных целей (например, для реализации методов линейной алгебры, Фурье-преобразований) уже набрало обороты за последние годы - см., например, [1-3]. Формируется и достаточно активный поток работ по переносу на GPU нейросетевых и околонейросетевых алгоритмов - см. соответственно [4-9] и [10,11]. Будем следить за результатами и подумывать о поддержке этого направления.
|