SlideShare a Scribd company logo
© 2023 NTT DATA Corporation
© 2023 NTT DATA Corporation
GSF MeetUp Tokyo
明日から始める!
ソフトウェアのグリーン化
2023年4月21日
NTTデータ 末永 恭正 @YaSuenag
© 2023 NTT DATA Corporation 2
Green Software Foundation
グリーンなソフトウェアの開発に必要なものを提供するグローバルな非営利組織
• 仕様
• ツール
• 教育コンテンツ
• オープンデータ
• ベストプラクティス
:
グリーンなソフトウェアを作る
イロハが提供されている
GSFのコンテンツを活用しながら
明日から始められる
グリーンソフトウェア作りのきっかけ
をご紹介します!
© 2023 NTT DATA Corporation 3
01
“測れないなら改善できない”
~ If you can't measure it, you can't improve it ~
© 2023 NTT DATA Corporation 4
“カイゼン”のサイクル
計測
CPU、メモリ、NW、etc…
評価
改善
インフラ、アプリ、etc…
計測
消費電力、CO2負荷、etc…
評価
改善
インフラ、アプリ、etc…
性能の改善 環境負荷の改善
© 2023 NTT DATA Corporation 5
Software Carbon Intensity
ICTシステムのCO2負荷を数値化するグローバル基準
CO2負荷を自動車の燃費のように評価できる!
((E×I) + M) per R
E:システムが消費するエネルギー
I:発電時のCO2負荷(地域ベース)
M:システム実体(ハコモノ)のCO2排出量
R:集計単位(同時実行ユーザー数、API呼び出し回数など)
申請中!
© 2023 NTT DATA Corporation 6
どう測る?
各コンポーネントのSCIを積み上げて算出する(Software boundary)
計算機器 ストレージ
ネットワーク 待機系
テスト環境
エッジデバイス
実測する 見積もる
…
• RAPL
• IPMI
• Redfish
:
SCI Guidance
Awesome Green Software
ツール、サービス、論文など
グリーンソフトウェアを実践するための
様々な情報が集約されたリンク集
迷ったときの “道具箱”
© 2023 NTT DATA Corporation 7
ケーススタディ
Case Study Submissions | SCI Guidance
[Case Study] [NTT DATA] On-Premise Web
ラズパイからクラウドまで、さまざまな環境・ワークロードでSCIを算出した際の考え方や
実測値を公開中!
オンプレWebシステムのケーススタディもあります!
© 2023 NTT DATA Corporation 8
02
“Greenなソフトウェア”とは
~ There‘s more than one way to do it ~
© 2023 NTT DATA Corporation 9
プログラムでの “表現方法” は1つだけではない
1 + 2 + 3 + … + n を考えてみる
やり方1:愚直にループ
int result = 0;
for (int i = 1; i <= n; i++) {
result += i;
}
やり方2:公式を使う
int result = (n * (n + 1)) / 2;
効率がよさそうなのは やり方2
勝負を決するのは 機械の使い方
© 2023 NTT DATA Corporation 10
CPUの “使い方” による消費エネルギー差の例
Java HotSpot VMでは同じコードでもJIT最適化レベルによってCPUの使い方が変わる
0
200
400
600
800
1000
1200
1400
1600
1800
AVX-512 AVX2 SSE4.2
エネルギー(J)
• 4032×3024ピクセルの画像を3000回ネガポジ変換して測定を実施
• 測定環境
• CPU:Intel Xeon Platinum 8260M
• OS:CentOS 8
• Java:OpenJDK 18
• 消費エネルギー:RAPLで計測
Javaによる画像ネガポジ反転処理時のCPU消費エネルギー
消費エネルギーも変化する!
© 2023 NTT DATA Corporation 11
グリーンソフトウェアの “教科書”
アーキテクチャから細かなテクニックまで
グリーンソフトウェアの実践に
必要なものがまとめられている
Green Software Patterns
© 2023 NTT DATA Corporation 12
03
CO2負荷をシステム運用に活用する
© 2023 NTT DATA Corporation 13
発電時CO2排出量は “状況” に左右される
時間 天気 主な発電方式
昼 夜 晴 雨 化石燃料 再エネ
タイムシフト ロケーションシフト
• 動かすのに “いいところ” をリアルタイムに選択したい
• 実際どの程度CO2排出したのか知りたい
© 2023 NTT DATA Corporation 14
発電時CO2排出量を知るために – 主なWebサービス
欧米中心のデータ
日本も含まれる
© 2023 NTT DATA Corporation 15
発電時CO2排出量を知るために – 主なWebサービス
欧米中心のデータ
日本も含まれる
© 2023 NTT DATA Corporation 16
Carbon Aware SDK
発電時CO2排出量を地域・時間でクエリできるOSS
[
{
"Location": "UK",
"Time": "2022-08-23T08:50:00+00:00",
"Rating": 384.64632976,
"Duration": "00:05:00"
}
]
• 時間や地域をキーにデータソースから
発電時CO2排出量を返却するWebAPIを提供
• 2022年にはこれを活用するハッカソンも開催!
• スイスのUBS銀行はMicrosoftと共同で
Carbon Aware SDKを活用したホワイトペーパー
を公開
© 2023 NTT DATA Corporation 17
より使いやすくなるように開発参画中!
© 2023 NTT DATA Corporation 18
04
まとめ
© 2023 NTT DATA Corporation 19
グリーンソフトウェアを “明日から始める!” みなさんへ
• 基準を知る
• Software Carbon Intensity
• 使える道具を手に入れ、取れる手段を講じる
• Awesome Green Software
• Green Software Patterns
• 使っている電気のCO2排出量を意識する
• Carbon Aware SDK
• プログラムを効率よく動かしたい!という強い気持ち
© 2023 NTT DATA Corporation 20
今まで私たちエンジニアが培ってきたものは
グリーンソフトウェアの領域でも活かしていけるはず!
GitHubで一緒に
議論・開発
していきましょう!
© 2023 NTT DATA Corporation
本資料に掲載されている製品名、会社名、サービス名は、各社の商標または登録商標です。

