Лирическое отступление
Все знают, что Россия — энергетическая сверхдержава, она же – «разорванная в клочья Обамой бензоколонка». Но не все знают, как это может отражаться в области развития математического моделирования. Расскажу одну жизненную историю.
Начну с далекого 2007 года. Довелось мне в те времена поработать на крупном заводе, который «эффективные менеджеры» как раз делили на несколько отдельных предприятий, каждое из которых крутилось, как могло. В том цеху, который и стал одним из таких предприятий, на токарных станках могла крутиться (и крутилась!) металлическая болванка размером с автобус. А в печку для нагрева металла можно было затолкать паровоз. Целиком. Когда я в первый раз увидел токарный станок, на котором крутится и обтачивается деталь размером с автобус, моему восторгу не было предела. Гордость за страну переполняла до состояния «в зобу дыханье сперло». А потом старожилы показали ту часть цеха, где стояли фундаменты таких же станков и пояснили:
- А вот тут были станки для точной обработки. Их продали китайцам по цене металлолома.
- А почему вот другие не продали?
- Потому, что у них точность обработки такая, что их только в металлолом можно сдать. Поэтому они здесь работают и крутятся как могут, и обтачивают валы турбин Siemiens.
Схема бизнеса был гениальна: Siemiens привозил на завод многотонные болванки, их неделями и месяцами обтачивали до состояния заготовок и увозили для чистовой обработки в Германию. Где уже выполняли чистовую доводку на точных и дорогих станках. Главные затраты при черновой обработке – это износ станков и инструмента, зарплата токаря и электроэнергия, необходимая для вращения тонн металла. Поскольку электроэнергия в РФ дешевле немецкой, недели обработки болванок с лихвой окупают транспортировку, а низкая точность обработки не требует дорогого обслуживания и мало чувствительна к износу еще советского оборудования. В итоге весь бизнес заключался в «перепродаже» дешевой электроэнергии из РФ в Германию, но в виде металлических обточенных болванок.
Если вы думаете, что электроэнергию можно продавать только в виде обработанного металла, то вы заблуждаетесь. Ее можно продавать и в виде результатов математического моделирования. Схема ровно такая же: западный автоконцерн хочет провести расчет прочности на суперкомпьютере. Например, посмотреть, как машина разбивается о стенку. Понятно, что бить машину дорого и машин не напасешься. Можно посчитать на СуперЭВМ, но он жрет электроэнергии, как не в себя. Но при этом тут рядом Россия, где есть СуперЭВМ, дешёвая электроэнергия и эффективные манагеры (собственно, все, что нужно для профита). Берем модель в виде сетки для расчёта на западном 3D софте, благо в ней практически нет реальных данных по конструкции, отправляем русским ученым с СуперЭВМ и они за 3 копейки неделями обсчитывают варианты для западных автоконцернов. Считают на суперЭВМ, как БМВ, Рено и Мерседесы разбиваются об стенку, сжигая дешевую электроэнергию. Цифровой двойник, епта!
И вот в 2013 году у меня появился шанс тоже получить свою долю от продажи дешевых углеводородов, отбитых казаком Ермаком у хана Кучума. Нет, газовой скважины от дальнего родственника я в наследство не получил. Появилась возможность буквально из воздуха заработать денег за счет экономии электроэнергии в РФ, чтобы больше энергоносителей можно было продать за бугор.
Цифровой двойник дата центра
К нам обратилась одна крупная российская компания, «та-которую-нельзя-называть», но у которой по всей России целая куча дата-центров. А, как известно, перепады температуры в России могут быть от – 30 до + 40. И дата-центры нужно охлаждать. Для этого ставятся гигантские вентиляторы на крышах, но работают они неравномерно: зимой крутится 1 из 10, летом, когда прохладно, 5 из 10, а когда жарко (2 – 3 дня в году) все 10. Вопрос был в следующем: можно ли как-то посчитать суточные расходы охлаждаемого воздуха для дата-центра, чтобы определить, как рационально охлаждать, и сколько все-таки вентиляторов надо на крыше.
Первое предложение, с ходу, было такое: выкинуть 5 вентиляторов, пусть сервера пару-тройку дней в году работают с перегревом. Делов-то! Все равно они устаревают раньше, чем изнашиваются.
Но услышав доводы заказчика, я почувствовал запах больших денег и воображение уже нарисовало Ламборгини, Монако и замену математических моделей на реальных с грудью 5-го размера. Если нам удастся настроить подачу воздуха, так чтобы сэкономить заказчику несколько процентов электроэнергии для охлаждения дата-центров, то денег хватит, чтобы самим охлаждаться коктейлями в Майями-Бич.
Как оказалось, нагрев серверного оборудования в процессе работы вызывает не только, и не столько повышенный износ, но и существенное увеличение затрат электроэнергии. Нагретые процессоры, память и жёсткие диски сжирают больше электроэнергии, чем холодные, а для дата-центра затраты электроэнергии — это очень большая статья расходов. Может получиться, что на охлаждение вентиляцией будет потрачено больше энергии, чем потери за счет нагрева. В этой ситуации в масштабах дата-центра, если организовать подачу воздуха так, чтобы сэкономить хотя бы несколько процентов, то можно озолотиться.
В момент обращения к нам, система охлаждения серверов уже была достаточно хорошо отработана. Четыре сервера объединялись в одну охлаждаемую ячейку, на которую работали три вентилятора с регуляторами.
На уровне отдельного сервера и охлаждающей ячейки компания имела хорошие подробные 3D-модели нагрева оборудования и его охлаждения. Используя эти модели, специалисты создали эффективную систему регулирования оборотов вентиляторов охлаждающих ячейки в зависимости от нагрузки на вычислительные мощности серверов. В зависимости от времени суток и конкретного дата центра нагрузка распределяется по-разному. Например, запустил кто-то в дата центре распределенный расчет – греются процессоры. Или, днем почта и мессенджеры – процессор, вечером народ валит домой и начинает качать фильмы – разгоняются и нагреваются жесткие диски, увеличилось количество поисковых запросов – пошла перегреваться память.
Можно померить профиль нагрузки и получить энерговыделение в каждом элементе. По профилю работы и энерговыделения можно настроить регуляторы вентиляторов, не просто «включен-выключен», а задавать обороты каждого вентилятора, которые тоже жрут электроэнергию так, чтобы общий расход электроэнергии был минимальным.
И все было хорошо для отдельного сервера и четырех серверов в ячейке, но, когда их больше 20 000, они стоят в одном помещении сложной конфигурации и охлаждаются из одного воздуховода, оптимальность начинает исчезать. Поскольку в дата-центре арендуют вычислительные мощности разные организации и выполняются разные задачи, нагрузка постоянно меняется и, имея оптимальный регулятор на каждом отдельном сервере, общий коллектор и общий расход электроэнергии могут быть совсем не оптимальны. При этом у компании была объективная картина по нагрузке на каждый сервер, которую можно снимать в режиме online, чуть ли не каждую секунду. Но что с ней делать, не понятно. Классическая задача для цифрового двойника: снимаем данные, загоняем в модель и оптимизируем.
Проблема была в том, что считать нужно 20 000 серверов со своими системами регулирования и моделями охлаждения воздухом. Компания крупная и они, конечно, обратились к западным вендорам моделирующего ПО, которые в то время еще активно продавали свое ПО и услуги. Результат был следующий: посчитать дата-центр они были готовы, но скорость расчета была такова, что, получив данные по загрузке, оптимальный расход получался через сутки, когда уже было поздно. Либо рядом с действующим дата-центром нужно построить второй, в котором в 3D будет рассчитываться охлаждение первого, чтобы получить оптимальное охлаждение.
У компании уже было коммерческое предложение от поставщиков западного моделирующего ПО. И когда они пришли к нам, наша задача была показать, что мы сможем посчитать дата-центр целиком с учетом хитрых алгоритмов охлаждения каждого сервера. Тут-то нам карта и поперла.
Наше моделирующее ПО родом из атомной индустрии, где охлаждение – главная задача отрасли, поскольку атомный реактор упрощенно — это просто большой чайник, у которого при перегреве и кипении крышка подпрыгивает. Все знают, как в 1986 году в Чернобыле от перегрева подпрыгнула и перевернулась в воздухе крышка массой 2000 тонн. После этого считать охлаждение у нас научились. И любая научно конструкторская организация в Росатоме имеет по несколько расчетных тепло-гидравлических кодов для решения задач охлаждения реакторов. Более того, большая часть данных кодов еще и аттестована в специальных органах, которые проверяют насколько близко к реальности считает тот или иной расчетный код для оценки процесса охлаждения реактора.
Я уже ранее рассказывал, как создавать цифровой двойник для авиационного теплообменника. Это маленькая коробочка размером с корпус компьютера. Далее по нарастающей. Вот здесь описано как делать цифровой двойник системы кондиционирования воздуха для всего самолета. А теперь настало время рассказать как делать цифровой двойник полного здания.
От 3D к 1D. Движение вверх по лестнице ведущей вниз
В качестве исходных данных у нас была полная честная 3D-модель одного сервера в различной конфигурации. Используя данную модель за 3 – 4 дня можно рассчитать варианты работы этого сервера с различной нагрузкой и в различном температурном режиме. Более того, данную модель можно завалидировать на реальном железном сервере. Также можно посчитать разные конфигурации (разные процессоры, количество памяти, разные жесткие диски).
![3D модель охлаждения сервера 3D модель охлаждения сервера](https://habrastorage.org/getpro/habr/upload_files/200/4d7/4c7/2004d74c74516705b14e8dd4008b7da6.png)
Используя данные 3D-расчета, мы сформировали в среде структурного моделирования SimInTech 1D-модель, которая представляет собой набор таблиц, в которых собрано посчитанное в 3D модели выделение тепла всем элементами сервера при различных режимах работы. Далее достаточно простой интерполяции, чтобы получить значение выделяемой энергию при любых условиях.
Принципы работы такой модели достаточно просты: каждый элемент является источником тепловой энергии, величина которой зависит от температуры элемента. Температура элемента определяется охлаждением за счет воздуха, коэффициенты теплоотдачи и коэффициенты гидравлического сопротивления также рассчитаны в 3D и валидированы на реальном оборудовании.
Поскольку у компании серверов в наличии неограниченное количество, то можно выделить несколько штук в разных конфигурациях, с разным количеством памяти, разными процессорами, разными жестким дисками и все их аккуратно рассчитать в 3D и проверить на реальных режимах работы.
Данные расчетов были упакованы в модель, в которой можно как в реальном сервере менять настройки, выбирать тип процессора, количество и тип памяти, количество и тип жесткого диска.
Модель во время расчета получает вычислительную нагрузку, рассчитывает тепловыделения и температуру всех компонентов. При этом за счет интерполяции проверенных данных результаты расчета получается практически мгновенно и с заданной точностью совпадают с результатами многочасового 3D моделирования. Точность расчета определяется точностью температурных датчиков, использованных для валидации. Другими словами, мгновенный расчет ничем не отличается от расчета в 3D.
![1D-модель охлаждения сервера 1D-модель охлаждения сервера](https://habrastorage.org/getpro/habr/upload_files/96f/fa1/649/96ffa164927a8ad8881f757834f4df6e.png)
С точки зрения физики процесса, для системы вентиляции эту сложную модель можно представить как канал, в котором есть источник энерговыделения. Гидравлическое сопротивление этого канала-сервера, зависит от начинки реального сервера. Например, есть планка памяти – это дополнительный источник тепла и дополнительное сопротивление потоку. Величина сопротивления так же получена на стадии 3D моделирования.
Тогда модель охлаждаемой ячейки, состоящей из четырех серверов и трех вентиляторов, будет выглядеть, как показано на принципиальной схеме см. следующий рисунок.
![1D модель ячейки охлаждения 1D модель ячейки охлаждения](https://habrastorage.org/getpro/habr/upload_files/581/375/135/581375135f80db20010fcf1ab574aca5.png)
Четыре сервера – это 4 канала с выделением тепла и местным сопротивлением, зависящим от конфигурации сервера (они могут быть разными в одной ячейке охлаждения). Вход воздуха — это общий коллектор (входной объем), из которого воздух всасывается в 4 сервера. На выходе стоят три вентилятора. Как говорилось выше алгоритм управления включает разгоняет и тормозит эти вентиляторы в зависимости, от температуры в серверах конкретной ячейки. Эта простая модель обеспечивает точный расчет подогрева воздуха в ячейке и температуру компонентов.
Чтобы, как нас учат классики теории цифровых двойников, обеспечить обмен данными цифрового двойника с «перваком», для каждого сервера формируется информационная структура в базе данных сигналов, в которую записывается конфигурация сервера, а также можно отправить данные реально работающего дата-центра.
Подготовленная 1D модель учитывает возможные конфигурации оборудования в дата центре, и мы спокойно можем выгрузить реальные данные о 10 000 серверов дата центра и заполнить цифровую модель (digital twin) каждого сервера согласно его реальному брату близнецу из дата центра. В информационной структуре базы данных находятся как исходные данные для расчета, так и результаты вычислений. Например, нагрузки на дисках, вычислительные нагрузки, температура компонентов - короче, весь необходимый фарш для расчета теплового потока в воздух и сохранения результата.
![База данных с тысячами серверов База данных с тысячами серверов](https://habrastorage.org/getpro/habr/upload_files/763/837/66d/76383766d698f13a81174e0acce378d1.png)
Дальше вопрос только ловкости рук и никакого мошенничества. Собираем из ячеек стойки, соединяем вентиляционными коридорами, получаем модели охлаждения 10 000 серверов в одном помещении и создаем модель системы кондиционирования.
![Расчетная модель воздушного охлаждения дата-центра Расчетная модель воздушного охлаждения дата-центра](https://habrastorage.org/getpro/habr/upload_files/6f6/0b8/bac/6f60b8bac0d4d795483a50d9f62389d2.png)
Таким образом, мы получаем инструмент, в котором можно учитывать индивидуальную загрузку каждого из 10 000 серверов и ее влияние на общую систему вентиляции. Точно также учитываются индивидуальные программы управления охлаждения ячейки: мы просто в векторном виде обсчитываем 100, 1000 или 10 000 регуляторов (сколько нужно) на одной расчетной схеме:
![Индивидуальная схема управления локальными регуляторами Индивидуальная схема управления локальными регуляторами](https://habrastorage.org/getpro/habr/upload_files/317/872/6b2/3178726b2da27503f133a881b3b77eba.png)
А поскольку у нас есть данные по реальной загрузке серверов в ретроспективе и перспективе, мы спокойно можем эту модель проверить, донастроить и валидировать.
Что бы удобнее работать с моделью дата центра в процессе наладки и настройки создаем панель управления, на которую выводим основные параметры работы вентиляции дата центра, а также сводные гистограммы распределения температур по основным устройствам.
![Видеокадры управления системой воздушного охлаждения Видеокадры управления системой воздушного охлаждения](https://habrastorage.org/getpro/habr/upload_files/d59/c7e/033/d59c7e033a1a32f8bbfffb40a3f3354b.png)
Voilà, цифровой двойник готов.
Далее самое интересное, если вся эта система начинает считать хотя бы в реальном времени, то мы можем спокойно виртуально менять / перераспределять нагрузку в дата центре и настраивать работу системы кондиционирования таким образом что бы экономить электроэнергию всей системы. А здесь уже включается наш опыт создания гигантских моделей для расчета охлаждения АЭС. В итоге модель дата центра с 20 000 контрольных объемов, даже на ноутбуке считает в 1,6 раза быстрее реального времени.
Получается мы можем с ноутбуком, приехать в дата центр, забрать данные по текущей нагрузке на сервера, запустить программу на расчете и визуально сравнить параметры, рассчитываемые моделью (температуры, расходы воздуха и давления в системе), полученные в результате моделирования и реальные показатели работы дата центра. После этого мы можем в модели выполнять различные расчеты по оптимизации как загрузки в дата центре, так и работы системы вентиляции, каждый раз получать оптимальный поток воздуха и экономить электроэнергию. Набивая карманы и спасая планету от глобального потепления. Грета Тунберг должна быть довольна!
![Общая схема расчета системы подачи воздуха Общая схема расчета системы подачи воздуха](https://habrastorage.org/getpro/habr/upload_files/a5a/ff1/9b9/a5aff19b9528bd6f06db18a26e0ce508.png)
С такой моделью жить становится не просто, а очень просто. Берем данные из дата-центра, грузим в модель, она считает и выдает оптимальную нагрузку для системы управления вентиляцией – и, бинго! – мы экономим электроэнергию, охлаждаем серверы так, как нужно при любых вариантах загрузки. Брать процент с экономии электроэнергии за счет оптимальной подачи воздуха – это как знать прикуп и жить в Сочи. Ниже видео с демонстрацией работы модели охлаждения дата-центра.
Можно искать билеты во Флориду бизнес-классом. Что тут может пойти не так?
Россия – не Америка, бро
Проект был признан удачным, данные модели совпали с данными работы реального дата-центра. С чувством выполненного долга мы пошли к руководству компании делить будущие прибыли. Руководство компании выслушало нас внимательно, поблагодарило за удачную работу и вынесло вердикт. Для охлаждения компания использует воздух, воздух — это бесплатный ресурс, и экономить воздух не нужно, поэтому пусть включают вентиляторы на полную и не морочат ему, руководству, голову.
Так я не стал миллионером, потому что в России зима длится 9 месяцев, воздуха холодного – как у эскимоса снега, и наша точная модель охлаждения оказалась не нужна. Россия – не Америка, и охлаждать ее не надо. В России нужно обогреваться. А про это у меня есть другая статья и видео: