Units & Dimensions

Measurement

This paragraph looks at the units and dimensions when using the measurement functionality of GMT.

Units and dimensions

  • Energy - micro-Joules [uJ] (64-bit int)
  • Power - milli-Watts [mW] (64-bit int)
  • Data / Memory Usage - Bytes (64-bit int)
  • I/O - Bytes/s (64-bit int)
  • Carbon - micro-Grams [ug] (64-bit int)
  • Temperature - centi°C (64-bit int)
  • Utilization - Ratio (64-bit int)
  • SCI - ugCO2e/R (64-bit int)
  • Frequency - Hz (64-bit int)
  • Time - micro-Seconds [us] (64-bit int)

Bytes / Bytes/s are SI-Units

It is very important to note that GMT uses SI-Units for Bytes.

This means that 1 kB means 1.000 Bytes and not 1.024 Bytes as it would in non-SI-Units or binary display schemes.

This notation is in line with newest international number standards.

See the Wikipedia Page for details.

Lowest possible resolution / precision

Since all values are stored as 64-bit integer values the smallest resolution the GMT can understand is dicretly derived from the dimension that we store.

Example: No energy value below 1 micro-Joules can be understood and will be rounded off as we store all energy in micro-joules precision

For temperature it is similar. Since we store in centi°C the smallest resolution is 0.01 °C, which we store as 1 cent°C.

Identical for Utilization where 0.01 is the smallest value.

CarbonDB

CarbonDB stores all values as 64-bit floating point values. Respectively:

  • Carbon - micro-Grams (64-bit double precision)
  • Energy - micro-Joules (64-bit double precision)

Thus the lowest resolution is directly derived from the storage scheme and to keep it brief: It is absurdly large, as well as absurdly small :)