More Related Content

PDF
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
NTT DATA Technology & Innovation
 
PPTX
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
 
PDF
Git & ブランチモデルで学ぶ バージョン管理入門
kazuki kuriyama
 
PDF
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
Preferred Networks
 
PDF
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
NTT DATA Technology & Innovation
 
PDF
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
 
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
NTT DATA Technology & Innovation
 
Anthos を使ったエンタープライズ向けクラスタの設計とアップグレード戦略のススメ(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
 
Git & ブランチモデルで学ぶ バージョン管理入門
kazuki kuriyama
 
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
Preferred Networks
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo!デベロッパーネットワーク
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
 
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
NTT DATA Technology & Innovation
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
 

What's hot (20)

PDF
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA OSS Professional Services
 
PPTX
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
NTT DATA Technology & Innovation
 
PDF
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
Preferred Networks
 
PPTX
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
NTT DATA Technology & Innovation
 
PDF
Singularityで分散深層学習
Hitoshi Sato
 
PDF
PG-REXで学ぶPacemaker運用の実例
kazuhcurry
 
PDF
BuildKitの概要と最近の機能
Kohei Tokunaga
 
PDF
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
Masahiko Sawada
 
PDF
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
NTT DATA Technology & Innovation
 
PPTX
Dockerからcontainerdへの移行
Akihiro Suda
 
PDF
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
 
PDF
How to Schedule Machine Learning Workloads Nicely In Kubernetes #CNDT2020 / C...
Preferred Networks
 
PDF
Dockerからcontainerdへの移行
Kohei Tokunaga
 
PDF
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
NTT DATA Technology & Innovation
 
PDF
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PDF
[GKE & Spanner 勉強会] GKE 入門
Google Cloud Platform - Japan
 
PPTX
Jakarta EE + MicroProfile との付き合い方
Hirofumi Iwasaki
 
PDF
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
 
PDF
DockerとPodmanの比較
Akihiro Suda
 
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA OSS Professional Services
 
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
NTT DATA Technology & Innovation
 
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
Preferred Networks
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
NTT DATA Technology & Innovation
 
Singularityで分散深層学習
Hitoshi Sato
 
PG-REXで学ぶPacemaker運用の実例
kazuhcurry
 
BuildKitの概要と最近の機能
Kohei Tokunaga
 
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
 
アーキテクチャから理解するPostgreSQLのレプリケーション
Masahiko Sawada
 
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
NTT DATA Technology & Innovation
 
Dockerからcontainerdへの移行
Akihiro Suda
 
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
 
How to Schedule Machine Learning Workloads Nicely In Kubernetes #CNDT2020 / C...
Preferred Networks
 
Dockerからcontainerdへの移行
Kohei Tokunaga
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
NTT DATA Technology & Innovation
 
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
[GKE & Spanner 勉強会] GKE 入門
Google Cloud Platform - Japan
 
Jakarta EE + MicroProfile との付き合い方
Hirofumi Iwasaki
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
 
DockerとPodmanの比較
Akihiro Suda
 
Ad

Similar to 明日から始める! ソフトウェアのグリーン化(GSF MeetUp Tokyo 発表資料) (17)

PDF
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
NTT DATA Technology & Innovation
 
PPTX
Green Software Foundation Global Summit 2022 Tokyo グリーンソフトウェアとは?
Daiyu Hatakeyama
 
PDF
GSF Global Summit 2024 (Green Software Foundation Global Summit 2024 Tokyo 講演資料)
NTT DATA Technology & Innovation
 
PPTX
クラデベ - Developer のための Sustainability 入門
Daiyu Hatakeyama
 
PPT
Hypernetworking Japan in Kanji
Bill St. Arnaud
 
PDF
Ecodesigner Userguide(Jp)
guestf4ca97c
 
PDF
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
Amazon Web Services Japan
 
PPTX
データセンターの電力量ログをGAEで
hidemotoNakada
 
PPTX
PwC - Strategic Sustainability & Innovation Forum - Microsoft の Sustainabilit...
Daiyu Hatakeyama
 
PDF
ソフトウェアパターン概論およびパターンを活用したアーキテクチャ設計
Hironori Washizaki
 
PPTX
世界最先端2030年カーボンネガティブを目指すマイクロソフトのサステナビリティとIoT
Daiyu Hatakeyama
 
PDF
「hbstudy#23 OpenStack祭!!」資料 ~OpenStackプロジェクトの全体像~
Masanori Itoh
 
PDF
Open stack reference architecture v1 2
Dell TechCenter Japan
 
PPTX
SoCC12報告
Hirotaka Ogawa
 
PDF
オープンソースのIoT向けスケールアウト型データベース GridDB 〜性能ベンチマーク結果とOSSを利用したビッグデータ分析環境〜
griddb
 
PPTX
Connect 2021郡山: 街づくりのためのデジタル技術 IoT – Data - AI その先に考えたいコト
Daiyu Hatakeyama
 
PDF
GPU ソリューションラボならびに検証/導入事例のご紹介
Dell TechCenter Japan
 
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
NTT DATA Technology & Innovation
 
Green Software Foundation Global Summit 2022 Tokyo グリーンソフトウェアとは?
Daiyu Hatakeyama
 
GSF Global Summit 2024 (Green Software Foundation Global Summit 2024 Tokyo 講演資料)
NTT DATA Technology & Innovation
 
クラデベ - Developer のための Sustainability 入門
Daiyu Hatakeyama
 
Hypernetworking Japan in Kanji
Bill St. Arnaud
 
Ecodesigner Userguide(Jp)
guestf4ca97c
 
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
Amazon Web Services Japan
 
データセンターの電力量ログをGAEで
hidemotoNakada
 
PwC - Strategic Sustainability & Innovation Forum - Microsoft の Sustainabilit...
Daiyu Hatakeyama
 
ソフトウェアパターン概論およびパターンを活用したアーキテクチャ設計
Hironori Washizaki
 
世界最先端2030年カーボンネガティブを目指すマイクロソフトのサステナビリティとIoT
Daiyu Hatakeyama
 
「hbstudy#23 OpenStack祭!!」資料 ~OpenStackプロジェクトの全体像~
Masanori Itoh
 
Open stack reference architecture v1 2
Dell TechCenter Japan
 
SoCC12報告
Hirotaka Ogawa
 
オープンソースのIoT向けスケールアウト型データベース GridDB 〜性能ベンチマーク結果とOSSを利用したビッグデータ分析環境〜
griddb
 
Connect 2021郡山: 街づくりのためのデジタル技術 IoT – Data - AI その先に考えたいコト
Daiyu Hatakeyama
 
GPU ソリューションラボならびに検証/導入事例のご紹介
Dell TechCenter Japan
 
Ad

More from NTT DATA Technology & Innovation (20)

PDF
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
NTT DATA Technology & Innovation
 
PDF
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
 
PDF
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
PDF
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
NTT DATA Technology & Innovation
 
PDF
2025年現在のNewSQL (最強DB講義 #36 発表資料)
NTT DATA Technology & Innovation
 
PDF
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
NTT DATA Technology & Innovation
 
PDF
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
NTT DATA Technology & Innovation
 
PDF
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PDF
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
NTT DATA Technology & Innovation
 
PDF
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
NTT DATA Technology & Innovation
 
PDF
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
NTT DATA Technology & Innovation
 
PDF
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PDF
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PDF
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
NTT DATA Technology & Innovation
 
PDF
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PDF
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
NTT DATA Technology & Innovation
 
PDF
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
NTT DATA Technology & Innovation
 
PDF
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
NTT DATA Technology & Innovation
 
PDF
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 
PDF
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
NTT DATA Technology & Innovation
 
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
NTT DATA Technology & Innovation
 
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
NTT DATA Technology & Innovation
 
2025年現在のNewSQL (最強DB講義 #36 発表資料)
NTT DATA Technology & Innovation
 
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
NTT DATA Technology & Innovation
 
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
NTT DATA Technology & Innovation
 
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
NTT DATA Technology & Innovation
 
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
NTT DATA Technology & Innovation
 
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
NTT DATA Technology & Innovation
 
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
NTT DATA Technology & Innovation
 
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
 
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
NTT DATA Technology & Innovation
 
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
NTT DATA Technology & Innovation
 
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
NTT DATA Technology & Innovation
 
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
NTT DATA Technology & Innovation
 

Recently uploaded (10)

PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
PDF
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
PDF
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
PPTX
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
PDF
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
PDF
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
2025_7_25_吉祥寺_設計ナイト_ADR運用におけるデータ利活用の考え方.pptx
ssuserfcafd1
 
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
VMUG Japan book vsan 20250515 CPU/Memory vSAN
Kazuhiro Sota
 
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
第三世代 ウェザーステーションキット v3 ー WSC3-L 日本語カタログ
CRI Japan, Inc.
 

明日から始める! ソフトウェアのグリーン化(GSF MeetUp Tokyo 発表資料)

  • 1. © 2023 NTT DATA Corporation © 2023 NTT DATA Corporation GSF MeetUp Tokyo 明日から始める! ソフトウェアのグリーン化 2023年4月21日 NTTデータ 末永 恭正 @YaSuenag
  • 2. © 2023 NTT DATA Corporation 2 Green Software Foundation グリーンなソフトウェアの開発に必要なものを提供するグローバルな非営利組織 • 仕様 • ツール • 教育コンテンツ • オープンデータ • ベストプラクティス : グリーンなソフトウェアを作る イロハが提供されている GSFのコンテンツを活用しながら 明日から始められる グリーンソフトウェア作りのきっかけ をご紹介します!
  • 3. © 2023 NTT DATA Corporation 3 01 “測れないなら改善できない” ~ If you can't measure it, you can't improve it ~
  • 4. © 2023 NTT DATA Corporation 4 “カイゼン”のサイクル 計測 CPU、メモリ、NW、etc… 評価 改善 インフラ、アプリ、etc… 計測 消費電力、CO2負荷、etc… 評価 改善 インフラ、アプリ、etc… 性能の改善 環境負荷の改善
  • 5. © 2023 NTT DATA Corporation 5 Software Carbon Intensity ICTシステムのCO2負荷を数値化するグローバル基準 CO2負荷を自動車の燃費のように評価できる! ((E×I) + M) per R E:システムが消費するエネルギー I:発電時のCO2負荷(地域ベース) M:システム実体(ハコモノ)のCO2排出量 R:集計単位(同時実行ユーザー数、API呼び出し回数など) 申請中!
  • 6. © 2023 NTT DATA Corporation 6 どう測る? 各コンポーネントのSCIを積み上げて算出する(Software boundary) 計算機器 ストレージ ネットワーク 待機系 テスト環境 エッジデバイス 実測する 見積もる … • RAPL • IPMI • Redfish : SCI Guidance Awesome Green Software ツール、サービス、論文など グリーンソフトウェアを実践するための 様々な情報が集約されたリンク集 迷ったときの “道具箱”
  • 7. © 2023 NTT DATA Corporation 7 ケーススタディ Case Study Submissions | SCI Guidance [Case Study] [NTT DATA] On-Premise Web ラズパイからクラウドまで、さまざまな環境・ワークロードでSCIを算出した際の考え方や 実測値を公開中! オンプレWebシステムのケーススタディもあります!
  • 8. © 2023 NTT DATA Corporation 8 02 “Greenなソフトウェア”とは ~ There‘s more than one way to do it ~
  • 9. © 2023 NTT DATA Corporation 9 プログラムでの “表現方法” は1つだけではない 1 + 2 + 3 + … + n を考えてみる やり方1:愚直にループ int result = 0; for (int i = 1; i <= n; i++) { result += i; } やり方2:公式を使う int result = (n * (n + 1)) / 2; 効率がよさそうなのは やり方2 勝負を決するのは 機械の使い方
  • 10. © 2023 NTT DATA Corporation 10 CPUの “使い方” による消費エネルギー差の例 Java HotSpot VMでは同じコードでもJIT最適化レベルによってCPUの使い方が変わる 0 200 400 600 800 1000 1200 1400 1600 1800 AVX-512 AVX2 SSE4.2 エネルギー(J) • 4032×3024ピクセルの画像を3000回ネガポジ変換して測定を実施 • 測定環境 • CPU:Intel Xeon Platinum 8260M • OS:CentOS 8 • Java:OpenJDK 18 • 消費エネルギー:RAPLで計測 Javaによる画像ネガポジ反転処理時のCPU消費エネルギー 消費エネルギーも変化する!
  • 11. © 2023 NTT DATA Corporation 11 グリーンソフトウェアの “教科書” アーキテクチャから細かなテクニックまで グリーンソフトウェアの実践に 必要なものがまとめられている Green Software Patterns
  • 12. © 2023 NTT DATA Corporation 12 03 CO2負荷をシステム運用に活用する
  • 13. © 2023 NTT DATA Corporation 13 発電時CO2排出量は “状況” に左右される 時間 天気 主な発電方式 昼 夜 晴 雨 化石燃料 再エネ タイムシフト ロケーションシフト • 動かすのに “いいところ” をリアルタイムに選択したい • 実際どの程度CO2排出したのか知りたい
  • 14. © 2023 NTT DATA Corporation 14 発電時CO2排出量を知るために – 主なWebサービス 欧米中心のデータ 日本も含まれる
  • 15. © 2023 NTT DATA Corporation 15 発電時CO2排出量を知るために – 主なWebサービス 欧米中心のデータ 日本も含まれる
  • 16. © 2023 NTT DATA Corporation 16 Carbon Aware SDK 発電時CO2排出量を地域・時間でクエリできるOSS [ { "Location": "UK", "Time": "2022-08-23T08:50:00+00:00", "Rating": 384.64632976, "Duration": "00:05:00" } ] • 時間や地域をキーにデータソースから 発電時CO2排出量を返却するWebAPIを提供 • 2022年にはこれを活用するハッカソンも開催! • スイスのUBS銀行はMicrosoftと共同で Carbon Aware SDKを活用したホワイトペーパー を公開
  • 17. © 2023 NTT DATA Corporation 17 より使いやすくなるように開発参画中!
  • 18. © 2023 NTT DATA Corporation 18 04 まとめ
  • 19. © 2023 NTT DATA Corporation 19 グリーンソフトウェアを “明日から始める!” みなさんへ • 基準を知る • Software Carbon Intensity • 使える道具を手に入れ、取れる手段を講じる • Awesome Green Software • Green Software Patterns • 使っている電気のCO2排出量を意識する • Carbon Aware SDK • プログラムを効率よく動かしたい!という強い気持ち
  • 20. © 2023 NTT DATA Corporation 20 今まで私たちエンジニアが培ってきたものは グリーンソフトウェアの領域でも活かしていけるはず! GitHubで一緒に 議論・開発 していきましょう!
  • 21. © 2023 NTT DATA Corporation 本資料に掲載されている製品名、会社名、サービス名は、各社の商標または登録商標です。