paint-brush
私たちの行動規範は地球上に害を及ぼしています。炭素を意識した設計パターンが不必要です に@gsf
55,031 測定値
55,031 測定値

私たちの行動規範は地球に害を及ぼしています。炭素を意識した設計パターンが必要です

長すぎる; 読むには

Carbon Aware API を使用して、電気の炭素強度 (gCO2/kWh) を測定して対応し、ソフトウェアによって生成される炭素排出量を削減する方法。

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - 私たちの行動規範は地球に害を及ぼしています。炭素を意識した設計パターンが必要です
Green Software Foundation (GSF) HackerNoon profile picture


よりクリーンでグリーンな世界の建築家になろう


クラウドには航空業界よりも商工業を推進するソフトウェアの需要が高まる中、より環境に優しいエネルギー源から電力を調達し、二酸化炭素排出量を大幅に削減するために、データの収集と保存、クラウド コンピューティング、AI の緊急性が高まっています。


電気が最もクリーンな時間と場所に電力消費をシフトすることにより、プログラミングは気候変動を緩和し、私たちと未来的发展五年の时代のためにクリーンで的安全な未来的发展を確保することができます.これが Carbon Aware Computing であり、気候に配慮したコードを操作してカーボンフリー エネルギーを選択および最適化するのを对口支援することで、気候変動を緩和する上でソフトウェア開発を很重要な力にする也许 性があります。


カーボン アウェア コンピューティング 101

カーボン アウェア コンピューティングの例はあまり多くありません。そのため、__ __ のようなイベントは、新しいアイデアをクラウドソーシングし、ソフトウェア プログラミングのイノベーションを加速して、気候に配慮し、エネルギーに反応するアプリケーションを構築する上で重要です。 .

Green Software Foundation __ は、__carbon 認識、より多くのエネルギーが低炭素の「クリーンな」ソースから得られる場合はより多くのことを行い、より多くのエネルギーが高炭素の「汚れた」ソースから得られる場合はより少ないことを行うという考えとして議論しています。開発者は、電気の炭素強度 (gCO2/kWh) を測定して対応することでこれを行うことができます。これは、ソフトウェアによって生产される炭素流出量を削減するためのコードを制成するのに役立ちます。

カーボン コンピューティングのアプローチと応用


大きく分けて 3 つのアプローチがあります。


  1. 場所の移動:よりクリーンな場所でソフトウェアを実行します。他の地域よりもクリーンなエネルギー(風力、太陽光、水など)の供給が多い地域から電力を調達する。



2.タイム シフティング:よりクリーンな時間にソフトウェアを実行します。風力、水力、または太陽光発電によってクリーン エネルギーが生成されている場合。


  1. デマンド シェーピング:ソフトウェアを実行して、電気がきれいなときはより多くのことを行い、汚れているときはより少ないことを行います。



炭素を意識したアプリケーションを構築することは、さまざまなデータ ソースがあるにもかかわらず困難です。の Green Software Foundation の Open Source Working Group のプロジェクトである は、それをより簡単にします。この API は、特定の時間と場所でのアプリケーションの炭素強度 (電気がどれだけ環境に優しく、汚れているか) を特定、分析、予測し、ソフトウェアが場所に基づいてクリーン エネルギーを取り出せるようにするコードを作成するのに役立ちます。風が吹いているか、システムが太陽光線を追跡できるようにします。

API は非常にシンプルです。


訪問すれば次のような Web インターフェイスが表示されます。


次のようなAPIにフックできます、または独自のデータセットに。 Carbon Hack 22 の期間中 (2022 年 11 月 10 日まで)、Carbon Aware API は開発者が使用するため。


タイム シフティング:ソフトウェアを実行するのに最適な時間帯は?


タイムシフトするときは、 /emissions/bylocations/best API エンドポイントを使用して、場所フィールドに関心のある場所を提供できます。現在、場所の名前は Azure リージョン名にマップされています。また、ジョブを移動できる時間帯も指定する必要があります。開始時刻をtimeフィールドに入力し、終了時刻をtoTimeフィールドに入力する必要があります。提供される日付は、ISO 8601 形式である必要があります。

次のように、Curl リクエストを介して API からデータを直接的リクエストできます。


 curl -X 'GET' \ '//carbon-aware-api.azurewebsites.net/emissions/bylocations/best?location=uksouth&time=2022-10-08T00%3A00%2B01%3A00&toTime=2022-10-08T23%3A59%2B01%3A00' \ -H 'accept: application/json'


または、 での一般性の HTTP GET リクエストでも構いません。


