Найти в Дзене
Цифровой директор

Полное руководство по оборудованию для глубокого обучения

Глубокое обучение требует высоких вычислительных мощностей – а значит, вам понадобится быстрый процессор со множеством ядер. Или это расточительство? Худшее, что вы можете сделать, собирая компьютер для глубокого обучения – это спустить деньги на то “железо”, что на самом деле не нужно. В этой статье, шаг за шагом, мы пройдём по всему многообразию оборудования, которое будет необходимо для того, чтобы собрать недорогую высокопроизводительную машину. За долгие годы Тим Деттмерс собрал 7 рабочих систем для глубокого обучения и, несмотря на очень тщательное исследование и обоснование решений, совершил множество ошибок в выборе аппаратных компонентов. Приводим перевод статьи, где Тим делится тем опытом, что накопил в течение этих лет, чтобы вы не повторяли его ошибок. Статья упорядочена по серьёзности ошибок: первыми идут те компоненты, на которых люди обычно теряют больше всего денег. GPU Графический процессор – это сердце приложений глубокого обучения – улучшение скорости обработки слишк
Оглавление

Глубокое обучение требует высоких вычислительных мощностей – а значит, вам понадобится быстрый процессор со множеством ядер. Или это расточительство? Худшее, что вы можете сделать, собирая компьютер для глубокого обучения – это спустить деньги на то “железо”, что на самом деле не нужно. В этой статье, шаг за шагом, мы пройдём по всему многообразию оборудования, которое будет необходимо для того, чтобы собрать недорогую высокопроизводительную машину.

За долгие годы Тим Деттмерс собрал 7 рабочих систем для глубокого обучения и, несмотря на очень тщательное исследование и обоснование решений, совершил множество ошибок в выборе аппаратных компонентов. Приводим перевод статьи, где Тим делится тем опытом, что накопил в течение этих лет, чтобы вы не повторяли его ошибок.

Статья упорядочена по серьёзности ошибок: первыми идут те компоненты, на которых люди обычно теряют больше всего денег.

GPU

Графический процессор – это сердце приложений глубокого обучения – улучшение скорости обработки слишком велико, чтобы его игнорировать.

Подробный разбор содержится в одном из предыдущих постов автора. Выбор GPU – один из самых важных выборов во всей системе. Здесь вы можете совершить три основные ошибки: (1) плохое соотношение цена/производительность, (2) недостаток памяти, (3) плохое охлаждение.

По критерию хорошего соотношения цены и производительности, обычно рекомендуются модели RTX 2070 или RTX 2080 Ti. Если вы пользуетесь ими, надо работать с 16-битными моделями. Или же, GTX 1070, GTX 1080, GTX 1070 Ti и GTX 1080 Ti – но только для 32-битных моделей.

Будьте внимательны с требованиями к видеопамяти при выборе GPU. За счет 16-битности на картах RTX можно обучать в два раза более крупные модели, чем на GTX с тем же объёмом памяти. Таким образом, RTX имеют большое преимущество по памяти. Если вы выберете именно их и овладеете искусством работы с 16-битными моделями, это сослужит вам хорошую службу.

В целом, требования к памяти примерно следующие:

  • Для исследований, нацеленных на мировые рекорды >=11 GB
  • Для исследований, где цель – это интересные архитектурные решения >=8 GB
  • Любые другие исследования: 8 GB
  • Kaggle: 4 – 8 GB
  • Стартапы: 8 GB (но проверьте конкретную область применения для моделей разных размеров)
  • Бизнес: 8 GB для прототипирования, >=11 GB для обучения

Другая проблема, достойная внимания особенно, если вы покупаете несколько карт RTX – это охлаждение. Если вы планируете устанавливать видеокарты в слоты PCIe, расположенные рядом – убедитесь, что вы выбрали GPU с системой охлаждения закрытого типа. Перегрев может доставить много проблем – ваши GPU будут работать до 30% медленнее и быстрее выйдут из строя.

Фотографии подозреваемых
Фотографии подозреваемых

Как определить, что именно стало причиной низкой производительности? Одна из этих видеокарт? А может быть, центральный процессор?

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

Основная ошибка в выборе ОЗУ – это покупка памяти со слишком высокой тактовой частотой. Следующая по списку – объём купленной ОЗУ недостаточен для комфортной работы.

