Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
2745da2
Fix: Add no-arg constructors for v2 config parser scope registration
pinin4fjords Mar 25, 2026
80c3e23
Address review feedback: simplify ConfigScope registration
pinin4fjords Mar 26, 2026
97eaa05
Test: Added a complete integration Test
JosuaCarl Apr 10, 2026
fd0a104
Fix: Fixed CLI extension report (always contained nulls, bad process …
JosuaCarl Apr 13, 2026
2ae6bbd
Test: Adjusted test to new CLI / Extension and Report class
JosuaCarl Apr 14, 2026
0bd4ef6
Documentation: Added disclaimer to documentation for workflow-specifi…
JosuaCarl Apr 14, 2026
b23f008
Test: Fix changing command on CLI report
JosuaCarl Apr 14, 2026
0c790d0
Refactor: Renamed data file to provenance file
JosuaCarl Apr 14, 2026
29e7e97
Refactor: Changed cpuUsage to %cpu
JosuaCarl Apr 14, 2026
d2a3ec3
Refactor: Removed time in favor of realtime
JosuaCarl Apr 14, 2026
fd48147
Refactor: Added `task_id` & `status` to emission metrics
JosuaCarl Apr 15, 2026
f40d4af
Refactor: Added `task_id` & `status` to emission metrics
JosuaCarl Apr 15, 2026
ec3701d
Update CHANGELOG.md
JosuaCarl Apr 15, 2026
5b34f11
Update docs/usage/extension.md
JosuaCarl Apr 15, 2026
5b619ed
Merge pull request #372 from JosuaCarl/extension-report-fix
JosuaCarl Apr 15, 2026
e2f40da
Merge branch 'dev' into provenance-file
JosuaCarl Apr 16, 2026
f4a927d
Test: Adjusted tests to merge
JosuaCarl Apr 16, 2026
ede867f
Merge pull request #373 from JosuaCarl/provenance-file
JosuaCarl Apr 16, 2026
58b7098
Feature: Changed loose YAML file with structured JSON-LD with schema.…
JosuaCarl Apr 16, 2026
3caba85
Documentation: Updated provenance file documentation
JosuaCarl Apr 16, 2026
6d84b8e
Chore: Removed unnecessary dependency
JosuaCarl Apr 16, 2026
d9cd195
Merge branch 'dev' into full-integration-tests
JosuaCarl Apr 16, 2026
551e677
Refactor: Restricted integration test to local file system and curren…
JosuaCarl Apr 16, 2026
38af8e6
Documentation: Added changes to CHANGELOG.md
JosuaCarl Apr 16, 2026
f8dcbb4
Test: Added output directory debugging
JosuaCarl Apr 16, 2026
2abb2e3
Test: Added output directory debugging
JosuaCarl Apr 16, 2026
3f8a638
Test: Added output directory debugging
JosuaCarl Apr 16, 2026
c300b2e
Test: Added output directory debugging
JosuaCarl Apr 16, 2026
45d9346
Test: Added output directory debugging
JosuaCarl Apr 17, 2026
281cb02
Test: Fixed plugin usage
JosuaCarl Apr 17, 2026
688780c
Merge pull request #374 from JosuaCarl/linked-data-provenance
JosuaCarl Apr 20, 2026
badcabb
Merge branch 'dev' into full-integration-tests
JosuaCarl Apr 20, 2026
18d371a
Test: Adjusted data integration test
JosuaCarl Apr 20, 2026
7075232
Documentation: Added docs about development and testing
JosuaCarl Apr 21, 2026
c25f4b4
Feat: Added support for defining trace file separator in CLI run
JosuaCarl Apr 24, 2026
7f277d8
fix several bugs
nadnein Apr 28, 2026
9873839
Fix: Cloned value, so representation map does not get deleted
JosuaCarl Apr 28, 2026
4a7e443
add edge case test
nadnein Apr 28, 2026
4d7d31e
Feat: Support for delimiter usage in Extension
JosuaCarl Apr 28, 2026
1395a2c
Documentation: Added changed to CHANGELOG.md
JosuaCarl Apr 28, 2026
cb80293
Merge pull request #376 from nadnein/fix/several-bugs
nadnein Apr 28, 2026
48e8531
Fix: Fixed application of custom cpu power model
JosuaCarl Apr 29, 2026
104d601
Merge pull request #371 from JosuaCarl/full-integration-tests
JosuaCarl Apr 29, 2026
ae92808
Merge pull request #378 from JosuaCarl/trace-parsing-separators
JosuaCarl Apr 29, 2026
9cc8653
Merge pull request #379 from JosuaCarl/fix-report-removal
JosuaCarl Apr 29, 2026
ff21175
Update docs/usage/parameters.md
JosuaCarl Apr 29, 2026
69670db
Merge branch 'dev' into fix-polynomial-functions
JosuaCarl Apr 29, 2026
52b50ea
Merge pull request #380 from JosuaCarl/fix-polynomial-functions
JosuaCarl Apr 29, 2026
d710258
Chore: Adapted to version 26.04.0 of Nextflow which removed `AnsiLogO…
JosuaCarl Apr 30, 2026
695469a
Chore: Added changes to CHANGELOG.md
JosuaCarl Apr 30, 2026
3c5bb8d
Fix: Floating point error for big number division
JosuaCarl May 4, 2026
0097873
Merge branch 'dev' into fix/config-scope-noarg-constructor-2
JosuaCarl May 4, 2026
54b2e3c
Chore: Merged latest changes into fix branch
JosuaCarl May 4, 2026
00b8074
Fix: Workaround to address warnings with nested scopes by using Map a…
JosuaCarl May 4, 2026
7de9676
Chore: Logging adaption to 26.04.0
JosuaCarl May 4, 2026
7c6dee3
Merge pull request #382 from JosuaCarl/adapt-to-nextflow-26
JosuaCarl May 4, 2026
a0968d6
Merge branch 'dev' into fix-session-memory
JosuaCarl May 4, 2026
020ae74
Test: Adapted tests to merge with latest changes
JosuaCarl May 4, 2026
8ac404b
update docs
nadnein May 4, 2026
7c6af3b
Chore: Implemented correct way of defining configs
JosuaCarl May 4, 2026
4469efc
Test: Adjusted tests to incorporate Nextflow's changes in version 26.4.0
JosuaCarl May 4, 2026
0ce958f
fix zero division error
nadnein May 4, 2026
a429ed5
Documentation: Added differing memory values to documentation FAQ
JosuaCarl May 4, 2026
f995776
Documentation: Style changes
JosuaCarl May 4, 2026
d3d3936
fix zero division error
nadnein May 4, 2026
dd631ce
update docs
nadnein May 4, 2026
dacf37b
Merge pull request #385 from nadnein/fix/zero_div_error
nadnein May 4, 2026
d0e33c8
Merge pull request #383 from JosuaCarl/fix-session-memory
JosuaCarl May 4, 2026
51b59bd
Chore: Version bump to 1.3.0
JosuaCarl May 4, 2026
77d6358
Chore: Version bump to 1.3.0
JosuaCarl May 4, 2026
ac1dd3f
Merge pull request #384 from nadnein/docs/add_cli_arguments
JosuaCarl May 4, 2026
6340bf0
Merge branch 'dev' into version-1.3.0-bump
JosuaCarl May 4, 2026
29b8dfa
Merge pull request #386 from JosuaCarl/version-1.3.0-bump
JosuaCarl May 4, 2026
6013e5c
Merge pull request #1 from JosuaCarl/fix/config-scope-noarg-construct…
pinin4fjords May 5, 2026
a0f56de
Merge branch 'dev' into fix/config-scope-noarg-constructor
pinin4fjords May 5, 2026
5f61dd3
Restore final qualifiers and tidy whitespace in file scopes
pinin4fjords May 5, 2026
4a1590e
Merge pull request #362 from pinin4fjords/fix/config-scope-noarg-cons…
JosuaCarl May 6, 2026
33ea223
Merge branch 'master' into dev
JosuaCarl May 6, 2026
5b4a3e4
Fix: CI plot threw error due to changed variable name -> Inserted new…
JosuaCarl May 6, 2026
9cb595e
Merge pull request #388 from nextflow-io/fix/ci-plot
JosuaCarl May 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ body:
</details>
</details>
placeholder: |
- Plugin version: 1.2.1
- Plugin version: 1.3.0
- Nextflow version: 25.8.0-edge
- Java version: openjdk 17.0.14
- Groovy version: 4.0.25 JVM: 17.0.11
Expand Down
39 changes: 35 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,44 @@
# New
## Bug Fixes:

## Misc:

## Features:

# 1.3.0
## Bug Fixes:
- CPU power model now applied correctly
- Unintended report value removal
- Fixed floating point error for numerical conversion division
- Eliminated `Unrecognized config option` warnings under Nextflow's v2 syntax parser by registering `CO2FootprintConfig` as an extension point and aligning the nested file-config scopes with the v2 `ConfigScope` discovery rules
- Fixed missing ci plot in post-run feature

## Misc:
- Improved workflow reporting form extension/CLI by deriving and injecting workflow metadata from the provided trace file
- Added full integration test
- Adapted to Nextflow 26
- Reworked `Bytes`, such that it can take binary and decimal-based values

## Features:
- Transformation of data file to provenance file with schema.org / bioschemas.org type annotation in JSON-LD data format

# 1.2.1
## Bug Fixes:
- Total values from workflow in report
- Missing newlines in non-ANSI logging

## Misc:
- Aligned Session tracking with Nextflow's trace tracking

## Features:
- New CI reporting of failed file comparisons

# 1.2.0
## Bug Fixes:
- Plot display of titles and axes names in report
- Accumulation of dates
- Never initialized observer called for session emissions on CLI command
- Included descendant processes into session tracking
- Total values from workflow in report
- Missing newlines in non-ANSI logging

## Misc:
- Improved the testing of log messages
Expand All @@ -14,7 +47,6 @@
- Added recommendation for market-based CI usage
- Single values in process summary plot
- Numbers that are not in Double format are now accepted for config values
- Aligned Session tracking with Nextflow's trace tracking

## Features:
- Updated the config syntax inline with standard Nextflow style
Expand All @@ -27,7 +59,6 @@
- Usage of TDP per logical core, becaus this corresponds best to the `cpus` trace metric
- Tracking of whole session emissions
- Precursor of machine-actionable file
- New CI reporting of failed file comparisons

# Version 1.1.0
## Bug Fixes:
Expand Down
2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ authors:
given-names: Sabrina
orcid: https://orcid.org/0000-0003-0603-7907
title: "nf-co2footprint - A nextflow plugin to track CO2e emissions"
version: 1.2.1
version: 1.3.0
identifiers:
- type: doi
value: 10.5281/zenodo.14622304
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Declare the plugin in your Nextflow pipeline configuration file:

```groovy title="nextflow.config"
plugins {
id 'nf-co2footprint@1.2.1'
id 'nf-co2footprint@1.3.0'
}
```

Expand Down Expand Up @@ -76,7 +76,7 @@ We additionally thank the following people for their extensive assistance in the

### How to cite:
```text
J. Carl, N. Volkmann, J. Mir-Pedrol, P. Ewels, S. Nahnsen, S. Krakau nextflow-io/nf-co2footprint v1.2.1. (Mar., 2026). nextflow-io. Available: https://github.com/nextflow-io/nf-co2footprint
J. Carl, N. Volkmann, J. Mir-Pedrol, P. Ewels, S. Nahnsen, S. Krakau nextflow-io/nf-co2footprint v1.3.0. (Mar., 2026). nextflow-io. Available: https://github.com/nextflow-io/nf-co2footprint
```
```Bibtex
@software{nf_co2footprint_plugin,
Expand All @@ -90,7 +90,7 @@ J. Carl, N. Volkmann, J. Mir-Pedrol, P. Ewels, S. Nahnsen, S. Krakau nextflow-io
month = {March}
year = {2026}
publisher = {Nextflow-io}
version = {v1.2.1}
version = {v1.3.0}
url = {https://doi.org/10.5281/zenodo.14622304}
doi = {10.5281/zenodo.14622304}
}
Expand Down
9 changes: 5 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ sourceSets {

// Versioning of important packages
ext {
nextflowVersion = '24.10.6'
nextflowVersion = '26.04.0'
}
String groovyVersion = '4.0.27'
String pf4jVersion = '3.13.0'
Expand Down Expand Up @@ -96,18 +96,19 @@ dependencies {
}

// Plugin version
version = '1.2.1'
version = '1.3.0'

nextflowPlugin {
// Minimum Nextflow version
nextflowVersion = '25.10.0'
nextflowVersion = '26.04.0'

// Plugin metadata
provider = 'nextflow'
className = 'nextflow.co2footprint.CO2FootprintPlugin'
extensionPoints = [
'nextflow.co2footprint.CO2FootprintFactory',
'nextflow.co2footprint.CO2FootprintExtension'
'nextflow.co2footprint.CO2FootprintExtension',
'nextflow.co2footprint.CO2FootprintConfig'
]

}
Expand Down
6 changes: 3 additions & 3 deletions docs/assets/co2footprint_report_sample.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/assets/co2footprint_summary_sample.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ nf-co2footprint options:
powerdrawMem: 0.3725
pue: 1.3
customCpuTdpFile: null
dataFile: out/pipeline_info/co2footprint_data_2026-03-06_13-25-02.yaml
provenanceFile: out/pipeline_info/co2footprint_data_2026-03-06_13-25-02.yaml
reportFile: out/pipeline_info/co2footprint_report_2026-03-06_13-25-02.html
summaryFile: out/pipeline_info/co2footprint_summary_2026-03-06_13-25-02.txt
traceFile: out/pipeline_info/co2footprint_trace_2026-03-06_13-25-02.txt
2 changes: 1 addition & 1 deletion docs/contributing/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ The plugin can be tested without using a local Nextflow build using the followin
2. Run nextflow with this command, specifying the plugin version:

```bash
nextflow run <script/pipeline name> [pipeline params] -plugins nf-co2footprint@1.2.1
nextflow run <script/pipeline name> [pipeline params] -plugins nf-co2footprint@1.3.0
```


Expand Down
15 changes: 14 additions & 1 deletion docs/usage/FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,17 @@
- Set the TDP via `powerdrawCpuDefault = <TDP per core>` and then ignore the warning with `ignoreCpuModel = true`.

For more information see our documentation on [power draw parameters](./parameters.md#hardware-power-draw). You can additionally
report the model with the ["Missing chip" GitHub issue](https://github.com/nextflow-io/nf-co2footprint/issues/new?template=missing_chip.yaml).
report the model with the ["Missing chip" GitHub issue](https://github.com/nextflow-io/nf-co2footprint/issues/new?template=missing_chip.yaml).


<a id="differing-memory"></a>
??? faq "Differing memory values"

The conversion of `Byte`-type units, such as `memory` is done in accordance with [SI standard, decimal-based naming](https://en.wikipedia.org/wiki/Metric_prefix#List_of_SI_prefixes), rather than [Nextflows binary-based system](https://en.wikipedia.org/wiki/Byte#Multiple-byte_units).
In essence, we use: 1 GB = 1 000 000 000 bytes (1 * 1000^3), while Nextflow uses: 1 GB = 1 073 741 824 bytes (1 * 1024^3), which should be 1 GiB (Gibibyte).

Example: <br>
&emsp; -> You request `process.memory = 12 GB` <br>
&emsp; -> Nextflow converts it to 12884901888 bytes and passes the restriction onto the executor <br>
&emsp;&emsp; => 12.88 GB = 12 GiB are allocated for the process <br>
&emsp; -> The plugin uses the the former to proceed with calculations and reporting, while Nextflow (incorrectly) reports using the latter <br>
4 changes: 2 additions & 2 deletions docs/usage/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ To customize the plugin settings to your computing environment and preferences,
???+ example
```groovy title="nextflow.config"
plugins {
id 'nf-co2footprint@1.2.1'
id 'nf-co2footprint@1.3.0'
}

// Optional example config settings for CO₂ reporting:
Expand Down Expand Up @@ -124,7 +124,7 @@ For more information, see [Parameters](parameters.md).
???+ example
```groovy title="nextflow_cloud.config"
plugins {
id 'nf-co2footprint@1.2.1'
id 'nf-co2footprint@1.3.0'
}

params {
Expand Down
34 changes: 34 additions & 0 deletions docs/usage/development.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
### Development of the nf-co2footprint plugin
Thank you for your interest in contributing to the development of the nf-co2footprint plugin! We welcome contributions of all kinds, including bug fixes, new features, documentation improvements, and more. Below you will find some guidelines to help you get started.

#### PR Template
When you create a PR you will be prompted to fill out this short template. Please do so, but you may also drop some point if they are not applicable.

```Markdown
🎯 Motivation
Why is this change needed?

📋 Summary of changes
- Short bullet points describing the changes you have made.

## ✅ Checklist
- [ ] New functionalities are covered by tests
- [ ] Class structure in `test` reflects class structure in `main`
- [ ] Documentation reflects changed behaviour
- [ ] `README.md` contains information on or reference to new features
- [ ] `CHANGELOG.md` is updated with a note on your changes
- [ ] Ensure all tests pass (`.\gradlew check`)
```

#### Testing
When you run the tests, either through your IDE or via `make test` / `.\gradlew check`, several tests will be done to ensure the core functionality of the plugin. They are by no means comprehensive, but they will help to catch some common issues.

If you have added new functionality, please consider adding tests for it as well.

##### Snapshot testing
When a test fails due to a mismatch between the generated output and the expected output, the plugin will automatically generate snapshots of the new output files in the `build/resources/test` directory.
If your changes affect the output, please review the generated snapshots and update their counterparts in the `src/testResources` folder. This way, we can ensure that future tests will compare against the correct expected output.
The line-by-line comparison of several IDEs can be very helpful for this task.

After you have updated the output files, you may have to update the expected MD5 checksums, number of lines, and special lines (such as lines with local date-times) in the corresponding `file_checks.json`.
You can do this by extracting the information from the test output or, if necessary, running the tests again.
36 changes: 19 additions & 17 deletions docs/usage/extension.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,27 @@ The plugin provides some [extension points](https://nextflow.io/docs/latest/plug
}
```

!!! info

In CLI/extension post-run mode, workflow metadata is reconstructed using the trace file (e.g., start/end time, duration) and synthetic/runtime values (e.g., run name, command line), and may differ from reports generated during an integrated plugin run.

#### Shared arguments

Both modes accept the following arguments:

- **tracePath** *(required)*: Path to the execution trace file.
- **delimiter**: Column separator used in the trace file. Defaults to `'\t'`.

#### From the command line
The command line functionality utilizes Nextflow configs, like the regular plugin (see [parameters.md](./pa
rameters.md)).
The command line functionality utilizes Nextflow configs, like the regular plugin (see [parameters.md](./parameters.md)).
It is recommended to set the output paths and a fixed carbon intensity value (`ci`) in the config.
```bash
nextflow plugin nf-co2footprint:postRun --config <path_to_nextflow.config> --tracePath <path_to_execution_trace.txt>
nextflow plugin nf-co2footprint:postRun --tracePath <path_to_execution_trace.txt> [--config <path_to_nextflow.config>] [--delimiter <delimiter>]
```

In addition to the [shared arguments](#shared-arguments):

- **--config**: Path to a Nextflow config file (output paths, carbon intensity, etc.).

#### Within a workflow through functions
The interaction follows the [Nextflow extension function schema](https://nextflow.io/docs/latest/plugins/developing-plugins.html#functions).
Expand All @@ -49,26 +61,16 @@ process calculate_CO2 {
}

workflow {
calculate_CO2('<Path_to_your_execution_trace>')
calculate_CO2('<Path_to_your_execution_trace>', <config_modifications>, <delimiter>)
}
```

##### Functions
###### `parseTraceFile`
Parse the trace file into a list of TraceRecord instances.

- **tracePath**:
Path to a trace file

- **delimiter**:
Deliming character of the tabular trace file. Defaults to `'\t'`.
Parse the trace file into a list of TraceRecord instances. Accepts the [shared arguments](#shared-arguments).

###### `calculateCO2`
Can be used to calculate the emissions of a trace.

- **tracePath**:
Path to the trace file
Calculate the emissions of a trace. Accepts the [shared arguments](#shared-arguments), plus:

- **configModifications**:
Temporarily overrides parameters in the `co2footprint` block of the current Nextflow configuration for a single extension function call. The provided map is merged with the existing configuration and does not affect the overall workflow run. Can be used to adjust settings such as output paths or carbon intensity for post-run estimations. Defaults to [:].
- **configModifications**: Temporarily overrides parameters in the `co2footprint` block of the current Nextflow configuration for this call. The provided map is merged with the existing configuration and does not affect the overall workflow run. Defaults to `[:]`.
Example: `[trace: [file: <Path_to_your_output_trace_file>], ci: <Your_carbon_intensity>]`
8 changes: 3 additions & 5 deletions docs/usage/output.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,14 @@ The nf-co2footprint plugin creates three output files:
- **`report`** ([sample](../assets/co2footprint_report_sample.html))
The HTML report contains information about the carbon footprint of the whole pipeline run as well as plots showing the distributions of the CO₂ emissions for the different processes. The CO₂ emissions are separated into newly generated (i.e. from non-cached tasks) and total (including cached tasks). Additionally, it contains a table with the metrics for all individual tasks. The table is limited to 10000 entries by default. It finishes up with an overview plot of the carbon intensities during the workflow execution.

- **`dataFile`**
The data file contains all trace information in a tree structure with the levels in descending order `session -> workflow -> process -> task`. Example: A workflow consists of multiple processes / has multiple `process` level children.
- **`provenance`**
The provenance file contains all trace information contributing to the emission calculation in a tree structure with the levels in descending order `session -> workflow -> process -> task`. Example: A workflow consists of multiple processes / has multiple `process` level children.
The file design adheres to the javascript object notation linked-data (JSON-LD) format with type context definitions from schema.org and bioschemas.org.
The total session emission estimation includes everything from the point of plugin start to stop in a similar manner to how Nextflow defines a `TraceRecord`, but through the Java-native OSHI library.

!!! note "Comparison session vs. workflow"
The tracking of resource usage, such as `%cpu` and `memory` differs slightly from the way Nextflow determines trace values. Therefore, it might not be 100% comparable. It is not guaranteed that workflow emissions are bigger than session emissions.

!!! warning "Preliminary feature"
The data file is currently not in its final version. Changes in the near future are very likely.

!!! note

Column headers in tables displaying task-specific metrics use the same field names as Nextflow’s native trace output when representing the same metric. For field definitions, see the Nextflow documentation: [Trace file fields](https://www.nextflow.io/docs/latest/tracing.html#trace-file).
Expand Down
12 changes: 6 additions & 6 deletions docs/usage/parameters.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,14 +32,14 @@ The following parameters are currently available:

**Default**: `[enabled: true, file: co2footprint_report_<timestamp>.html, overwrite: true, maxTasks: 10000]`

- **`dataFile`**
- **`provenance`**
Map containing:
- `enabled`: Whether to produce this file
- `file`: Name of the data/machine-actionable file containing all metrics that were used during footprint calculation in a structured way.
- `overwrite`: Whether to overwrite the file, if it already exists.
- `emissionMetricsOnly`: Whether to only include emission metrics, such as CO₂ equivalents and electricity consumption.

**Default**: `[enabled: false, file: co2footprint_report_<timestamp>.html, overwrite: true, emissionMetricsOnly: false]`
**Default**: `[enabled: false, file: co2footprint_report_<timestamp>.html, overwrite: true, emissionMetricsOnly: true]`

!!! warning "Preliminary feature"
The data file is currently not in its final version. Changes in the near future are very likely.
Expand Down Expand Up @@ -154,12 +154,12 @@ The following parameters are currently available:

!!! warning "Experimental feature"
The `cpuPowerModel` parameter is experimental and may change in future releases.

A power model function that takes the parameter `coreUsage`.

Polynomial coefficients for a custom CPU power model (highest degree first).

If specified, this overrides TDP-based power draw estimation for CPU cores. The coefficients define a function that returns the **per-core power draw** (in Watts) as a function of core utilization (0–1).
If specified, this overrides TDP-based power draw estimation for CPU cores. The function returns the **per-core power draw** (in Watts) as a function of core utilization (0–1).

**Example**: `[0.5, 10.0]` defines the model `0.5 × coreUsage + 10`
**Example**: `{coreUsage -> 0.5 * coreUsage + 10.0}`

**Example visualization**:

Expand Down
Loading
Loading