Skip to content

Commit d6aba0f

Browse files
authored
Merge pull request #118 from Green-Software-Foundation/update-explain-feature
Update explain feature
2 parents ee0e666 + a194a6e commit d6aba0f

File tree

3 files changed

+124
-121
lines changed

3 files changed

+124
-121
lines changed

docs/major-concepts/manifest-file.md

+6-9
Original file line numberDiff line numberDiff line change
@@ -161,27 +161,24 @@ This section is autogenerated at runtime. It is a list of all the parameter meta
161161

162162
```yaml
163163
explain:
164-
carbon:
165-
plugins:
166-
- sci
164+
sci:
165+
inputs:
166+
carbon:
167167
unit: gCO2eq
168168
description: >-
169169
total carbon emissions attributed to an application's usage as the sum
170170
of embodied and operational carbon
171171
aggregation-method:
172172
time: sum
173173
component: sum
174-
requests:
175-
plugins:
176-
- sci
174+
requests:
177175
unit: requests
178176
description: number of requests made to application in the given timestep
179177
aggregation-method:
180178
time: sum
181179
component: sum
182-
sci:
183-
plugins:
184-
- sci
180+
outputs:
181+
sci:
185182
unit: gCO2eq/request
186183
description: >-
187184
software carbon intensity expressed as a rate of carbon emission per

docs/users/how-to-use-the-explain-feature.md

+115-109
Original file line numberDiff line numberDiff line change
@@ -239,116 +239,122 @@ When we execute this manifest, the following `explain` block is added to the out
239239

240240
```yaml
241241
explain:
242-
vCPUs:
243-
plugins:
244-
- sci-embodied
245-
unit: CPUs
246-
description: number of CPUs allocated to an application
247-
aggregation-method:
248-
time: copy
249-
component: copy
250-
memory:
251-
plugins:
252-
- sci-embodied
253-
unit: GB
254-
description: RAM available for a resource, in GB
255-
aggregation-method:
256-
time: copy
257-
component: copy
258-
ssd:
259-
plugins:
260-
- sci-embodied
261-
unit: SSDs
262-
description: number of SSDs available for a resource
263-
aggregation-method:
264-
time: copy
265-
component: copy
266-
hdd:
267-
plugins:
268-
- sci-embodied
269-
unit: HDDs
270-
description: number of HDDs available for a resource
271-
aggregation-method:
272-
time: copy
273-
component: copy
274-
gpu:
275-
plugins:
276-
- sci-embodied
277-
unit: GPUs
278-
description: number of GPUs available for a resource
279-
aggregation-method:
280-
time: copy
281-
component: copy
282-
usage-ratio:
283-
plugins:
284-
- sci-embodied
285-
unit: dimensionless
286-
description: >-
287-
a scaling factor that can be used to describe the ratio of actual resource
288-
usage comapred to real device usage, e.g. 0.25 if you are using 2 out of 8
289-
vCPUs, 0.1 if you are responsible for 1 out of 10 GB of storage, etc
290-
aggregation-method:
291-
time: copy
292-
component: copy
293-
time:
294-
plugins:
295-
- sci-embodied
296-
unit: seconds
297-
description: >-
298-
a time unit to scale the embodied carbon by, in seconds. If not
299-
provided,time defaults to the value of the timestep duration.
300-
aggregation-method:
301-
time: copy
302-
component: copy
303-
embodied-carbon:
304-
plugins:
305-
- sci-embodied
306-
- sum-carbon
307-
unit: gCO2eq
308-
description: >-
309-
carbon emitted during the production, distribution and disposal of a
310-
hardware component, scaled by the fraction of the component's lifespan
311-
being allocated to the application under investigation
312-
aggregation-method:
313-
time: sum
314-
component: sum
315-
carbon-operational:
316-
plugins:
317-
- sum-carbon
318-
unit: gCO2eq
319-
description: carbon emitted due to an application's execution
320-
aggregation-method:
321-
time: sum
322-
component: sum
323-
carbon:
324-
plugins:
325-
- sum-carbon
326-
- sci
327-
unit: gCO2eq
328-
description: >-
329-
total carbon emissions attributed to an application's usage as the sum of
330-
embodied and operational carbon
331-
aggregation-method:
332-
time: sum
333-
component: sum
334-
requests:
335-
plugins:
336-
- sci
337-
unit: requests
338-
description: number of requests made to application in the given timestep
339-
aggregation-method:
340-
time: sum
341-
component: sum
242+
sci-embodied:
243+
inputs:
244+
vCPUs:
245+
description: number of CPUs allocated to an application
246+
unit: CPUs
247+
aggregation-method:
248+
time: copy
249+
component: copy
250+
memory:
251+
description: RAM available for a resource, in GB
252+
unit: GB
253+
aggregation-method:
254+
time: copy
255+
component: copy
256+
ssd:
257+
description: number of SSDs available for a resource
258+
unit: SSDs
259+
aggregation-method:
260+
time: copy
261+
component: copy
262+
hdd:
263+
description: number of HDDs available for a resource
264+
unit: HDDs
265+
aggregation-method:
266+
time: copy
267+
component: copy
268+
gpu:
269+
description: number of GPUs available for a resource
270+
unit: GPUs
271+
aggregation-method:
272+
time: copy
273+
component: copy
274+
usage-ratio:
275+
description: >-
276+
a scaling factor that can be used to describe the ratio of actual
277+
resource usage comapred to real device usage, e.g. 0.25 if you are
278+
using 2 out of 8 vCPUs, 0.1 if you are responsible for 1 out of 10 GB
279+
of storage, etc
280+
unit: dimensionless
281+
aggregation-method:
282+
time: copy
283+
component: copy
284+
time:
285+
description: >-
286+
a time unit to scale the embodied carbon by, in seconds. If not
287+
provided,time defaults to the value of the timestep duration.
288+
unit: seconds
289+
aggregation-method:
290+
time: copy
291+
component: copy
292+
outputs:
293+
embodied-carbon:
294+
description: embodied carbon for a resource, scaled by usage
295+
unit: gCO2eq
296+
aggregation-method:
297+
time: sum
298+
component: sum
299+
sum-carbon:
300+
inputs:
301+
carbon-operational:
302+
unit: gCO2eq
303+
description: carbon emitted due to an application's execution
304+
aggregation-method:
305+
time: sum
306+
component: sum
307+
embodied-carbon:
308+
unit: gCO2eq
309+
description: >-
310+
carbon emitted during the production, distribution and disposal of a
311+
hardware component, scaled by the fraction of the component's lifespan
312+
being allocated to the application under investigation
313+
aggregation-method:
314+
time: sum
315+
component: sum
316+
outputs:
317+
carbon:
318+
unit: gCO2eq
319+
description: >-
320+
total carbon emissions attributed to an application's usage as the sum
321+
of embodied and operational carbon
322+
aggregation-method:
323+
time: sum
324+
component: sum
342325
sci:
343-
plugins:
344-
- sci
345-
unit: gCO2eq/request
346-
description: >-
347-
software carbon intensity expressed as a rate of carbon emission per
348-
request
349-
aggregation-method:
350-
time: sum
351-
component: sum
326+
inputs:
327+
carbon:
328+
unit: gCO2eq
329+
description: >-
330+
total carbon emissions attributed to an application's usage as the sum
331+
of embodied and operational carbon
332+
aggregation-method:
333+
time: sum
334+
component: sum
335+
functional-unit:
336+
description: >-
337+
the name of the functional unit in which the final SCI value should be
338+
expressed, e.g. requests, users
339+
unit: none
340+
aggregation-method:
341+
time: sum
342+
component: sum
343+
requests:
344+
unit: requests
345+
description: number of requests made to application in the given timestep
346+
aggregation-method:
347+
time: sum
348+
component: sum
349+
outputs:
350+
sci:
351+
unit: gCO2eq/request
352+
description: >-
353+
software carbon intensity expressed as a rate of carbon emission per
354+
request
355+
aggregation-method:
356+
time: sum
357+
component: sum
352358
```
353359

354360
## When _not_ to use `explainer`

docs/users/index.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ sidebar_position: 3
44

55
# Users
66

7-
This section contains information for Impact Framework users. You are a user if you want to apply the Impact Framework to your own use-case, such as using it to measure the environmental impact of your own apps running on some cloud platform.
7+
This section contains information for Impact Framework users. You are a user if you want to apply the Impact Framework to your own use-case, such as using it to measure the environmental impact of your own apps running on some cloud platform.
88

99
The user documentation includes:
1010

@@ -14,7 +14,7 @@ The user documentation includes:
1414
- [How to write manifest files](./how-to-write-manifests.md)
1515
- [How to export CSV file with `if-csv`](./how-to-export-csv-file-with-if-csv.md)
1616
- [How to compare files with `if-diff`](./how-to-compare-files-with-if-diff.md)
17-
- [How to check parameters and units using `explain`](./using-the-explain-feature.md)
17+
- [How to check parameters and units using `explain`](./how-to-use-the-explain-feature.md)
1818
- [How to verify manifest files with `if-check`](./how-to-verify-files-with-if-check.md)
1919

20-
If you are looking for guidance for how to *change or update* the Impact Framework by adding new features, fixing bugs or building new plugins, you should go to our [`developers` documentation](../developers/) instead.
20+
If you are looking for guidance for how to _change or update_ the Impact Framework by adding new features, fixing bugs or building new plugins, you should go to our [`developers` documentation](../developers/) instead.

0 commit comments

Comments
 (0)