Компьютеры для машинного обучения

Заметки, идеи и скрипты

Как сделать мир лучше с помощью компьютера

Конфигурация компьютера для машинного обучения. Бюджетный и оптимальный подбор.

Искусственный интеллект уже не первый год наступает на пятки естественному и делает это не в последнюю очередь за счёт роста мощности железа. Поэтому для создания современных алгоритмов ML вам скорее всего потребуется производительный компьютер. В данном посте будет предложена 2 сборки:
первая сборка ПК для ML: начинающая, рассмотрим минимальную систему с которой относительно комфортно работать, стоимостью до 30 тысяч рублей.
вторая сбалансированная цена/производительность: подороже, мощнее, позволяющая решать широкий круг задач. стоимостью 60-90 тысяч рублей.
Изначально думал выделить ещё и сборку для энтузиастов, но потом решил что те, кто готов выкладывать большие деньги на ML, те точно знают что они хотят и скорее всего будут собирать под конкретную задачу.

Процессор:
Основные показатели — количество ядер и производительность одного ядра. У Intel более быстрые ядра, зато у AMD за те же деньги вы получите больше ядер. Что важнее и где найти балланс, зависит от задач. Если будете гонять нейронки на видеокартах, то берите интел. Если хотите решать широкий круг задач, то AMD т.к. в конечном итоге при правильном распараллеливании программы расчёты будут идти бысрее. Но учтите, не всё можно распараллелить. По поводу гипертрэйдинга — он немного ускоряет систему, но в реальности не так значительно, поэтому ядра первостепенней.
Бюджетный вариант: 4-6 ядер
Средний вариант: 6-8 или более ядер с хорошим бустингом на одно ядро.

Читайте также:  Тнвд ниссан пресаж дизель схема

Оперативныя помять:
Бюджетный вариант: 16Gb
Средний: 32Gb двумя планками по 16, чтобы иметь возможность расшириться до 64 в случае необходимости. Больше 64Gb сокеты 1151-v2 и AM4 не поддерживают. Если хотите получить несколько дополнительный процентов производительности от AMD — берите более быструю память и обязательно 2ух канальную.
Много где в AI советуют чтобы количество оперативной памяти было в 2 раза больше чем видео памяти, у меня пока не сложилось конкретной рекомендации на эту тему, но оставлю это здесь.

Видеокарты:
В бюджетной сборке предлагаю обойтись вообще без видекарты (если в процессоре есть встроенная графика) или с самой дешевой, которую найдёте. Так можно сэкономить, приобретя более мощные остальные компоненты и оставляя возможность апргрейда. На ней Вы считать не будете — она только для вывода изображения на монитор и всё! Как же так, возможно кто-то спросит? Ответ простой — GPU в первую очередь нужна для нейронных сетей, но на слабой видеокарте вроде geforce 1050 скорость расчётов будет в большинстве случаев такой же как на мощном CPU. Некоторые алгритмы градиентного бустинга также умеют использовать мощь GPU, но на опыте — в сравнении с 1050 выигрыша никакого нет. А при покупке карты дороже, уже вылезем из бюджета в 30т.р.
В средней сборке видеокарта однозначно нужна и желательно помощнее. Выбор производителя однозначе — это nvidia. Стоит сразу отметить важную деталь — SLI вам никак не понадобится, tensorflow c cuda отлично распараллелены и вы можете использовать разные типы карт nvidia, вовсе не обязательно одинаковые. Однако в нейронных сетях есть такое понятие как батч (batch) и чтобы он был больше — нужно больше памяти на видеокарте. Чем больше batch тем лучше и дабы не быть ограниченным снизу слабой видеокартой по размеру batch — лучше брать видеокарты с одинаковым объёмом памяти.
Времена майнинга прошли и купить карту стало легче, брать ли БУ или нет — каждый пусть решит для себя самостоятельно. Чтобы облегчить выбор, напишу сравнительную производительность разных карт, за базу (1X) пусть выступит 1050. Это позволит вам лучше соотнести мощность с ценой и подобрать оптимум.
1050 1X
1050Ti 1.12X
1060 3Gb 1.95X
1060 6Gb 2.09X
1070 2.91X
1070Ti 3.39X
1080 3.7X
2070 3.9X
1080Ti 4.42X
2080 4.45X
2080Ti 5.79X
Меньше 4 Gb лучше не брать, может оказаться мало даже для простых задач.

Читайте также:  Мерседес актрос блок предохранителей схема

Материнская плата:
В выборе материнской плате надо знать следующее — будете ли вы разгонять процессор и сколько видеокарт планируете подключать. Я не являюсь сторонником разгона, но если Вы планируйте выжимать из системы максимум — то обратите внимание на возможность разгона. Более тонкий момент с количеством видекарт, а точнее с количеством PCI-E линий. практически все материнки поддерживают 16 линий для одной видеокарты. Проблемы начинаются при использовании большего количества видеокарт для машинного обучения. Конфигурация 8PCI-E на 8PCI-E для двух видеокарт мне кажется оптимальной для среднего решения. Но если в планах использование только одной видеокарты, то можно и сэкономить не покупая более дорогой сокет.