Необходимая тактовая частота памяти

Тактовая частота ОЗУ – это маркетинговая уловка, убеждающая вас купить “более быструю” ОЗУ, ничем не выделяющуюся по производительности. Этот аспект очень хорошо прояснён в видео Linus Tech Tips “Does RAM speed REALLY matter?

Более того, важно знать, что скорость ОЗУ не имеет практически никакого значения для скорости передачи между ЦПУ и GPU. Это связано с тем, что (1) если вы используете так называемую pinned memory, ваши батчи передаются в GPU без использования ЦПУ, а (2) если вы не используете её, разница в производительности “быстрых” и “медленных” ОЗУ колеблется в районе 0-3%. Потратьте деньги на что-нибудь другое.

Объем оперативной памяти

Объем ОЗУ никак не влияет на производительность глубокого обучения. Однако, он может создать неудобства в выполнении кода GPU (чтобы исключить обращение к HDD). Оптимально иметь объём ОЗУ не меньший, чем объём видеопамяти самой большой из используемых GPU. Например, если у вас установлена Titan RTX с памятью 24 гб, вы должны иметь как минимум 24 гб ОЗУ. Однако, если у вас есть другие видеокарты, вам вовсе не обязательно понадобится больше оперативной памяти.

Если вы ориентируетесь на соответствие объема ОЗУ с объемом памятью самой большой GPU, может возникнуть одна проблема: всё ещё может не хватать ОЗУ при обработке больших датасетов. Лучше всего в этом случае – подбирать ОЗУ под требования GPU, а если оперативной памяти не хватает, её всегда можно докупить.

Другая стратегия продиктована психологией. Она сообщает, что концентрация внимания – это исчерпаемый ресурс, который постепенно истощается. ОЗУ – одна из немногих “железок”, которая позволяет сохранить вашу концентрацию для более важных задач программирования. Вместо того, чтобы тратить время на оптимизацию использования оперативной памяти, вы можете просто поставить больше ОЗУ и расходовать свою концентрацию на куда более насущные проблемы. С большим количеством памяти, вы можете избежать узких мест, сохранить время и повысить продуктивность в решении сложных задач. В соревнованиях Kaggle часто полезна дополнительная ОЗУ для для анализа и генерации значащих признаков (feature engineering). Таким образом, если у вас есть деньги и надо делать много предобработки, то дополнительная ОЗУ – это хороший выбор. Эта стратегия предполагает, что вам нужно как можно больше дешёвой оперативной памяти – прямо сейчас, а не потом.

Центральный процессор

Основная ошибка, которую совершают многие – переоценка важности шин ввода-вывода PCIe. Вы не должны о них думать – вместо этого лучше перепроверьте, поддерживают ли ваш центральный процессор и материнская плата то количество видеокарт, которое вы хотите использовать. Вторая по распространённости ошибка – это выбор слишком мощного центрального процессора.

Центральный процессор и PCI-Express

Люди сходят с ума по шинам PCIe! Однако, они практически никак не влияют на результаты глубокого обучения. Если у вас всего одна видеокарта, шина PCIe нужна только для того, чтобы быстро перенести данные с ОЗУ центрального процессора на ОЗУ GPU. Впрочем, на передачу батча ImageNet, состоящего из 32 изображений (32х225х225х3) при 32-битной модели , необходимо:

  • 1 миллисекунда с 16 линиями
  • 2.3 миллисекунды с 8 линиями
  • 4.5 миллисекунд с 4 линиями.

Это теоретические цифры, на практике чаще оказывается, что PCIe работают в два раза медленнее – но это всё ещё молниеносно. Шины PCIe часто имеют задержку в наносекундном диапазоне, которую можно проигнорировать.

Обобщая вышесказанное, для батча из 32 изображений ImageNet и ResNet-152 тайминг будет таким:

  • Проход туда-обратно: 216 миллисекунд (мс)
  • 16 линий PCIe, передача ЦПУ->GPU: около 2 мс (1.1 мс в теории)
  • 8 линий PCIe передача ЦПУ->GPU: около 5 мс (2.3 мс)
  • 4 линий PCIe передача ЦПУ->GPU: около 9 мс (4.5 мс)

