ElasticDL — это нативный для Kubernetes фреймворк глубинной нейронной сети, поддерживающий отказоустойчивость и эластичное планирование задач.
С помощью нативного дизайна для Kubernetes, ElasticDL обеспечивает отказоустойчивость и работает с приоритетным предemption Kubernetes для достижения эластичного планирования задач глубинной нейронной сети.
При наличии модели, определённой с использованием Keras API, можно распределённо обучить модель с помощью командной строки.
elasticdl train \
--image_name=elasticdl:mnist \
--model_zoo=model_zoo \
--model_def=mnist.mnist_functional_api.custom_model \
--training_data=/data/mnist/train \
--job_name=test-mnist \
--volume="host_path=/data,mount_path=/data"
Для запуска ElasticDL на локальном ноутбуке, в локальной группе серверов или на публичной облачной платформе, например Google Kubernetes Engine, рекомендуется использовать наш шаг за шагом учебник.TensorFlow Estimator на MiniKube
TensorFlow/PyTorch имеют встроенные возможности распределенного вычисления, которые поддерживают восстановление после отказа. Если некоторые процессы прекращают работу, распределенная вычислительная задача завершается ошибкой; однако, мы можем перезапустить задачу и восстановить ее состояние из последних файлов контрольной точки.
ElasticDL поддерживает отказоустойчивость во время распределенного обучения. Если некоторые процессы прекращают работу, задача продолжает выполняться. Поэтому ElasticDL не требует сохранения контрольных точек или восстановления из них. Функция отказоустойчивости позволяет ElasticDL работать с приоритетной стратегией Kubernetes для эластичного расписания. Когда Kubernetes убивает некоторые процессы текущего задания, чтобы освободить ресурсы для более приоритетного нового задания, текущее задание не завершается ошибкой, а продолжает выполнение с меньшим количеством ресурсов.
Эластичное расписание может значительно повысить общую производительность кластера. Предположим, что у кластера есть N видеокарт, и одно задание использует одну из них. Без эластического расписания новое задание, требующее N видеокарт, должно ждать завершения первого задания перед тем, как начать свою работу. Это время ожидания может составлять несколько часов, дней или даже недель. В течение этого времени использование кластера составляет всего 1/N. С эластическим расписанием новое задание может немедленно запуститься и использовать N-1 видеокарту, в то время как Kubernetes может увеличить потребление видеокарт первого задания до 1 после его завершения. В этом случае общая производительность составляет 100%.Эластичная функция планирования ElasticDL源于 её нативного дизайна — она не зависит от расширений Kubernetes, таких как Kubeflow, для запуска программ TensorFlow/PyTorch; вместо этого главный процесс задач ElasticDL запускает рабочие узлы и серверы параметров путём вызова API Kubernetes; одновременно он мониторит события, такие как убийство процессов/контейнеров, и реагирует на эти события для восстановления после отказов.Кратко говоря, ElasticDL повышает надёжность восстановления ошибок и эластичность распределённой работы TensorFlow/PyTorch при наличии Kubernetes-кластера. Мы предоставляем учебник, который показывает, как создать Kubernetes-кластер на Google Cloud Platform и запустить там задачи ElasticDL. Мы уважаем нативные возможности распределённого вычисления TensorFlow, которые позволяют ему работать без специализированной платформы вычислений, таких как Kubernetes, и обеспечивают возможность использования TensorFlow на любой платформе.
Для руководства по разработке обратитесь к этому документу.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )