Skip to content

Carbon Benchmarking the GAW #6

Description

@ArneTR

This issue describes the idea of benchmarking the energy cost and carbon emissions of a reduced version of the GAW worker.

Currently the technical setup is to have transformation done in a cloudflare worker and then sending a reduced HTML/JS/CSS setup to the client.

Since it is very hard to estimate how much the energy and carbon cost in a real cloudflare worker will be this issue recommends a simpler setup that will measure the minimum cost of making the page transformation.
The theory is that if that minimum cost is already higher than the gains we can see in the browser for rendering, than the cost of brining this to a cloudflare worker setup with all the network and separate system overhead will be even worse.

Measurement setup description

The measurement shall be done with the Green Metrics Tool

All measurements will be done on the same hardware to make it comparable.

What will be compared in the end is:

  • Cost of rendering the full fledged frontend without any carbon aware optimizations
    vs.
  • Cost of rendering the reduced carbon aware frontend + the cost of the transformation (nodeJS code)

Current version

In order to benchmark the current version the live website can be used.
GMT can spin up a firefox browser and measure all frontend costs (page rendering, AJAX requests etc.) and give out an energy and carbon value

What is needed here is a working link to the live website which is guaranteed to have the "most expensive" version of the website (aka the one with carbon aware features off). If that is not configurable the test can also be timed to run at a specific point in time to get this version of the website.

Carbon aware version

Here either a live endpoint where the reduced version can be seen is needed, or, if simpler, a full HTML dump of the reduced site.
This assumes that reduced site has no AJAX requests in the page anymore and all content is either static HTML/CSS or javascript which does not make any external requests anymore.

Furthermore the nodeJS code is needed that does the actual transformation along with the expected input.
This measurement is done separately and the energy/carbon values are thn later added to the rendering costs to get a comparable number to compare with the current version.

Alternate approach

If live endpoints cannot be provided the GMT can also orchestrate a full webserver setup. Here all server files and configuration need to be supplied.

@mrchrisadams @fershad

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions