GPUServer
A server whose compute capacity is expressed in GPUs rather than CPU cores, with separate fabrication and power figures for the GPUs and the rest of the chassis.
When to use this class
Use GPUServer when GPUServer.compute is measured in GPUs. Hardware specifications are decomposed per-GPU so that varying the GPU count adjusts power, fabrication footprint, and available memory consistently. Use Server for CPU-bound workloads.
Common pitfalls
GPUServer can only host GPUJobs. Wiring a Job that has CPU-core compute units to a GPUServer fails when the model is computed.
Params
name
A human readable description of the object.
server_type
Provisioning model of the server. Same semantics as Server.server_type: autoscaling, serverless, or on-premise.
For example, on-premise.
gpu_power
Electrical power drawn by one fully-loaded GPU.
Unit: watt / gpu.
gpu_idle_power
Electrical power drawn by a GPU that is on but not processing.
Unit: watt / gpu.
ram_per_gpu
Memory available per GPU. Total instance RAM is derived by multiplying with the GPU count.
Unit: gigabyte_ram / gpu.
carbon_footprint_fabrication_per_gpu
Embodied carbon emitted to manufacture one GPU.
Unit: kilogram / gpu.
average_carbon_intensity
Average grid carbon intensity at the location where the server runs, used to convert energy consumption into carbon emissions.
Unit: gram / kilowatt_hour.
compute
Number of GPUs in one server instance.
Unit: gpu.
carbon_footprint_fabrication_without_gpu
Embodied carbon of one server chassis excluding GPUs (CPUs, motherboard, chassis).
Unit: kilogram.
lifespan
Expected time before the server is replaced. Embodied carbon is amortised over this duration.
Unit: year.
power_usage_effectiveness
Datacenter overhead multiplier applied to the server's power consumption to account for cooling and other site-wide energy use.
Unit: dimensionless.
utilization_rate
Fraction of available GPU and memory time considered usable after operating-system and headroom overhead.
Unit: dimensionless.
base_compute_consumption
GPU consumed per instance independently of jobs.
Unit: gpu.
base_ram_consumption
GPU memory consumed per instance independently of jobs.
Unit: gigabyte_ram.
storage
Backing Storage attached to the server.
An instance of Storage.
fixed_nb_of_instances
On-premise only: number of physical servers deployed. Leave empty for autoscaling and serverless server types.
User defined number of instances. Can be an EmptyExplainableObject in which case the optimum number of instances will be computed, or an ExplainableQuantity with a dimensionless value, in which case e-footprint will raise an error if the object needs more instances than available.
fraction_of_usage_time
Unit: dimensionless.
Fixed by GPUServer to 1.0 — not configurable.
Backwards links
Calculated attributes
carbon_footprint_fabrication
Embodied carbon of one server instance, equal to the chassis fabrication footprint plus the per-GPU fabrication footprint times the GPU count.
Example value: 3.1 t
Depends directly on:
through the following calculations:
You can also visit the link to Carbon footprint fabrication’s full calculation graph.
power
Power drawn by one fully-loaded instance, equal to the per-GPU power times the GPU count.
Example value: 1.6 kW
Depends directly on:
through the following calculations:
You can also visit the link to Power’s full calculation graph.
idle_power
Power drawn by one idle instance, equal to the per-GPU idle power times the GPU count.
Example value: 200 W
Depends directly on:
through the following calculations:
You can also visit the link to Idle power’s full calculation graph.
ram
Total memory of one instance, equal to per-GPU memory times the GPU count.
Example value: 320 GB ram
Depends directly on:
through the following calculations:
You can also visit the link to RAM’s full calculation graph.
hour_by_hour_ram_need
Hourly RAM demand placed on the server by all of its jobs combined.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in kB ram:
first 10 vals [97.2, 27.8, 41.7, 13.9, 69.4, 97.2, 83.3, 55.6, 111, 69.4],
last 10 vals [83.3, 41.7, 41.7, 55.6, 13.9, 69.4, 27.8, 83.3, 41.7, 69.4]
Depends directly on:
through the following calculations:
You can also visit the link to Hour by hour ram need’s full calculation graph.
hour_by_hour_compute_need
Hourly compute demand placed on the server by all of its jobs combined.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in gpu:
first 10 vals [0.00194, 0.000556, 0.000833, 0.000278, 0.00139, 0.00194, 0.00167, 0.00111, 0.00222, 0.00139],
last 10 vals [0.00167, 0.000833, 0.000833, 0.00111, 0.000278, 0.00139, 0.000556, 0.00167, 0.000833, 0.00139]
Depends directly on:
- Hourly average occurrences across usage patterns
- gpus needed on server on premise GPU server during job processing
through the following calculations:
You can also visit the link to Hour by hour compute need’s full calculation graph.
occupied_ram_per_instance
RAM that is permanently occupied on each instance, summing the server's own base consumption with the base consumption of every installed service.
Example value: 0 B ram
Depends directly on:
through the following calculations:
You can also visit the link to Occupied RAM per instance including services’s full calculation graph.
occupied_compute_per_instance
Compute that is permanently occupied on each instance, summing the server's own base consumption with the base consumption of every installed service.
Example value: 0 gpu
Depends directly on:
through the following calculations:
You can also visit the link to Occupied CPU per instance including services’s full calculation graph.
available_ram_per_instance
RAM each instance has left for jobs after applying the utilization rate and subtracting RAM occupied by installed services.
Example value: 288 GB ram
Depends directly on:
through the following calculations:
You can also visit the link to Available RAM per instance’s full calculation graph.
available_compute_per_instance
Compute each instance has left for jobs after applying the utilization rate and subtracting compute occupied by installed services.
Example value: 3.6 gpu
Depends directly on:
through the following calculations:
You can also visit the link to Available CPU per instance’s full calculation graph.
raw_nb_of_instances
Hourly number of instances strictly required to serve hourly demand, taking the maximum across the RAM and compute dimensions, before rounding to whole instances.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in :
first 10 vals [0.00054, 0.000154, 0.000231, 0.0000772, 0.000386, 0.00054, 0.000463, 0.000309, 0.000617, 0.000386],
last 10 vals [0.000463, 0.000231, 0.000231, 0.000309, 0.0000772, 0.000386, 0.000154, 0.000463, 0.000231, 0.000386]
Depends directly on:
- Hour by hour ram need
- Available RAM per instance
- Hour by hour compute need
- Available CPU per instance
through the following calculations:
You can also visit the link to Hourly raw number of instances’s full calculation graph.
nb_of_instances
Hourly number of instances actually billed, computed differently per server type: ceiled to whole instances for autoscaling, mirrored from raw demand for serverless, and held flat at peak (or the user-fixed count) for on-premise.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in :
first 10 vals [1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
last 10 vals [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
Depends directly on:
through the following calculations:
You can also visit the link to Hourly number of instances’s full calculation graph.
instances_fabrication_footprint
Hourly fabrication-phase emissions of all instances, equal to the embodied carbon of one instance amortised over its lifespan and multiplied by the number of instances active in each hour.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in g:
first 10 vals [58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9],
last 10 vals [58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9, 58.9]
Depends directly on:
through the following calculations:
You can also visit the link to Hourly instances fabrication footprint’s full calculation graph.
instances_energy
Hourly energy consumed by all running instances, decomposed into idle baseline energy plus the extra energy drawn while serving load, with PUE applied.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in Wh:
first 10 vals [241, 240, 240, 240, 241, 241, 241, 241, 241, 241],
last 10 vals [241, 240, 240, 241, 240, 241, 240, 241, 240, 241]
Depends directly on:
through the following calculations:
You can also visit the link to Hourly energy consumed by instances’s full calculation graph.
energy_footprint
Hourly carbon emissions caused by the electricity consumed by this hardware, equal to its hourly energy use times the local grid carbon intensity.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in g:
first 10 vals [24.1, 24, 24, 24, 24.1, 24.1, 24.1, 24.1, 24.1, 24.1],
last 10 vals [24.1, 24, 24, 24.1, 24, 24.1, 24, 24.1, 24, 24.1]
Depends directly on:
through the following calculations:
You can also visit the link to Hourly energy footprint’s full calculation graph.
job_repartition_weights
Per-job weight used to attribute the server's fabrication and energy footprint back to its jobs, proportional to each job's share of compute and RAM consumption over the modeling period.
Example value: {
GPUJob Manually defined GPU job (230897): 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in :
first 10 vals [0.000486, 0.000139, 0.000208, 0.0000695, 0.000347, 0.000486, 0.000417, 0.000278, 0.000556, 0.000347],
last 10 vals [0.000417, 0.000208, 0.000208, 0.000278, 0.0000695, 0.000347, 0.000139, 0.000417, 0.000208, 0.000347],
}
Depends directly on:
- Hourly average occurrences across usage patterns
- gpus needed on server on premise GPU server during job processing
- Nb gpus
- RAM needed during job processing
- RAM
through the following calculations:
You can also visit the link to Manually defined GPU job weight in impact repartition’s full calculation graph.
fabrication_impact_repartition_weight_sum
Sum of fabrication impact repartition weights, used as the denominator when normalising into per-container shares.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in :
first 10 vals [0.000486, 0.000139, 0.000208, 0.0000695, 0.000347, 0.000486, 0.000417, 0.000278, 0.000556, 0.000347],
last 10 vals [0.000417, 0.000208, 0.000208, 0.000278, 0.0000695, 0.000347, 0.000139, 0.000417, 0.000208, 0.000347]
Depends directly on:
through the following calculations:
You can also visit the link to Fabrication impact repartition weights sum’s full calculation graph.
fabrication_impact_repartition
Normalised share of fabrication-phase emissions that this object attributes to each container.
Example value: {
GPUJob Manually defined GPU job (230897): 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in :
first 10 vals [1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
last 10 vals [1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
}
Depends directly on:
through the following calculations:
You can also visit the link to fabrication impact attribution to Manually defined GPU job’s full calculation graph.
usage_impact_repartition_weight_sum
Sum of usage impact repartition weights, used as the denominator when normalising into per-container shares.
Example value: 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in :
first 10 vals [0.000486, 0.000139, 0.000208, 0.0000695, 0.000347, 0.000486, 0.000417, 0.000278, 0.000556, 0.000347],
last 10 vals [0.000417, 0.000208, 0.000208, 0.000278, 0.0000695, 0.000347, 0.000139, 0.000417, 0.000208, 0.000347]
Depends directly on:
through the following calculations:
You can also visit the link to Usage impact repartition weights sum’s full calculation graph.
usage_impact_repartition
Normalised share of usage-phase emissions that this object attributes to each container.
Example value: {
GPUJob Manually defined GPU job (230897): 26298 values from 2025-01-01 00:00:00+00:00 to 2028-01-01 18:00:00+00:00 in :
first 10 vals [1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
last 10 vals [1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
}
Depends directly on:
through the following calculations:
You can also visit the link to usage impact attribution to Manually defined GPU job’s full calculation graph.