Таким образом, переход от 4 линий на 16 даст вам примерно 3.2% преимущества в производительности. Однако, если вы используете PyTorch’s data loader вместе с pinned memory, вы добавите ровно 0% производительности. Так что, если вы используете один GPU, не переплачивайте за PCIe.

Когда вы выбираете шины PCIe центрального процессора и PCIe материнской платы – убедитесь, что вы собрали комбинацию, которая поддерживает желаемое количество GPU. Если вы покупаете материнскую плату, которая поддерживает 2 GPU и в конечном итоге вам столько и нужно, убедитесь, что вы покупаете центральный процессор, который поддерживает 2 GPU – обращать внимание на PCIe при этом необязательно.

Шины PCIe и параллельность нескольких GPU

Важны ли PCIe, если вы обучаете нейронные сети на нескольких GPU, с распараллеливанием данных? Тим опубликовал статью об этом на ICLR2016 – можно с уверенностью сказать, что если у вас подключено 96 GPU, PCIe очень-очень важны. Но если у вас 4 GPU или меньше, это не так важно. Если вам нужно распараллелить 2-3 GPU, о PCIe можно вообще не волноваться. Если у вас 4 GPU, стоит удостовериться, чтобы каждый поддерживал по 8 линий PCIe (всего 32 линии). Поскольку, как правило, практически никто не использует систему с более чем 4 GPU: не тратьте лишние деньги, чтобы получить больше PCIe на каждый GPU – это не так важно!

Необходимое количество ядер процессора

Чтобы принять мудрое решение, нам для начала необходимо понять, что такое ЦПУ и как он связан с глубоким обучением. ЦПУ мало вычисляет, когда глубокие сетки обсчитываются на GPU. По большей части он (1) инициирует вызовы функций GPU, (2) исполняет функции ЦПУ.

Безусловно, наиболее полезное применение процессора – это предобработка данных. Как правило, существует две стратегии обработки данных, которые предъявляют разные требования к процессорам.

Первая стратегия – предобработка во время обучения

Цикл:

  • загрузка батча;
  • его предобработка;
  • обучение нейросети на батче.

Вторая стратегия: предобработка перед всяким обучением:

  • предобработка всех данных;
  • цикл:
  • загрузка предобработанного батча;
  • обучение на нём.

При первой стратегии, хороший ЦПУ с множеством ядер может существенно увеличить производительность. Для второй же очень хороший ЦПУ не особо нужен. Для первой стратегии рекомендуется не менее 4 потоков на один GPU – как правило, это означает два ядра на GPU. Жёстких тестов не проводилось, но каждое дополнительное ядро ЦПУ на GPU должно давать 0-5% дополнительной производительности.

Для второй стратегии рекомендуется не менее 2 потоков на GPU – это, в среднем, одно ядро на один GPU. При добавлении дополнительных ядер на GPU особых перемен в производительности не происходит.

Необходимая тактовая частота ЦПУ

Когда люди думают о быстрых ЦПУ, обычно подразумевается высокая тактовая частота. 4 ГГц лучше, чем 3.5 ГГц, не так ли? Обычно это так, если мы сравниваем процессоры с одинаковой архитектурой (например, Ivy Bridge), но сравнивать разные процессоры не так-то просто. К тому же, тактовая частота не всегда лучший показатель производительности.

Для глубокого обучения ЦПУ осуществляет не так много расчётов: там инкрементировал несколько переменных, сям посчитал несколько логических выражений, вызвал функции GPU... – это все происходит с тактовой частотой ЦПУ.

Это кажется логичным, но есть другой факт: при запуске глубокого обучения, процессор загружен на 100%. В чём же проблема? Ниже несколько экспериментов по торможению ядра процессора для прояснения этого момента.

Торможение ЦПУ на MNIST и ImageNet: Производительность – это время, затраченное на 200 эпох MNIST или четверть эпохи ImageNet, ЦПУ c различной тактовой частотой, где максимальная тактовая частота берется за основу для каждого ЦП. Для сравнения: обновление с GTX 680 до GTX Titan добавляет около 15% к производительности; от GTX Titan до GTX 980 еще + 20% производительности; Разгон GPU дает около + 5% производительности для любого GPU
Торможение ЦПУ на MNIST и ImageNet: Производительность – это время, затраченное на 200 эпох MNIST или четверть эпохи ImageNet, ЦПУ c различной тактовой частотой, где максимальная тактовая частота берется за основу для каждого ЦП. Для сравнения: обновление с GTX 680 до GTX Titan добавляет около 15% к производительности; от GTX Titan до GTX 980 еще + 20% производительности; Разгон GPU дает около + 5% производительности для любого GPU

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

