NOTE: This is my proposal for the 2024 Carbon Hack. I'll update each field as I get more familiar with the Impact Framework and its currently-supported plugins.
What: A model that fetches/forwards GPU TDP (measured or estimated) and outputs the energy.
Why: The use of general-purpose GPUs is omnipresent in many applications. The impact framework does not yet have an official way to explicitly account for GPU impact on carbon. This plugin will provide similar functionality as the TDP Finder Plugin, but for GPUs.
DoD:
[ ] Does the model meet the specification?
[ ] Does the model have complete test coverage, including edge cases, happy path and error cases?
[ ] Is the code documented?
Config
TBD.
Inputs
List the variables this model expects in an input input
gpu/name: The name of a GPU (If not providing gpu/tdp (see below), it must be in the database of supported GPUs).
gpu/tdp: Optional. The observed TDP of the GPU.
Outputs
List the variables this model exports out as an impact
gpu/tdp: If not provided as an input, and the gpu/name was valid, the model will output the official TDP according to manufacturer specifications.
gpu/energy: (TDP->Energy model to-be-determined.) The energy usage of this GPU in kWh.
Behavior
What does the model do to turn the inputs into outputs? List any important equations or references.
TBD.
Assumptions
What are the core assumptions this model makes?
TBD.
Limitations
In what situations is this model limited in it's function, behaviour, accuracy etc...
TBD.
Example
Provide at least one example of some input config and inputs. This is in pimpl format not rimpl format, so the config is the global config and all parameters must be present on the input.
TBD.
Input
config:
key: value
inputs:
- timestamp: 2023-07-06T00:00
duration: 3600
NOTE: This is my proposal for the 2024 Carbon Hack. I'll update each field as I get more familiar with the Impact Framework and its currently-supported plugins.
What: A model that fetches/forwards GPU TDP (measured or estimated) and outputs the energy.
Why: The use of general-purpose GPUs is omnipresent in many applications. The impact framework does not yet have an official way to explicitly account for GPU impact on carbon. This plugin will provide similar functionality as the TDP Finder Plugin, but for GPUs.
DoD:
[ ] Does the model meet the specification?
[ ] Does the model have complete test coverage, including edge cases, happy path and error cases?
[ ] Is the code documented?
Config
TBD.
Inputs
List the variables this model expects in an input input
gpu/name
: The name of a GPU (If not providinggpu/tdp
(see below), it must be in the database of supported GPUs).gpu/tdp
: Optional. The observed TDP of the GPU.Outputs
List the variables this model exports out as an impact
gpu/tdp
: If not provided as an input, and thegpu/name
was valid, the model will output the official TDP according to manufacturer specifications.gpu/energy
: (TDP->Energy model to-be-determined.) The energy usage of this GPU in kWh.Behavior
What does the model do to turn the inputs into outputs? List any important equations or references.
TBD.
Assumptions
What are the core assumptions this model makes?
TBD.
Limitations
In what situations is this model limited in it's function, behaviour, accuracy etc...
TBD.
Example
Provide at least one example of some input config and inputs. This is in pimpl format not rimpl format, so the config is the global config and all parameters must be present on the input.
TBD.
Input
Output