Жесткий диск:
Бюджетная сборка: берите HDD, скажем на террабайт. Конечно система будет загружаться медленнее чем с ssd. но его можно будет потом докупить. А если сразу выложиться на ssd — то есть опасения что не влезут большие датасеты. Учтите, что на установку всех нужных библиотек и программ вполне может уйти под 100Gb жесткого диска.
В оптимальной сборке предлагается взять SSD + HDD. Некоторые модели SSD-M2 имеют повышенную скорость чтения и записи, по сравнению с обычными SATA3 ssd но с пользовательской стороны значительного ускорения не заметно, однаком любителям топчика — SSD-M2 советую, особенно если оперативной памяти маловато — будет очень быстрый swap.

Охлаждение и корпус:
В бюджетной версии можно обойтись самым простым корпусом, а вот в оптимальном уже стоит задуматься об охлаждении видеокарт/ы и процессора. Если видеокарты всё же две и между ними мало места — то верхняя будет греться ощутимо сильнее. Одно из самый простых и действенных решения — поставить вентилятор аля 140мм сбоку, дующий сразу на видеокарты. Ещё один лайфхак — дабы пыли внутри скапливалось поменьше — рекомендуется вентиляторы на вдув ставить мощнее вентиляторов на выдув.

Читайте также:  Бортовым компьютером фольксваген поло 2011 года

Блок питания:
Основной параметр — мощность в ватах. Чтобы понять на сколько ватт нужен вам блок, рекомендую в поисковике вбить «power supply calculator» и Вы найдете несколько приятных интерфейсов для расчетов. Для самого бюджетного варианта вполне подойдёт блок на 400-500W, для систем с двумя видеокартами блока на 850W будет достаточно, 850W хватит даже для двух 2080Ti. Для одной 1080Ti или 2080Ti будет достаточно 600W. Для двух средних карт вроде 1070/2070 650/700W тоже будет достаточно. Цены на разные блоки питания скачут существенно, и параметров у них много, но обычно более дорогой блок питания оснащается большим количеством защит и если начинка стоит дорого, лучше взять блок качественнее.

Большинство компонентов можно приобрести на вторичном рынке — это будет заметно дешевле. Конечно, в покупке БУ комплектующих есть некоторый риск, но за те же деньги вы сможете получать результат вычислений быстрее. Меньше всего опасаться можно за процессоры и оперативную память, если они работают — то почти наверняка, при нормальной эксплуатации, они ещё будут работать лет десять.

Источник статьи: http://zabaykin.ru/?p=581

Компьютер для машинного обучения

В сфере Data Science мощное железо с серверным уровнем производительности – необходимый инструмент. Да и в перспективе собственные мощности обходятся куда дешевле, особенно учитывая необходимость постоянного хранения датасетов.

Выбор комплектующих

Большая часть фреймворков адаптируется под карты NVIDIA с их замечательными ядрами CUDA, которые пока никто заменить не смог. Что касается процессора, то выбор тут очевиден – Intel с максимальным количеством ядер и возможностью разгона. Так можно получить хорошую производительность в однопоточных и многопоточных вычислениях. К материнской плате также есть особые требования – это, желательно, 4 канала памяти (чтобы раскрыть потенциал процессора) и хорошее охлаждение на главных узлах питания.

Излишняя мощность не будет вам обузой. Вы всегда сможете предоставлять услуги для облачных вычислений другим специалистам, которые работают с машинным обучением. Все свободное время и даже в ваш отпуск компьютер будет приносить деньги. Хорошая система водяного охлаждения сделает работу бесшумной и позволит не прерывать процесс обучения 24/7.

Видеокарта

Производительность карты при машинном обучении напрямую зависит от скорости и объема памяти, а также от количества ядер CUDA. Такие платформы, как PyTorch, MXNet, TensorFlow, а также основанные на их принципах гибриды используют библиотеки для GPU ускорения, например, cuDNN, DALI и NCCL. Это помогает ускорить обучение с использованием одного или нескольких GPU.
В таблице – характеристики всех топовых решений от NVIDIA.

Ядра CUDA Ядра NVIDIA Tensor Ядра NVIDIA RT Количество памяти Ширина шины памяти Пропускная способность памяти Производительность FP32
Quadro GV100 5120 640 нет 32GB HBM2 4096 бит 870,4 ГБ/с 14.8 TFLOPS
Quadro RTX 8000 4608 576 72 48GB GDDR6 с ECC 384 бит 624 ГБ/с 16.3 TFLOPS
Quadro RTX 6000 4608 576 72 24GB GDDR6 384 бит 624 ГБ/с 16.3 TFLOPS
Quadro RTX 5000 3072 384 48 16GB GDDR6 256 бит 448 ГБ/с 11.2 TFLOPS
Quadro RTX 4000 2304 288 36 8GB GDDR6 256 бит 416 ГБ/с 7.1 TFLOPS
NVIDIA TITAN RTX 4608 576 72 24GB GDDR6 384 бит 672 ГБ/с 16.3 TFLOPS
RTX 2080 Ti 4352 544 68 11GB GDDR6 352 бит 616 ГБ/с 13.5 TFLOPS
RTX 2080 SUPER 3072 384 48 8GB GDDR6 256 бит 496 ГБ/с 11.2 TFLOPS