Жёсткий диск/SSD

Жёсткий диск редко является “бутылочным горлышком” для глубокого обучения. Однако, если вы совершаете глупости, он может серьёзно повредить: если данные читаются с диска по мере необходимости (используя blocking wait), то обращение к 100 мб/сек жёсткому диску обойдётся вам в 185 миллисекунд для батча ImageNet размера 32. Однако, если вы извлекаете данные асинхронно перед их использованием (например, с помощью torch vision loaders), то вы загрузите батч за 185 секунд, тогда как время вычисления ImageNet для большинства глубоких нейросетей составляет около 200 миллисекунд. Таким образом, вы не заметите никаких потерь производительности, т.к. новый батч будет загружаться, пока считается предыдущий.

Тем не менее, рекомендуется всё-таки иметь SSD для комфорта и продуктивности: программы запускаются и отвечают быстрее, предобработка больших файлов тоже происходит оперативнее. Новый стандарт твердотельных накопителей NVMe оставит более приятные впечатления, нежели обычный SSD

Таким образом, идеальный расклад – это большой и медленный жёсткий диск для датасетов и SSD для продуктивности и комфорта.

Блок питания (БП)

Как правило, следует выбирать такой БП, который сможет вытянуть все GPU, что вы хотите установить. Обычно GPU становятся более энергоэффективны со временем – это значит, что в то время, как другие компоненты потребуют замены, блок питания сможет ещё долго проработать. Хороший блок питания – это хорошая инвестиция.

Можно легко рассчитать требуемое количество ватт: нужно сложить требования к мощности ЦПУ и GPU, добавив 10% для остальных компонентов и для балансировки скачков напряжений. Например, если у вас 4 видеопроцессора по 250 Вт TDP и ЦПУ 150 Вт TDP, то вам потребуется блок питания не менее 4х250 + 150 + 100 = 1250 Вт. Рекомендуется добавить ещё 10% просто для уверенности – и мы получим минимум в 1375 Вт. Округляя, получаем блок 1400 Вт.

Необходимо помнить об одной важной вещи, даже если блок питания имеет требуемую мощность, ему может не хватить 8-пиновых или 6-пиновых PCIe-коннекторов. Убедитесь, что в блоке питания достаточно коннекторов для подключения всех ваших видеопроцессоров.

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

Запуск системы с 4 GPU на полной мощности (1000-1500 Вт) для обучения сверточной сети в течение двух недель обойдётся в 300-500 кВтч, что в Германии при довольно высоких ценах на электричество (20 евроцентров за 1 кВтч), составит 60-100 € (4500-7500 рублей; в России, при стоимости кВтч в среднем 4.5 рубля, – 1350-2250). И если это – цена для 100% эффективности, то обучение такой сети с 80% электропитания увеличило бы затраты еще на 18-26 € – ух! Для отдельного GPU суммы будут существенно меньше, но суть остается верной – имеет смысл потратить немного больше денег на более эффективный источник питания.

Охлаждение процессоров

Охлаждение – это важно. Оно вполне себе может стать бутылочным горлышком вашей системы, снижая её производительность сильнее, чем плохой выбор “железа”. Стандартный радиатор или AIO водяная система охлаждения прекрасно подходит для ЦПУ, но с GPU всё не так просто.

Воздушное охлаждение GPU

Воздушное охлаждение – это безопасно и надёжно, если у вас один графический процессор или множество GPU с расстоянием между ними (2 GPU в корпусе 3-4 GPU). Тем не менее, можно допустить серьёзные ошибки при необходимости охлаждения 3-4 GPU. Нужно тщательно обдумать варианты в таком случае.

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

Однако типовые режимы скорости вращения вентиляторов плохо адаптированы под программы глубокого обучения, поэтому температурный порог достигается в течение нескольких секунд после запуска. В результате снижается производительность (0-10%), что для нескольких GPU, нагревающих друг друга, может оказаться весьма значительным (10-25%).

