Астрономам порекомендовали меньше использовать суперкомпьютеры и Python из-за вреда экологии

    image

    Астрономы из Лейденской обсерватории опубликовали материал, посвященный работе своих коллег. Они подсчитали, что в ходе онлайн-конференции Европейского астрономического общества в атмосферу поступило в три тысячи раз меньше углекислого газа, чем во время очной конференции годом ранее. Их коллеги утверждают, что язык программирования Python, который часто используется в их работе, требует очень много электроэнергии.

    Лео Буртшер из Лейденской обсерватории, один из организаторов онлайн-конференции в 2020 году и автор статьи, отметил: «Конечно, мы ожидали, что в онлайне выбросы CO2 будут ниже. Но тот факт, что разница была огромной, стал неожиданностью».

    Буртшер и его соавторы предполагают, что сочетание онлайн-лекций с региональными оффлайн-встречами может стать хорошей альтернативой.

    Статья о более экономном использовании компьютеров принадлежит профессору вычислительной астрофизики Саймону Портегису Цварту. Он предлагает выполнять повседневную работу, например, писать электронные письма и тексты, на простом ноутбуке.

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

    Автор подсчитал, что объем углеродных выбросов при работе мощной рабочей станции сопоставим со средним объемом выбросов на душу населения в мире. При работе с одним ядром суперкомпьютер производит меньше углерода, чем рабочая станция. Однако, чем больше ядер, тем лучше производительность за счет производства большего количества углерода. При запуске миллиона ядер выбросы намного превосходят авиаперелеты и приближаются к углеродному следу от запуска ракеты в космос. Оптимальное сочетание производительности и выбросов достигается для ~1000 ядер, после чего суперкомпьютер начинает производить больше углерода, чем рабочая станция.

    imageimage

    Наконец, автор призвал воздержаться от использования Python, если речь не идет о больших вычислениях. Python (и в меньшей степени Java) требуют значительно больше времени на запуск и производит больше CO2, чем C ++ или Fortran.

    image

    Многим астрономам этот призыв не понравится, считает Цварт. По его словам, Python удобен для пользователя, и существует множество коллекций бесплатных фрагментов кода, которые астрономы копируют в свои программы. Поэтому он призвал разрабатывать курсы программирования для студентов, где меньше внимания уделялось бы Python и больше — тем языкам, которые намного эффективнее работают с процессором компьютера.
    См. также:

    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 61

      +28
      Ой, а можно, пожалуйста, «разработчикам порекомендовали перестать использовать Electron» по той же причине? Ну и вдовесок побыстрее работать приложения будут…
        +6

        А как там майнинг поживает?)

          +8

          ну майнинг-то — это нужная и полезная вещь, он деньги приносит. не то, что эти дармоеды-учёные.


          грета — наше всё, астрономов на мыло!

          +1
          >где меньше внимания уделялось бы Python и больше — тем языкам, которые намного эффективнее работают с процессором компьютера

          Чтобы студенты думали не о решении задачи, а у том, как компьютеру лучше обрабатывать данные? Так можно и до asm скатиться, там явно самая эффективная работа с памятью и процессором, но насколько трудозатратней станет писать такие программы и учитывать кучу мелочей?
            0
            Особенно при учёте, что питон используется для управления воркерами, фактически — либо для чего-то быстро считающегося…
              +1

              Раньше FORTRAN и C++ всем нравились, а сейчас народ, видимо, отупел

                +3
                C++ заставляет ученых волноваться и думать о вещах, которые им малоинтересны. FORTRAN гораздо лучше, но он все-таки устарел и довольно громоздкий.Python и R — это на сегодня лучшие варианты
                  0

                  Julia — спасет планету! Физикам не надо жечь калории плясками с бубном для распараллеливания вычислений, а процессора коптят атмосферу во время расчетов гораздо меньше



                  правда теперь придется еще поломать голову, почему такое жуткое ускорение...

                    +4

                    Правда у вас не то бенчмаркается :)
                    Из доков:


                    Note that without a reducer function, @distributed executes asynchronously, i.e. it spawns independent tasks on all available workers and returns immediately without waiting for completion. To wait for completion, prefix the call with sync, like: <...>
                +2

                можно просто на бумажке посчитать, а еще лучше на песке палочкой

                  +2

                  Из asm, конечно, теоретически можно выжать максимальную производительность, но на практике для любой мало-мальски сложной задачи человек выдаст куда худший код, чем современные оптимизирующие компиляторы.
                  Не обязательно ударяться в крайности – «если не питон, то C++ или вообще ассемблер». Есть немало достаточно производительных и при этом не таких монструозных языков, пусть и менее распространённых – Julia, Haskell, Ocaml (хотя у него с параллелизмом плохо), D, да хоть Go...

                  +8
                  Похоже наступают Тёмные Века…
                  Только меня удивляет почему эти борцы с углекислым газом предпочитают в кабинетах и парламентах сидеть и корпорации штрафами окучивать, а не пустыни деревьями засаживать, как Китайцы, которые начали терраформировать Землю ещё до того как это стало мейнстреймом например:
                  «Пустыня Му-Ус — 42 200 км2, одна из четырех главных пустынь в Китае, «исчезла» с карты северо-западной провинции Шэньси, поскольку 93,24% опустошенных земель стали зелеными»
                  pikabu.ru/story/kitayskaya_pustyinya_prevratilas_voazis_posle_70_let_ozeleneniya_7461343
                    –3

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

                      –3

                      Т.е. когда англо-саксы установили свою гегемонию над Земным шариком?

                        0

                        Возможно линимент ввиду Питон

                        +5
                        когда стали продвигать языки по принципу простоты для тупых

                        Потому что ученому, которому нужно смоделировать какую-то суперсложную проблему в математической физике типа зеркальной симметрии обязательно еще нужно еще думать про управление памятью, да? Надеюсь вы пишите только на ассемблере для умных. Языки тут совершенно ни при чем. Это просто инструменты для решения задачи.
                          +1

                          Все абстракции текут: думать об управлении памятью в современном C++ с либами нужно не больше, чем о каком-нибудь GIL в Python. Зато не нужно думать, как выразить алгоритм без циклов и прочих привычных алгоритмических вещей.

                            0
                            думать об управлении памятью в современном C++ с либами нужно не больше, чем о каком-нибудь GIL в Python

                            Все таки это не правда. C++ требует гораздо более глубокого понимания устройства компьютера, чем Python. Программист — это не физик, не математик, не биолог, не экономист. Он учится другим вещам. Зато он не изучает, то что изучают эти специалисты. И это разумно
                            Зато не нужно думать, как выразить алгоритм без циклов и прочих привычных алгоритмических вещей.

                            Циклы и прочие привычные алгоритмические вещи из Питона не исчезли. Они там точно такие же как в C++. Может немного удобнее.
                              0
                              C++ требует гораздо более глубокого понимания устройства компьютера, чем Python

                              Например зачем? В контексте задач численной обработки


                              Циклы и прочие привычные алгоритмические вещи из Питона не исчезли

                              Только вычисления сразу растягиваются на сутки вместо часов, по сравнению с numpy

                                +2
                                Например зачем? В контексте задач численной обработки

                                Для того чтобы не получить непредсказуемый неожиданный результат? Вы убеждаете, что C++ очень простой язык. Я много слышал рассказов, что ручное управление памятью — это суперпросто и «нормальный» программист не ошибается. Но вот Микрософт подсчитали, что большинство ошибок у них это ошибки с памятью.
                                Вы думаете, что ученые которые используют Питон—это программисты. Но они не программисты. Они используют Питон также, как используют Математику для решения интегралов и Матлаб, чтобы перемножать матрицы. И поэтому им нужен максимально простой инструмент, где все работает сразу, желательно интерактивно и без компиляции. Питон с его библиотеками, также как R, Matlab, Октава и другие как раз и является таким инструментом, где сразу можно начать моделировать и быстро получать какие-то результаты. Наверное, когда дело идет про алгоритм, который вычисляется днями и месяцами на суперкомпьютере к делу можно привлечь и программистов, которые сделают все как надо. Но это отдельная задача.
                                Только вычисления сразу растягиваются на сутки вместо часов, по сравнению с numpy

                                Ну здесь может помочь numba например.
                                Ну и собственно результат говорит сам за себя. В научных вычисления использовался Fortan, сейчас это Питон, R, может быть Julia, а вовсе не C++ или С или Rust или что-то другое «очень быстрое». Надо полагать, что это произошло именно потому что ученым проще и удобнее использовать Питон, а не совершенно простой, по вашим словам, C++ а вопрос скорости их волнует меньше, чем можно предположить.
                                  +2
                                  Вставлю одну копейку. Си в науке живее всех живых как и неожиданно Фортран (но наука она очень развесистая). А С++ — увы, да — избыточен. Сейчас присматриваюсь к Джулии — хочется просто попробовать что-то новенькое.
                                  А вообще в ход идет всё — у некоторых даже тс… Excel, кто-то творит величественные вещи в Ориджине, кто-то чуть что запускает Maple или Математику.
                                    0

                                    В C++ автоматическое управление памятью.


                                    все работает сразу, желательно интерактивно

                                    Это уже зависит от IDE, Jupyther Notebook в помощь.


                                    потому что ученым проще и удобнее использовать Питон

                                    Когда упрутся в пределы наращивания мощностей суперкомпьютеров и серверов — C++ и ему подобные внезапно снова окажутся очень удобными, также появится куча библиотек и инструментов как сейчас для Python, абстрагирующих сложные моменты языка

                                      +1
                                      В C++ автоматическое управление памятью.

                                      Вы "забыли" сказать главное — это автоматическое управление памятью в нём возможно, если
                                      1) использовать его везде (включая тонны сторонних библиотек, код в которых не контролируется)
                                      2) знать критически важные тонкости (типа, зачем ввели make_unique, и ещё кучу специфики, включая 19 видов инициализации и как можно получить проблемы от неверного выбора.


                                      В сумме же эти условия недостижимы и при программисте, не имеющем опыта граблей C++ (что будет соответствовать 99.99% учёных), и при просто очень толстом и неоднородном продукте.


                                      Когда упрутся в пределы наращивания мощностей суперкомпьютеров и серверов

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

                                +1

                                «В современном C++ с либами париться уже почти не нужно» – это тоже абстракция, которая тоже течёт ;)

                            +1
                            Потому, что озеленение вредно для экологии и не даёт пилить бюджет и торговать углеводородными квотами имени Гора уменьшает отражающую способность Земли же, что увеличивает нагрев.
                              0
                              Но при этом связывает углерод из атмосферы в биомассу, а эффект от чего больше я не берусь посчитать
                                0
                                Но это же почти бесплатно, в отличие от технических улавливателей, а значит недопустимо
                            +3

                            Жизнь коротка, чтобы пользоваться ассемблером.

                              +3
                              Вообще разбаловались со своими суперкомпьютерами и пайтоном) Они же ускоряют тепловую смерть Вселенной!
                              Шутки шутками, но видимо профессор совсем не знаком как устроена экосистема Python, в частности numpy/scipy, и при этом уверенно чертит графики эмиссии CO2 от языка программирования.
                                0
                                numpy/scipy

                                Главное циклы не писать

                                  0

                                  Для циклов есть @numba.jit()

                                  0

                                  По моему скромному опыту, учёные — экологи "варятся" в своей среде с кучае стандартов/протоколов, но крайне оторваны от реальных задач, поставленных перед наукой и инженерами. А в некоторых отраслях экологических наук экспертов называют "practitioner" и даже "guru" что намекает...

                                  +1
                                  Вот это наброс! Наверняка гошники проплатили
                                    0

                                    Если важно не допускать увеличение количества CO₂ в атмосфере, то пусть цена электричества включает в себя стоимость извлечения из атмосферы того количества CO₂, которое туда поступило при выработке электроэнергии.


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

                                      +3
                                      Вы точно не из Германии? Они тоже очень любят в цены включать налог на то, что никогда не произойдёт.
                                      0
                                      Надеюсь, что
                                      астрономы из Лейдинской обсерватории
                                      будут последовательны и откажутся от использования лекарств (которые ведь тоже моделируются на суперкомпьютерах), откажутся от автомобилей (и здесь без суперкомпьютерных расчетов не обходится) и всего прочего, что приводит к
                                      увеличению количества CO₂ в атмосфере

                                        0
                                        Да, не стоит забывать что все эти вещи производятся с использованием ископаемого топлива. Скажем в металлургии нужно сжигать уголь, без этого не обойтись. Я думаю им стоит перейти к астрономии по методу Фаллеса. Спустившись в глубокий колодец наблюдать ночами звезды без всяких там извращений цивилизации вроде телескопов.
                                      • НЛО прилетело и опубликовало эту надпись здесь
                                          0
                                          А может быть запретить всякие Kepler'ы и Спектры-Р запускать?
                                          Они ведь приносят двойной вред — и углеродный след от запуска и от обработки данных в том числе на Python.

                                            0
                                            Еще курить запретить и перекуры — от них широкий углеродный след.
                                            +2
                                            Хотел повторить свой комментарий что «На счету питона уже много задушенных
                                            программистов» ( habr.com/ru/post/518838/#comment_22070392 ), но теперь очевидно что не только программистов.
                                              –1
                                              Чем же таким душит пайтон некоторых программистов? Какая смысловая нагрузка вашего комментария? Красивая игра слов? Может душит зависть к использующим этот язык? Тогда не питон точно)
                                                +1
                                                Почему меня должна душить зависть? Я им пользуюсь по необходимости. Симуляции в блендере, сверточные сети. Но он мне не нравится. Мне вообще ни один язык программирования не нравится. То есть программировать нравится, уже лет 40 как, а языки не нравятся. Интерпретаторы вообще не люблю, но они тоже нужны, Почему бы и не пошутить по поводу оного из них??? Мне в нем душно. В питоне, в смысле.
                                                  +1
                                                  Шутка плоская и явно неудачная. Все же читая коменты на хабре ожидаешь какую то осмысленную инфу, а не плоские шуточки которые некоторые люди могут счесть и оскорбительными. Python — опенсорсная и бесплатная технология, и тем более если вы сами его используете должны быть благодарны разработчикам которые создали этот язык и экосистему.
                                                    0
                                                    У меня уже в красном углу стоят иконы Дениса Ричи и Николаса Вирта.
                                                    И в утренних молитвах я обязуюсь преследовать поклонников змея поганого
                                              0

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


                                              суперкомпьютер не нужно использовать на полную мощность

                                              Оптимальное сочетание производительности и выбросов достигается для ~1000 ядер, после чего суперкомпьютер начинает производить больше углерода, чем рабочая станция.

                                              Кажется речь идёт про какой-то конкретный суперкомпьютер, а то и про конкретную вычислительную программу, на нём запущенную.


                                              Наконец, автор призвал воздержаться от использования Python, если речь не идет о больших вычислениях.

                                              Как раз большие вычисления и надо оптимизировать в первую очередь. Я и не предполагал что кто-то додумается для них интерпретируемый язык использовать.


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

                                              • НЛО прилетело и опубликовало эту надпись здесь
                                                  0
                                                  PHP уже давно очень быстрый, несмотря на то что интерпретируемый
                                                  +2

                                                  Ээх, не на то направлена их энергия. Знали бы они, сколько энергии, во всем мире, съедает js — не беспокоились бы о питоне

                                                    +1
                                                    Надо бы всем этим гражданам запретить пользоваться всеми достижениями науки с того момента, как она стала греть планету расчетами. Желательно с того момента, когда ученые еще пользовались бумагой (они ведь жгли свечи, а потом перешли на лампы накаливания). Тогда у них не останется ни лишнего времени, ни сил, чтобы заниматься такой ерундой.
                                                      +1
                                                      Наконец, автор призвал воздержаться от использования Python, если речь не идет о больших вычислениях. Python (и в меньшей степени Java) требуют значительно больше времени на запуск и производит больше CO2, чем C ++ или Fortran.

                                                      Они учли сколько Це-О-два выделилось при написании кода на фортране?
                                                        0

                                                        с учётом возраста некоторых разработчиков на фортране, имеет смысл учитывать и количество выделенного при разработке кода CH₄


                                                        P. S.

                                                        шутка, просто шутка. ничего против разработчиков на фортране не имею, и самому уже давно за 40.

                                                          +2
                                                          Я пишу и на python и на fortran. На фортране на порядок больше строк надо писать для той-же функциональности (на порядок больше ошибок, на порядок больше время на кодирование).
                                                          Если задача творческая и основное время тратится на разработку алгоритма то по суммарным затратам разница не большая.
                                                          Я искал что-то такое же выразительное как python и такое же быстрое как фортран — numba, это то что я нашел для себя. Julia к сожалению не подошла, там мало ООП, некоторые утверждают, что это даже круче, но я не соглашусь.

                                                          PS. не я поставил минус и я не вижу повода для минусов в вашем комментарии
                                                        +1

                                                        Будем ждать исследования, где говорится, что английский язык самый не экологичный. Также с графиками и доказательствами… всё как положено.

                                                          –1
                                                          А черный цвет кожи увеличивает поглощение солнечной радиации биосферой Земли, повышая среднегодовую температуру.
                                                          0
                                                          При работе с одним ядром суперкомпьютер производит меньше углерода, чем рабочая станция.

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

                                                            +1
                                                            Вообщем «выполнил расчет на суперкомпьютере — посади дерево»
                                                              +3
                                                              Куда-то он не туда воюет. Хотите спасти планету — отстреливайте js-программистов, они уже превратили веб в жирное жручее дерьмо, а теперь ещё и на десктопы лезут.
                                                                +1

                                                                А это точно астрономы? Не совсем профильное исследование.

                                                                  0
                                                                  А как компьютеры производят углерод? Я думал, его в шахтах добывают.
                                                                    0
                                                                    Лопатами)

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

                                                                  Самое читаемое