Quadro GV100

Это самый мощный графический ускоритель на данный момент, она разработана именно для обслуживания и обучения нейронных сетей. Главным преимуществом является память, ее объем и скорость доступа. Из недостатков можно выделить цену и отсутствие RT ядер.

Quadro RTX 8000

Топовое решение для инженеров, огромное количество памяти и прекрасная производительность. Недостаток – цена, не совсем оправданная для Data Science, так как вы переплатите за целый мешок технологий, созданных специально для работы с трехмерной графикой и инженерными программами.

Quadro RTX 6000, 5000, 4000

Три инженерных видеокарты с относительно высоким уровнем производительности. Цена все так же высокая. По сравнению с игровыми решениями, конечно.

TITAN RTX

Плавно подходим к оптимальным решениям для машинного обучения не инженерной направленности. По производительности эта карта сравнима с Quadro RTX 6000, но стоит в несколько раз дешевле. Причем использование двух и более TITAN RTX даст вам больше производительности, чем одна Quadro RTX 6000. Недостаток – отсутствие полноценной поддержки профессиональных драйверов и ПО от NVIDIA для инженерии и работы в трехмерной среде.

RTX 2080 Ti и 2080 SUPER

Топовые игровые видеокарты, которые оборудованы теми же аппаратными решениями, что и их профессиональные «коллеги», но драйвера больше заточены под игры. Хотя их совместимость с фреймворками не ставится под сомнение. Вывод: две RTX 2080 Ti мощнее, чем одна TITAN RTX, хотя стоимость такого решения также будет выше примерно на 1000$.

Процессор

Для машинного обучения необходимо много оперативной памяти. Чтобы ускорить доступ к ней, необходим процессор, который поддерживает четыре канала, а не 2, как в обычных пользовательских решениях. На данный момент среди не серверных решений на рынке есть прекрасный вариант – Intel Core i9. Много ядер, многопоточность, поддержка 4 каналов памяти, хорошая частота и возможность разгона.

Выбор конкретной модели – вопрос бюджета, чем больше ядер и частоты – тем лучше. Также стоит отметить, что желательно иметь возможность разгона для кратковременного увеличения мощности.

Оперативная память

Лучше всего использовать высокочастотную память DDR4, она не такая дорогая и даст вам хороший прирост мощности. 4 канала на процессоре – значит, 8 слотов на материнской плате. Минимум, который стоит ставить на компьютер для машинного обучения, – это 32 Gb, но чем больше – тем лучше. Лучше занять все слоты, чтобы обеспечить каждому ядру процессора максимально быстрый доступ к памяти. Максимально возможный объем памяти для i9 – 256 Gb.

Быстрый доступ к датасетам нужно обеспечить, чтобы работа накопителя не замедляла остальные элементы компьютера. Новые SSD m.2 дают возможность доступа к данным на скорости до 3,5 Gb в секунду. Не обязательно хранить на них всю информацию, можно поставить один SSD и расширить объем памяти дополнительным HDD. Причем необязательно ставить HDD в систему, можно подключить его к локальной сети, снабдив статичным IP адресом, и вы сможете получить к нему доступ с любого устройства, подключенного к интернету.

Решения от HYPERPC

HYPERPC PRO T

HYPERPC PRO T – это серия рабочих станций, основанная на картах NVIDIA TITIAN RTX.

HYPERPC PRO T5 STUDIO – базовая модель линейки. Она работает на базе процессора Intel® Core™ i9-10980XE, это 18 ядер и 36 потоков на частоте 3000 МГц в штатном режиме и до 4800 МГц с функцией Turbo Boost. Материнская плата ASUS WS X299 SAGE имеет 8 слотов памяти, которая работает в четырехканальном режиме. Стандартная сборка оборудована 64 Gb памяти (16GB HyperX Predator RGB DDR4-3200), что позволяет оставить свободным 4 слота под будущий апгрейд. Тут установлено два накопителя – 2TB HYPERPC PRO M.2 и 8TB Seagate BarraCuda, а это быстрый доступ к данным и неограниченное пространство для хранения результатов вашей работы.

HYPERPC PRO T9 STUDIO – флагманская модель серии, оборудованная топовым процессором AMD Ryzen Threadripper 3970X, который обладает серверным уровнем производительности. 32 ядра и 64 потока с частотой 3700 МГц на стандартном множителе и до 4500 МГц в режиме Turbo Boost. Отличительная черта данной модели – две установленные карты MSI GeForce RTX 3090 GAMING X TRIO, соединенные мостом NV LINK. В этом компьютере максимально возможное количество оперативной памяти – 256 Gb, это 8 плашек по 32 Gb HyperX Fury DDR4-3200.

Источник статьи: http://hyperpc.ru/for-buyers/faq-and-articles/articles/workstations/pc-for-data-science

Оцените статью
Все про машины