Поскольку GPU NVIDIA – это, прежде всего, игровые графические процессоры, они оптимизированы под Windows. Вы можете изменить режим работы вентилятора в пару кликов в Windows, но не в Linux. Поскольку большинство библиотек глубокого обучения написаны для Linux, это проблема.

Единственный вариант под Linux – использовать для настройки конфигурации вашего сервера Xorg (Ubuntu), где вы устанавливаете опцию «coolbits». Этот способ хорошо подходит для одного GPU, но если у вас их несколько, причём часть из них “безголовые” (т.е. к ним не подключён монитор), вам придётся его эмулировать. Что не так просто. Вам предстоит провести много неприятных часов с live boot диском, чтобы восстановить настройки графики – чтобы корректно запустить его на “безголовых” процессорах.

Если вы запускаете 3-4 GPU в системе с воздушным охлаждением, очень важно обратить внимание на конструкцию их вентиляторов. Системы охлаждения закрытого типа (blower-style, турбинное охлаждение) – вентилятор с нагнетателем, он выталкивает воздух в заднюю часть корпуса, так что свежий, более холодный воздух подается в GPU. Открытая система охлаждения (non-blower) всасывают воздух в непосредственной близости от графического процессора и охлаждают его. Тем не менее, если несколько GPU расположены рядом друг с другом, то вокруг не будет прохладного воздуха – GPU в системе охлаждения открытого типа будут нагреваться все больше и больше, пока не будут вынуждены снизить скорость, чтобы сбить температуру. Старайтесь любой ценой избегать вентиляторов без нагнетателя для систем из 3-4 GPU.

Водяное охлаждение нескольких GPU

Другой, более дорогой и хитрый вариант – использовать водяное охлаждение. Не рекомендуется использовать систему водяного охлаждения, если у вас один GPU или достаточно много места между двумя (2 GPU в корпусе 3-4). Однако, водяное охлаждение гарантирует низкую температуру всех процессоров даже в системе из 4 GPU – что абсолютно невозможно при воздушном охлаждении. Другое преимущество в том, что оно относительно бесшумно – это существенный плюс, если вы запускаете несколько видеокарт в месте, где работает кто-то, кроме вас. Водяное охлаждение обойдётся примерно в $100 для каждого GPU, дополнительные расходы в районе $50. Водяное охлаждение также потребует некоторых дополнительных усилий при сборке компьютера, но существует множество подробных руководств по этому вопросу, и в целом это займет всего несколько часов. Обслуживание не должно быть таким сложным и трудоемким.

Большой системный блок?

Иногда покупают огромные системные блоки для систем глубокого обучения, потому что они позволяют установить больше вентиляторов для видеокарт. Но в целом в этом нет необходимости: наблюдаемое снижение температуры достигает всего 2-5°C, что не стоит вложений и громоздкости. Самая важная часть – это непосредственно выбор охлаждения конкретного GPU, не стоит выбирать дорогой корпус по его охлаждающим характеристикам. Здесь можно и продешевить. Системный блок должен подходить GPU и на этом всё.

Заключение по охлаждению

В конце концов всё просто: для одного GPU идеального подойдёт воздушное охлаждение. Для множества GPU стоит приобрести систему воздушного охлаждения с нагнетателем и смириться с небольшой потерей производительности (10-15%) или же переплатить за водяное охлаждение, которое несколько сложнее установить самостоятельно, зато никаких издержек. И воздушное, и водяное охлаждение могут быть разумным выбором в определённых ситуациях. Однако, рекомендуется выбирать воздушное охлаждение за его простоту – вентиляторы с нагнетателем, если вы используете множество GPU. Если вы планируете использовать водяное охлаждение, попробуйте найти всё-в-одном (AIO) системы для вашего GPU.

Материнская плата

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

Системный блок

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

Убедитесь, что в вашем системном блоке достаточно места для радиаторов. Это особенно актуально, если вы используете водяное охлаждение. Радиатору каждого GPU потребуется своё место – убедитесь, что ваша схема соответствует выбранным GPU.

Мониторы

Возможно, писать о мониторах кому-то покажется глупым, но они от них действительно многое зависит, игнорировать их нельзя.

Деньги, потраченные на три 27-дюймовых монитора, возможно, станут лучшей тратой в вашей жизни. Продуктивность серьёзно возрастёт благодаря множеству мониторов. Опыт работы с одним монитором можно сравнить с опытом передвижения в инвалидной коляске. Не экономьте на этом. Зачем нужна хорошая быстрая система глубокого обучения, если вы не сможете достаточно эффективно ей пользоваться?

