Разработчик(и) | Университет Висконсин-Мэдисон |
---|---|
Стабильный релиз | 23.0.17 LTS / 24 октября 2024 г. ( 2024-10-24 ) |
Предварительный релиз | 23.10.1 / 3 октября 2024 г. ( 2024-10-03 ) |
Репозиторий |
|
Написано в | C++ , Python , Perl |
Операционная система | Microsoft Windows , Mac OS X , Linux , FreeBSD |
Тип | Высокопроизводительные вычисления |
Лицензия | Лицензия Apache 2.0 |
Веб-сайт | htcondor.org |
HTCondor — это высокопроизводительная вычислительная программная среда с открытым исходным кодом для крупнозернистого распределенного параллелизма вычислительно-интенсивных задач. [1] Ее можно использовать для управления рабочей нагрузкой на выделенном кластере компьютеров или для передачи работы на простаивающие настольные компьютеры — так называемая очистка циклов . HTCondor работает в операционных системах Linux , Unix , Mac OS X , FreeBSD и Microsoft Windows . HTCondor может интегрировать как выделенные ресурсы (кластеры, смонтированные в стойке), так и неспециализированные настольные машины (очистка циклов) в одну вычислительную среду.
HTCondor разработан командой HTCondor в Университете Висконсин-Мэдисон и доступен для свободного использования. HTCondor следует философии открытого исходного кода и лицензирован Apache License 2.0. [2]
В то время как HTCondor использует неиспользуемое вычислительное время, оставление компьютеров включенными для использования с HTCondor увеличит потребление энергии и связанные с этим расходы. Начиная с версии 7.1.1, HTCondor может переводить машины в спящий режим и выводить их из спящего режима на основе политик, указанных пользователем, функция, ранее доступная только через стороннее программное обеспечение.
Разработка HTCondor началась в 1988 году.
HTCondor ранее был известен как Condor; название было изменено в октябре 2012 года для урегулирования иска о товарных знаках. [3]
HTCondor — это программное обеспечение-планировщик, использовавшееся для распределения заданий для первой черновой сборки генома человека.
Пул NASA Advanced Supercomputing facility (NAS) HTCondor состоит из примерно 350 рабочих станций SGI и Sun, приобретенных и используемых для разработки программного обеспечения, визуализации, электронной почты, подготовки документов и других задач. На каждой рабочей станции запущен демон , который отслеживает пользовательский ввод-вывод и загрузку ЦП. Когда рабочая станция простаивает в течение двух часов, ей назначается задание из пакетной очереди, которое будет выполняться до тех пор, пока демон не обнаружит нажатие клавиши, движение мыши или высокую загрузку ЦП, отличную от HTCondor. В этот момент задание будет удалено с рабочей станции и помещено обратно в пакетную очередь.
HTCondor может запускать как последовательные, так и параллельные задания. Последовательные задания могут быть запущены в нескольких различных "юниверсах", включая "ванильный", который обеспечивает возможность запуска большинства "пакетных" программ, и "стандартный юниверс", в котором целевое приложение повторно связывается с библиотекой ввода-вывода HTCondor, которая обеспечивает удаленный ввод-вывод заданий и контрольные точки заданий. HTCondor также предоставляет "локальный юниверс", который позволяет запускать задания на "хосте отправки".
В мире параллельных задач HTCondor поддерживает стандартный интерфейс передачи сообщений и параллельную виртуальную машину (Goux и др., 2000) в дополнение к собственной библиотеке Master Worker «MW» для чрезвычайно параллельных задач.
HTCondor-G позволяет заданиям HTCondor использовать ресурсы, не находящиеся под его прямым контролем. Он в основном используется для связи с сетевыми и облачными ресурсами, такими как pre-WS и WS Globus, Nordugrid ARC , UNICORE и Amazon Elastic Compute Cloud . Но его также можно использовать для связи с другими пакетными системами, такими как Torque/PBS и LSF . Поддержка Sun Grid Engine в настоящее время находится в стадии разработки в рамках проекта EGEE . [ необходима цитата ]
HTCondor поддерживает API заданий DRMAA . Это позволяет клиентам, совместимым с DRMAA, отправлять и контролировать задания HTCondor. Реализация SAGA C++ Reference предоставляет подключаемый модуль HTCondor (адаптер), который делает отправку и мониторинг заданий HTCondor доступными через API Python и C++ SAGA.
Другие функции HTCondor включают «DAGMan», который предоставляет механизм для описания зависимостей заданий.