Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GSF MeetUp Tokyo 2023 - マイクロソフト各製品サービスに見るGSF 実装例

GSF MeetUp Tokyo 2023 - マイクロソフト各製品サービスに見るGSF 実装例

SCI や Carbon Aware SDK など、GSF で議論されている仕様やSDKなどは、抽象的なものも多いです。また、カーボン排出の根拠となるデータがかなり曖昧なところもあり、いざ実装しようとなると躊躇することも多いと思います。
そんな中で、Microsoft は各種製品・サービスに既に Carbon Aware のためだったり、また、GHGプロトコルの一部にも使えそうなデータソースとなるような実装を幾つか始めています。ここでは、それらの実装例を製品機能を知るのではなく、実装の実体を見ていく事で、自分たちがどのように今取り組めるのかの参考にします。Product Manager の気持ちで一緒に見ていきましょう。

イベントサイト:
https://www.meetup.com/ja-JP/gsf-tokyo/events/292676506/

Green Software Foundation (GSF):
https://greensoftware.foundation/

More Decks by Daiyu Hatakeyama | @dahatake | 畠山 大有

Other Decks in Technology

Transcript

  1. Microsoft の GSF 実装例から学ぶこと
    - とにかく始める事です😊 -
    畠山 大有 | Daiyu Hatakeyama | @dahatake
    Microsoft Japan
    /dahatake
    @dahatake
    /in/dahatake
    /dahatake
    /dahatake
    [email protected]
    /dahatake

    View Slide

  2. 製品機能を知ることも大事
    でも、あくまで
    Case Study
    としての取り扱いです😎

    View Slide

  3. View Slide

  4. Carbon
    2030年までに
    カーボンネガティブ
    Water
    2030年までに
    ウォーターポジティブ
    Waste
    2030年までに
    廃棄物ゼロ
    Ecosystem
    プラネタリー
    コンピューターの構築
    • 2025 年までに直接排出
    量をほぼゼロにする
    • 2030 年までに
    スコープ 3 の排出量を
    半分に削減する
    • 2050 年までに
    創業以来のCO2
    排出量を
    削減する
    • 水の使用量を削減する
    • 水ストレスの
    高い地域に水を補給する
    • より多くの水へのアクセスを
    確保する
    • 水データのデジタル化
    • Microsoft Circular
    Center でデバイスを
    再利用および
    リサイクルする
    • 使い捨てプラスチックを
    排除する
    • 従業員の参加により
    廃棄物を減らす取り組み
    • ビッグデータとテクノロジーを
    使用して自然界を監視、
    モデル化、管理する
    • 2025年 までに使用する
    土地よりも多くの土地を
    保護する
    Microsoft Commitment

    View Slide

  5. Data Driven

    View Slide

  6. ビジネス、法務、政策渉外の専門家チームを指揮。
    また、サイバーセキュリティ、プライバシー、人工知能、環境の持続可能性、人権、移民、慈善活動など、
    テクノロジと社会の接点となる重要な問題に取り組むマイクロソフトの活動を主導する上で重要な役割を
    果たしている。
    マイクロソフトのキャロル アン ブラウンと共著し、最近ベストセラーとなった著書
    「Tools and Weapons: The Promise and the Peril of the Digital Age」 の中で、
    テクノロジ業界により大きな責任を担うよう促すとともに、新しいテクノロジが生み出す課題に
    迅速に対応するよう各政府に呼びかけています。
    「ツールが強力になるにつれ、そのツールがもたらす可能性のある利益や被害もそれだけ大きくなります...
    テクノロジ イノベーションが速度を緩めることはありません。ツールの管理をスピードアップすることが
    必要です」
    Brad Smith | @BradSmi,
    President and Vice Char
    Brad Smith - News Center Japan (microsoft.com)

    View Slide

  7. Green Software
    in Microsoft

    View Slide

  8. • 持続可能なソフトウェアは、新しい考え方を必要とする新しい考慮事項
    • ソフトウェアをより持続可能なものにすることは、必ずしも同じではありません...
    グリーンソフトウェアはどう違うのか?
    コストの最適化
    サーバー容量をまとめて購入する方が
    安価。ただ、エネルギーの節約は
    出来ない。浪費することさえある
    パフォーマンスの最適化
    研究によると、パフォーマンスの向上は
    より多くのエネルギーを消費する
    アプリケーション速度を上げると、
    使用量とエネルギー消費量の増加に
    よるリバウンド効果が生じる可能性が
    ある
    バッテリ寿命の最適化
    ソフトウェアを最適化してバッテリー寿命
    を改善することは、ソフトウェアを持続
    可能なものにすることとは異なる
    多くのバッテリ駆動デバイスは、
    顧客体験を向上させるために適応する
    ため、プラグを差し込むと
    より多くの電力を消費する

    View Slide

  9. • 方法論: Green Software Foundation’s Software Carbon
    Intensity specification
    • sci/Software_Carbon_Intensity_Specification.md at dev · Green-Software-
    Foundation/sci (github.com)
    • 炭素強度データ: WattTime など
    • #1 テレメトリ: 現在の電源からの炭素排出量プロファイルを報告
    • #2 タイムシフト: 特定のウィンドウで最も環境に優しい時間に
    ワークロードを自動的にスケジューリング
    • #3 ロケーション (場所)のシフト: 排出量が最も少ない場所で実
    行するようにワークロードを自動的にスケジューリング
    GSF - Carbon-Aware Core SDK

    View Slide

  10. 多くのエンジニアが思う
    「使える」レベルには
    遠い😅

    View Slide

  11. Microsoft 製品・サービスへの
    初期の Green Software Engineering 実装例
    注: Carbon Aware SDK をそのまま実装しているわけではない
    Windows カーボン対応の
    更新プログラム
    ローカルグリッドでより多くの再生可能
    エネルギーが利用可能になったときに
    発生するタイムシフト更新を含め、
    Windowsをより持続可能なものに
    することに焦点を当てている
    Azure最適化
    コアプラットフォーム
    開発者向けのカーボンアウェア
    ダッシュボードを開発。Azure
    プラットフォームのリアルタイムの
    ロケーションベースのスコープ2エネルギー
    使用量を推定。
    Microsoft 365 や Dynamics 365
    でもリリース済み
    Azure ML
    エネルギー使用量
    Azure ML チームは、ユーザーが Azure
    ML ワークロードのエネルギー使用量を
    kWh で確認できるようにする機能を
    発表。チームはまた、顧客と協力して、
    彼らが開発しオープンソース化した
    Carbon Aware SDK を活用してタイ
    ムシフトワークロードを実験しています
    aka.ms/AMLEnergy
    #2 タイムシフト #1 テレメトリー #1 テレメトリー

    View Slide

  12. 測定できないものは
    管理も出来ない

    View Slide

  13. SCI計測の例 – eShoponWeb and Case Study
    dotnet-architecture/eShopOnWeb: Sample ASP.NET Core 6.0 reference application, powered by Microsoft, demonstrating a layered application
    architecture with monolithic deployment model. Download the eBook PDF from docs folder. (github.com)
    sci-guide/msft-eShoppen.md at dev · Green-Software-Foundation/sci-guide (github.com)
    • シンプルな eコマースサイトの例
    SCI score
    = SCI for the client device
    + SCI for Web App server
    + SCI for DB Server
    + SCI for Networking infrastructure
    = 156.9586 gCo2e per R (500 users in 1 hour)

    View Slide

  14. #1 - テレメトリとレポート
    • グリッドベースの炭素強度 (Carbon Intensity) データを AZ リージョンにマッピング (WattTime API)
    • エネルギー消費量に基づいてロケーションベースの炭素排出量を計算
    Example: East US 2 region
    CO2 emitted: 326 lb
    Energy Used: 244.7 kWh
    Observation Time:
    (04/01/21)
    23.5hr
    Peak Emissions:
    9:45AM – 8:00PM
    レポートのサンプル

    View Slide

  15. Emission Impact
    Dashboard
    Microsoft Cloud 利用時のCO2
    排出量
    • Azure, Microsoft 365 及び Dynamics 365 と関連付けられた
    現在および今後の推定の CO2
    排出量を算出
    • オンプレミスと比較した節減量を算出
    • 排出量の削減をビジネス上の利益に換算
    • Power BI のアプリケーションとして提供
    すべてのお客様が使用可能
    組織内で持続可能性に関するレポートと推進を担当する
    ユーザーは、Microsoft Cloud の各加入契約の炭素排出量を
    定量化し、Azure とオンプレミスのデータセンターでワークロードを
    実行した場合の推定 CO2
    削減量を比較することができます
    https://www.microsoft.com/ja-jp/sustainability/emissions-impact-dashboard

    View Slide

  16. • 計算コストは2012年から2018年にかけて300,000倍に増加
    • AIワークロードで「大幅な」ROIを見ている企業はわずか11%
    • GPT-3のトレーニングは、大陸横断往復フライト(SF<>NYC)の3倍の炭素を排出
    Machine Learning の驚異的なコスト
    Source: Strubell
    [1907.10597] Green AI (arxiv.org)
    [1906.02243] Energy and Policy Considerations for Deep Learning in NLP (arxiv.org)

    View Slide

  17. 例 - バッチ推論の実行= 13.8 kWh/million inferences
    Greenhouse Gas Equivalency per million inferences:
    • 24マイル走行
    • 11ポンドの石炭が燃やされた
    • 1.1ガロンのガス
    Model Framework GPU Precision Batch
    Size
    #
    requests
    Duration
    (hours)
    Throughput
    (inf/sec)
    Energy
    (kWh)
    CPMI
    ($USD)
    BERT Tensor-flow V100 FP32 16 100,000 2.5 11.4 1.38 537.55
    Experiment Link
    Model Configuration
    Standard GPU: NVIDIA V100 ND40rs v2 @$22.061/hr pay-as-you-go price
    https://techcommunity.microsoft.com/t5/green-tech-blog/charting-the-path-towards-sustainable-ai-
    with-azure-machine/ba-p/2866923

    View Slide

  18. 利点:
    • モデルの同時実行性
    • 動的バッチ処理
    • 重み精度
    • 混合重量の精度により、コストを50%以上削減
    NVIDIA Triton 推論サーバー
    (repo)
    Model: BERT
    *From on-prem V100 PCIe 12G GPU
    Triton
    Backend Precision
    Best
    Throughput
    (inf/sec)
    GPU
    Utilization
    (%)
    GPU
    Memory
    (MB)
    GPU
    Power
    (W)
    CPMI
    ($)
    ORT-TRT FP32 224 34.1 2542 77.5 3.79
    ORT-TRT FP16 720 23.9 2036 59.6 1.18

    View Slide

  19. • 利用GPUの消費エネルギーを Metrics として追加
    Training Cost Transparency In AzureML Studio UI

    View Slide

  20. #2 - タイムシフト
    コンピューティングを1日の炭素強度サイクルに一致させることで、炭素節約を促進
    電源別発電量(ElectricityMap)

    View Slide

  21. #2 - 実際の タイムシフト の節約

    View Slide

  22. タイムシフト の例: Windows Update
    • Windows Update の実行を再生可能なエネルギーで
    作られた電源供給時に実行
    • パートナー連携
    • electricityMap
    • WattTime
    • Insider Build 22567 より
    Announcing Windows 11 Insider Preview Build 22567 | Windows Insider Blog
    測定

    View Slide

  23. • 最近の調査によると、北米内でも約40倍の違いがある
    • ケベック州、カンダ (20g CO2eq/kWh) vs. アイオワ州、米国 (736.6g CO2eq/kWh)
    • いくつかの研究は、これらの行動が45%から99%もの炭素削減をもたらすことが
    できることを示す
    • Putting a CO2 figure on a piece of computation | IEEE Conference Publication | IEEE Xplore
    #3 - ロケーションシフト
    地域別の世界中のサーバーの炭素強度の変動。1 本のバーは 1 つのデータ ポイントを示す
    [1910.09700] Quantifying the Carbon Emissions of Machine Learning (arxiv.org)

    View Slide

  24. #3 - 現実世界のロケーションシフトの節約

    View Slide

  25. まなび

    View Slide

  26. 不完全でも始める事の価値
    • リリースしているが、プロトタイプの域
    は出ていない
    • ユーザーのフィードバックとともに改善
    • 世に出すからこそデータが集まる
    • Product Teams など人が強くなる!
    • そして、GSF へのフィードバックにも
    • Carbon だけの取り組みではない
    • 省エネ、コスト、パフォーマンス、可用性、モビリティ
    など Computing の永遠の改善テーマ
    • 1つの施策で複数の効果が出る期待が大きい

    View Slide

  27. SX ≒ DX

    View Slide

  28. Green Software Tools
    炭素排出量の少ないアプリケーションを構築するための研究、ツール、コード、ライブラリ、トレーニング(GitHub Awesome Green Software)
    Code Based
    codecarbon.io Python:コンピューティングからのCO2排出量を追跡して削減
    energyusage Python:計算の環境への影響を測定するパッケージ。関数を提供。別の機能のエネルギー使用量と関連する炭素
    排出量を評価する
    carbontracker Python:トレーニングのエネルギー消費量と二酸化炭素排出量を深く追跡および予測する学習モデル
    Cloud Based
    AWS: Green Cost Explorer AWSの気候関連支出分析
    Microsoft: Microsoft Emissions Impact Dashboard Azure および M365 用のアプリ
    Google: Cloud Jewels Blog – Cloud Jewels: Estimating kWh in the Cloud
    Multicloud: Cloud Carbon Footprint オープンソースのクラウドエネルギーおよび炭素排出量測定ツール
    AI
    Carbon
    Experiment Impact Tracker Library: MLジョブの炭素コストを計算
    Scaphandre: 電力測定(ベアメタルホスト、プロメテウス、Dockerコンテナ内)
    Energy
    Beaker (Allen Institue For AI) コンテナ内のGPUパワーをキャプチャ
    carbontracker
    RAPL in Action: Experiences in Using RAPL for Power Measurements
    Tool for tracking and predicting the energy consumption and carbon footprint of training deep learning models
    as described in Anthony et al. (2020)
    OS based
    Linux
    FreeIPMI: DCMI経由でベアメタルマシンの消費電力を取得(IPMI extension)
    Ipmitool: DCMI経由でベアメタルマシンの消費電力を取得(IPMI extension)
    PoweerTOP: 消費電力と管理に関する問題を診断するためのLinuxツール
    Turbostress このツールは、負荷を生成し、この負荷のコンピューター電力メトリックを出

    Web
    Carbonalyser – TheShiftProject
    Carbon Footprint of Sending Data: Shiftプロジェクトリーンに基づいて、ネットワーク
    トラフィックからの炭素排出量を推定するためのオンライン計算機情報通信レポート
    Clickclean.org: 一般的に使用されるアプリケーションのエネルギーフットプリント
    EcoGrader.com: オンラインウェブサイトの炭素推定器
    EcoMeter.org: ウェブサイトのエコデザインの成熟度を分析する
    GreenFrame.io: ウェブサイトのカーボンフットプリントを計算する
    GreenSpector
    Website Carbon Calculator: オンラインウェブサイトの炭素推定器
    WeDeex – Chrome
    WeDeex – Edge
    Windows
    Powercfg Blog: アプリケーションの電力と炭素への影響の測定
    WeDeex Blog: エネルギー転換を容易にするために電気用のユカが必要です
    免責事項:このリストは情報提供のみを目的として作成されており、リンクは承認または推奨を構成するものではありません

    View Slide

  29. Learn More: Research Articles
    GitHub – Green-Software-Foundation/awesome-green-software
    Artificial Intelligence
    Energy and Policy Considerations for Deep Learning in NLP
    Energy-Efficient AI | Vivienne Sze | TEDxMIT
    Quantifying the Carbon Emissions of Machine Learning
    SECure: A Social and Environmental Certificate for AI Systems
    The AI Gambit — Leveraging Artificial Intelligence to Combat Climate Change: Opportunities,
    Challenges, and Recommendations
    Computation
    A Comparative Study of Methods for Measurement of Energy of Computing
    An experiment-driven energy consumption model for virtual machine management systems
    Quantifying the Carbon Emissions of Computation
    Emissions
    A Framework for Collective Carbon Neutrality
    Methodological Guide – Bilan Carbone (French)
    Putting a CO2 figure on a piece of computation
    The energy and carbon footprint of the ICT and E&M sector in Sweden 1990–2015 and beyond
    The Most Important GHG Accounting Concept You May Not Have Heard of: The Attributional
    Consequential Distinction
    Programming Languages
    Energy Efficiency Across Programming Languages
    Google Apps: Energy Efficiency in the Cloud
    Green and Sustainability in Software Development Lifecycle Process
    GreenC5: An Adaptive, Energy-Aware Collection for Green Software Development
    Software development methodology in a Green IT environment
    Streaming
    DImpact
    Articles
    Assessing the suitability of the Greenhouse Gas Protocol for calculation of
    emissions from public cloud computing workloads
    Estimating the marginal carbon intensity of electricity with machine learning
    How to incorporate carbon free energy for Google Cloud regions
    How we’re making Dropbox data centers 100% carbon neutral

    View Slide

  30. © Copyright Microsoft Corporation. All rights reserved.
    Invent with purpose.

    View Slide