Типичная раскладка монитора при глубоком изучении: Слева: документы, Google, gmail, stackoverflow; В центре: код; Справа: окна вывода, R, папки, мониторинг системы, мониторинг GPU, список дел и другие небольшие приложения.
Типичная раскладка монитора при глубоком изучении: Слева: документы, Google, gmail, stackoverflow; В центре: код; Справа: окна вывода, R, папки, мониторинг системы, мониторинг GPU, список дел и другие небольшие приложения.

Несколько слов о сборке ПК

Многие люди боятся собирать компьютеры самостоятельно. “Железные” компоненты достаточно дороги, ошибиться никому не хочется. На самом деле, это достаточно просто – компоненты, которые не сочетаются друг с другом, друг другу не подходят. В руководстве к материнской плате зачастую очень подробно расписано, как всё организовать, существует множество “путеводителей” и видео, шаг за шагом раскрывающих весь процесс, на случай, если у вас совсем нет опыта.

Самое замечательное в самостоятельной сборке состоит в том, что однажды собрав собственный компьютер, вы уже знаете всё, что необходимо знать об этом – потому что все компьютеры собираются одинаковым образом. Сборка компьютера становится повседневным навыком, который вы можете применять снова и снова. Нет причин медлить.

В заключение / TL;DR

GPU:

RTX 2070 или RTX 2080 Ti. GTX 1070, GTX 1080, GTX 1070 Ti, и GTX 1080 Ti тоже хороши!

ЦПУ:

1-2 ядра на GPU, в зависимости от того, как вы осуществляете предобработку данных. > 2GHz; ЦПУ должен поддерживать то количество GPU, что вы хотите использовать. Шины PCIe не важны.

ОЗУ:

– Тактовая частота не важна – берите самую дешёвую оперативку

– Установите по меньшей мере столько ОЗУ ЦПУ, чтобы её объём совпадал с наибольшим объёмом видеопамяти вашего графического процессора

– Покупайте больше ОЗУ при необходимости

– Больше ОЗУ может потребоваться, если вы часто работаете с большими датасетами

Жёсткий диск/SSD:

– Жёсткий диск для данных (>= 3TB)

– Используйте SSD для собственного удобства и предобработки небольших датасетов

Блок питания:

– Сложите требования к мощности всех ваших GPU и ЦПУ. Умножьте сумму на 110%, чтобы получить требуемую мощность БП

– Озаботьтесь рейтингом энергоэффективности, если используете несколько GPU

– Убедитесь, что БП имеет достаточно портов PCIe (6+8 пинов)

Охлаждение:

– ЦПУ: установите стандартный кулер или all-in-one (AIO) систему водяного охлаждения

– GPU:

– Используйте воздушное охлаждение

– Используйте видеокарты с системой охлаждения с нагнетателем, если вы используете несколько GPU

– Установите флажок coolbits в конфигурации Xorg для контроля скорости вентилятора

Материнская плата:

– Убедитесь, что плата поддерживает столько PCIe слотов, сколько вам необходимо (сейчас или в будущем) для ваших GPU (один GPU занимает 2 слота, максимум 4 GPU на одну систему)

Мониторы:

– Дополнительный монитор повлияет на вашу продуктивность сильнее, чем дополнительный GPU.

Об авторе:

Тим Деттмерс – аспирант в Университете Вашингтона (его научный руководитель - Yejin Choi), занимающийся темами представления знаний и диалоговых систем. Проходил практику в UCL Machine Reading Group, под руководством Sebastian Riedel работая над поиском информации и предсказании ссылок в графах знаний. Магистерская работа по специальности “Информационные технологии” в Университете Лугано, по руководством Fabio Crestani. Во время магистратуры пройдено две исследовательских стажировки в Microsoft (по распознаванию речи и по алгоритмам глубокого обучения, оптимизированным по памяти). Бакалаврская работа в прикладной математике в Открытом Университете (Великобритания) параллельно с работой инженером-программистом в сфере автоматизации. Ведёт блог о машинном обучении.

Оригинал статьи: http://timdettmers.com/2018/12/16/deep-learning-hardware-guide/

Другие новости на нашем канале