出力として、場所の WattTime 地域名、データの時間、炭素強度評価、およびこのデータが有効な期間を含む JSON オブジェクトの配列を受け取ります (WattTime は 5 分間隔でデータを提供します)。このデータは、要求された場所の最低炭素評価になります。このクエリは 1 つの 24 時間枠のデータを調べるため、正確な結果を得るには、複数日のデータを要求し (たとえば、 /emissions/bylocationsエンドポイントを調べて)、これが 1 でないかどうかを確認することをお勧めします。炭素強度の時間低下!

 [ { "location": "UK", "time": "2022-10-08T00:45:00+00:00", "rating": 351.98767912, "duration": "00:05:00" }, { "location": "UK", "time": "2022-10-08T00:40:00+00:00", "rating": 351.98767912, "duration": "00:05:00" }, { "location": "UK", "time": "2022-10-08T00:35:00+00:00", "rating": 351.98767912, "duration": "00:05:00" } ]


場所の移動:ソフトウェアを実行するのに最適な場所はどこですか?


場所を移動するときは、以前と同じエンドポイント ( /emissions/bylocations/best ) を使用できますが、今回は、関心のある複数の場所と、探している 1 つの時間を提供します。以下のクエリの例では、uksouth、eastus、および francecentralを考慮して、複数の場所が提供されています。 timeおよびtoTimeフィールドに入力して、代わりにタイム ウィンドウ (タイム シフトと同様) または単一の時点を指定できます。

次のように、Curl リクエストを介して API からデータを简单リクエストできます。
 curl -X 'GET' \ '//carbon-aware-api.azurewebsites.net/emissions/bylocations/best?location=uksouth&location=eastus&location=francecentral&time=2022-10-08T09%3A00%2B01%3A00' \ -H 'accept: application/json'


または、 での一般而言の HTTP GET リクエストでも構いません。


出力として、炭素強度が最も低い場所、その読み取り時間、炭素強度の実際の値、およびこのデータが有効な期間とともに、同じ形式の応答を受け取ります。

 [  {    "location": "FR",    "time": "2022-10-08T08:00:00+00:00",    "rating": 242.21832558,    "duration": "00:05:00"  } ]


需要形成:ユーザーの行動を調整するにはどうすればよいですか?


デマンド シェーピングを実装するには、上記のクエリとその他のクエリを組み合わせて便用し、アプリケーションの動作を最適に調整する方式方法を決定します。

これを想像してみてください!


エネルギーを不少に消費する ML トレーニング ジョブを実行したとしたら、それは電力網が二次使用应该エネルギーで稼働している場合のみです。ローカル グリッドが彻底に風力発電であるときにのみ、洗濯機が稼働したと像してみてください。 CI パイプラインを毎日同時に実行したいが、現在グリーン エネルギーを使用しているアベイラビリティ ゾーン (国) でのみ実行されるようにしたいとします。これらすべての場合において、很多年と同じくらい多くのエネルギーを消費しますが、温室効果ガスの排放到量ははるかに少なくなります.


Carbon Aware API をポーリングするか、ローカル コンテナーで実行するか、コマンド ライン ツール (CLI) として実行するかに関係なく、イベント ドリブン開発のパターンを利用して、アプリ内のイベントを電力網内のトリガーに接続できます。我一个人のローカル グリッドまたはより環境に優しい遠隔地のグリッド。


ユース ケースに応じて、デバイス全体、コンピューティング ジョブ、またはアプリケーションを再生可能エネルギーのみで実行できるようにすることができます。これには、ローカル グリッドがグリーンなときにのみ実行するか、現在グリーン エネルギーで電力を供給されているゾーンからのみ実行します。

デジタルエミッションのエンジンを動かし続けるメカニックになるのではなく、再構築に貢献しながら、それを遅くするのを助けるエンジニアになりましょう.


カーボン アウェア コンピューティングは、持続可能なソフトウェア エンジニアリングの次のフロンティアです。業界で最も影響力のある意思決定者の何人かは、ソフトウェアからの二酸化炭素排出量を削減することに関心を持っており、リソースを貸して多額の賞金を寄付することでそれを示しています。 . Accenture、Avanade、Boston Consulting Group、Globant、Goldman Sachs、Intel Corporation、Thoughtworks、UBS、VMWare などの主要企業は、持続可能なテクノロジーに参加し、合計で 100,000 米ドルの賞金を寄付しています。


人と地球の両方に害を与えないソリューションを構築することも、現在のソフトウェア エンジニアの仕事です。カーボン アウェア コンピューティングは、現在および将来の世代のソフトウェア エンジニアがこの目標を達成するのにどのように役立つかを示しています。 350 人近くのハッカーと 70 のイノベーションに参加して、電力の炭素強度を削減するソフトウェアの障壁を特定して解決します。


Green Software Foundation のエグゼクティブ ディレクター兼会長である Asim Hussain によって書かれました。


바카라사이트 바카라사이트 온라인바카라