@grnsft/if 0.1.8 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/.commitlintrc.js +45 -0
  2. package/.husky/commit-msg +4 -0
  3. package/.husky/pre-commit +6 -0
  4. package/CONTRIBUTING.md +81 -98
  5. package/README.md +16 -12
  6. package/build/config/config.d.ts +4 -5
  7. package/build/config/config.js +16 -12
  8. package/build/config/index.d.ts +1 -0
  9. package/build/config/index.js +4 -2
  10. package/build/config/params.d.ts +2 -0
  11. package/build/config/params.js +146 -0
  12. package/build/config/strings.d.ts +14 -8
  13. package/build/config/strings.js +18 -12
  14. package/build/index.js +18 -38
  15. package/build/lib/aggregate.d.ts +6 -0
  16. package/build/lib/aggregate.js +72 -0
  17. package/build/lib/compute.d.ts +5 -0
  18. package/build/lib/compute.js +84 -0
  19. package/build/lib/exhaust.d.ts +6 -0
  20. package/build/lib/exhaust.js +47 -0
  21. package/build/lib/initialize.d.ts +6 -0
  22. package/build/lib/initialize.js +98 -0
  23. package/build/lib/load.d.ts +6 -0
  24. package/build/lib/load.js +24 -0
  25. package/build/lib/parameterize.d.ts +5 -0
  26. package/build/lib/parameterize.js +49 -0
  27. package/build/models/export-csv.d.ts +2 -0
  28. package/build/models/export-csv.js +129 -0
  29. package/build/models/export-log.d.ts +4 -0
  30. package/build/models/export-log.js +18 -0
  31. package/build/models/export-yaml.d.ts +4 -0
  32. package/build/models/export-yaml.js +24 -0
  33. package/build/models/group-by.d.ts +11 -0
  34. package/build/models/group-by.js +56 -0
  35. package/build/models/index.d.ts +2 -1
  36. package/build/models/index.js +5 -3
  37. package/build/models/time-sync.d.ts +2 -54
  38. package/build/models/time-sync.js +216 -147
  39. package/build/types/aggregation.d.ts +3 -0
  40. package/build/types/aggregation.js +5 -0
  41. package/build/types/compute.d.ts +25 -0
  42. package/build/types/compute.js +3 -0
  43. package/build/types/exhaust-plugin-interface.d.ts +7 -0
  44. package/build/types/exhaust-plugin-interface.js +3 -0
  45. package/build/types/group-by.d.ts +3 -0
  46. package/build/types/group-by.js +3 -0
  47. package/build/types/initialize.d.ts +4 -0
  48. package/build/types/initialize.js +3 -0
  49. package/build/types/interface.d.ts +8 -0
  50. package/build/types/interface.js +3 -0
  51. package/build/types/load.d.ts +7 -0
  52. package/build/types/load.js +3 -0
  53. package/build/types/manifest.d.ts +40 -0
  54. package/build/types/manifest.js +3 -0
  55. package/build/types/parameters.d.ts +15 -0
  56. package/build/types/parameters.js +5 -0
  57. package/build/types/process-args.d.ts +4 -5
  58. package/build/types/process-args.js +1 -1
  59. package/build/types/time-sync.d.ts +10 -2
  60. package/build/types/time-sync.js +1 -1
  61. package/build/util/aggregation-helper.d.ts +6 -0
  62. package/build/util/aggregation-helper.js +56 -0
  63. package/build/util/args.d.ts +7 -3
  64. package/build/util/args.js +46 -18
  65. package/build/util/errors.d.ts +1 -1
  66. package/build/util/errors.js +8 -4
  67. package/build/util/helpers.d.ts +4 -0
  68. package/build/util/helpers.js +23 -4
  69. package/build/util/json.d.ts +4 -0
  70. package/build/util/json.js +16 -0
  71. package/build/util/logger.d.ts +5 -0
  72. package/build/util/logger.js +40 -0
  73. package/build/util/validations.d.ts +30 -21
  74. package/build/util/validations.js +54 -55
  75. package/build/util/yaml.js +27 -4
  76. package/examples/manifests/azure-importer.yml +24 -0
  77. package/examples/manifests/basic-demo.yml +75 -0
  78. package/examples/manifests/basic.yml +27 -0
  79. package/examples/manifests/boavizta-pipeline.yml +85 -0
  80. package/examples/{impls/case-studies → manifests}/boavizta.yml +14 -14
  81. package/examples/{impls/test → manifests}/ccf.yml +9 -10
  82. package/examples/manifests/cim.yml +20 -0
  83. package/examples/manifests/cloud-metadata.yml +41 -0
  84. package/examples/manifests/co2js.yml +30 -0
  85. package/examples/manifests/coefficient.yml +23 -0
  86. package/examples/manifests/csv-export.yml +34 -0
  87. package/examples/manifests/e-mem.yml +21 -0
  88. package/examples/{impls/test → manifests}/e-net.yml +9 -8
  89. package/examples/manifests/generics.yml +71 -0
  90. package/examples/manifests/group-by.yml +48 -0
  91. package/examples/manifests/mock-observation.yml +33 -0
  92. package/examples/manifests/multiply.yml +23 -0
  93. package/examples/manifests/nesting-demo.yml +89 -0
  94. package/examples/manifests/nesting.yml +215 -0
  95. package/examples/manifests/pipeline-demo-1.yml +85 -0
  96. package/examples/manifests/pipeline-demo-2.yml +149 -0
  97. package/examples/manifests/pipeline-demo.yml +128 -0
  98. package/examples/manifests/pipeline-teads-sci.yml +82 -0
  99. package/examples/manifests/pipeline-with-generics.yml +147 -0
  100. package/examples/manifests/pipeline-with-mocks.yml +146 -0
  101. package/examples/{impls/test → manifests}/sci-e.yml +6 -8
  102. package/examples/manifests/sci-m.yml +23 -0
  103. package/examples/{impls/test → manifests}/sci-o.yml +10 -10
  104. package/examples/{impls/test → manifests}/sci.yml +10 -9
  105. package/examples/manifests/shell.yml +20 -0
  106. package/examples/manifests/sum.yml +23 -0
  107. package/examples/{impls/test → manifests}/tdp-finder.yml +6 -7
  108. package/examples/manifests/teads-aws.yml +22 -0
  109. package/examples/manifests/teads-curve.yml +20 -0
  110. package/examples/manifests/time-sync.yml +32 -0
  111. package/examples/manifests/watt-time.yml +42 -0
  112. package/jest.config.js +6 -1
  113. package/package.json +13 -8
  114. package/src/__tests__/integration/templates/integration.yaml +16 -0
  115. package/src/models/README.md +9 -7
  116. package/tsconfig.test.json +1 -1
  117. package/Makefile +0 -16
  118. package/build/config/units.yaml +0 -112
  119. package/build/lib/models-universe.d.ts +0 -36
  120. package/build/lib/models-universe.js +0 -113
  121. package/build/lib/observatory.d.ts +0 -20
  122. package/build/lib/observatory.js +0 -31
  123. package/build/lib/planet-aggregator.d.ts +0 -6
  124. package/build/lib/planet-aggregator.js +0 -35
  125. package/build/lib/supercomputer.d.ts +0 -37
  126. package/build/lib/supercomputer.js +0 -148
  127. package/build/types/helpers.d.ts +0 -1
  128. package/build/types/helpers.js +0 -3
  129. package/build/types/impl.d.ts +0 -45
  130. package/build/types/impl.js +0 -5
  131. package/build/types/model-interface.d.ts +0 -14
  132. package/build/types/model-interface.js +0 -3
  133. package/build/types/models-universe.d.ts +0 -23
  134. package/build/types/models-universe.js +0 -3
  135. package/build/types/planet-aggregator.d.ts +0 -6
  136. package/build/types/planet-aggregator.js +0 -3
  137. package/build/types/supercomputer.d.ts +0 -4
  138. package/build/types/supercomputer.js +0 -3
  139. package/build/types/units-dealer.d.ts +0 -3
  140. package/build/types/units-dealer.js +0 -3
  141. package/build/types/units.d.ts +0 -11
  142. package/build/types/units.js +0 -37
  143. package/build/util/units-dealer.d.ts +0 -10
  144. package/build/util/units-dealer.js +0 -32
  145. package/coverage/clover.xml +0 -379
  146. package/coverage/coverage-final.json +0 -14
  147. package/coverage/lcov-report/base.css +0 -224
  148. package/coverage/lcov-report/block-navigation.js +0 -87
  149. package/coverage/lcov-report/config/config.ts.html +0 -250
  150. package/coverage/lcov-report/config/index.html +0 -146
  151. package/coverage/lcov-report/config/index.ts.html +0 -91
  152. package/coverage/lcov-report/config/strings.ts.html +0 -208
  153. package/coverage/lcov-report/favicon.png +0 -0
  154. package/coverage/lcov-report/index.html +0 -161
  155. package/coverage/lcov-report/lib/index.html +0 -161
  156. package/coverage/lcov-report/lib/models-universe.ts.html +0 -517
  157. package/coverage/lcov-report/lib/observatory.ts.html +0 -187
  158. package/coverage/lcov-report/lib/planet-aggregator.ts.html +0 -274
  159. package/coverage/lcov-report/lib/supercomputer.ts.html +0 -472
  160. package/coverage/lcov-report/models/index.html +0 -131
  161. package/coverage/lcov-report/models/index.ts.html +0 -88
  162. package/coverage/lcov-report/models/planet-aggregator.ts.html +0 -271
  163. package/coverage/lcov-report/models/time-sync.ts.html +0 -1165
  164. package/coverage/lcov-report/prettify.css +0 -1
  165. package/coverage/lcov-report/prettify.js +0 -2
  166. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  167. package/coverage/lcov-report/sorter.js +0 -196
  168. package/coverage/lcov-report/util/args.ts.html +0 -289
  169. package/coverage/lcov-report/util/errors.ts.html +0 -166
  170. package/coverage/lcov-report/util/index.html +0 -161
  171. package/coverage/lcov-report/util/units-dealer.ts.html +0 -199
  172. package/coverage/lcov-report/util/yaml.ts.html +0 -193
  173. package/coverage/lcov.info +0 -637
  174. package/examples/impls/case-studies/accenture.yml +0 -155
  175. package/examples/impls/case-studies/aggregation.yml +0 -97
  176. package/examples/impls/case-studies/aveva.yaml +0 -48
  177. package/examples/impls/case-studies/azure-yassine.yaml +0 -67
  178. package/examples/impls/case-studies/dow_msft.yml +0 -173
  179. package/examples/impls/case-studies/farm-insights.yaml +0 -35
  180. package/examples/impls/case-studies/gsf-website.yaml +0 -93
  181. package/examples/impls/case-studies/msft-eshoppen.yaml +0 -162
  182. package/examples/impls/case-studies/msft-green-ai.yaml +0 -58
  183. package/examples/impls/case-studies/ntt-data-on-premise.yaml +0 -201
  184. package/examples/impls/test/aggregation-test.yml +0 -109
  185. package/examples/impls/test/azure.yml +0 -26
  186. package/examples/impls/test/if-demo.yml +0 -61
  187. package/examples/impls/test/large-impl.yml +0 -257303
  188. package/examples/impls/test/metadata.yml +0 -21
  189. package/examples/impls/test/nesting.yml +0 -113
  190. package/examples/impls/test/sci-m.yml +0 -24
  191. package/examples/impls/test/shell.yml +0 -19
  192. package/examples/impls/test/time-sync.yml +0 -75
  193. package/examples/ompls/aggregation-test.yml +0 -340
  194. package/examples/ompls/azure.yml +0 -145
  195. package/examples/ompls/ccf.yml +0 -29
  196. package/examples/ompls/complex-pipeline.yml +0 -105
  197. package/examples/ompls/full-sci.yml +0 -64
  198. package/examples/ompls/if-demo.yml +0 -517
  199. package/examples/ompls/metadata.yml +0 -29
  200. package/examples/ompls/nesting.yml +0 -113
  201. package/examples/ompls/sci-e.yml +0 -23
  202. package/examples/ompls/sci-m.yml +0 -33
  203. package/examples/ompls/sci-o.yml +0 -29
  204. package/examples/ompls/sci.yml +0 -37
  205. package/examples/ompls/shell.yml +0 -23
  206. package/examples/ompls/time-sync.yml +0 -212
  207. package/src/config/units.yaml +0 -112
  208. package/tsconfig.build.tsbuildinfo +0 -1
@@ -1,162 +0,0 @@
1
- name: msft-eshoppen
2
- description: https://github.com/Green-Software-Foundation/sci-guide/blob/dev/use-case-submissions/msft-eShoppen.md
3
- tags:
4
- kind: web
5
- complexity: moderate
6
- category: cloud
7
- initialize:
8
- models:
9
- - name: eshoppen-cpu # calculates e due to memory util ((mem-util * mem-allocated * mem-energy)/1000 = energy-memory)
10
- kind: energy-cpu
11
- path: false
12
- verbose: false
13
- - name: eshoppen-mem # calculates e due to memory util ((mem-util * mem-allocated * mem-energy)/1000 = energy-memory)
14
- kind: energy-memory
15
- path: false
16
- verbose: false
17
- - name: eshoppen-net # calculates e due to memory util ((mem-util * mem-allocated * mem-energy)/1000 = energy-memory)
18
- kind: energy-network
19
- path: false
20
- verbose: false
21
- - name: sci-e # sums energy-cpu and energy-memory
22
- kind: builtin
23
- path: ''
24
- verbose: false
25
- - name: sci-m # a model that calculates m from te, tir, el, rr and rtor
26
- kind: builtin
27
- path: ''
28
- verbose: false
29
- - name: sci-o # takes in total e and outputs operational emissions
30
- kind: builtin
31
- path: ''
32
- - name: sci # sums SCI components and converts to f.unit
33
- kind: builtin
34
- path: ''
35
- graph:
36
- children:
37
- front-end:
38
- pipeline:
39
- - eshoppen-cpu # thermal-design-power & cpu -> energy
40
- - eshoppen-mem # n-hours * n-chips * thermal-design-power-mem * thermal-design-power-coeff
41
- - sci-m # duration & config -> embodied
42
- - sci-e # energy & grid-carbon-intensity & embodied -> carbon
43
- - sci-o # e -> c
44
- - sci # -> f.unit
45
- config:
46
- energy-memory-thermal-design-power:
47
- n-hours: 1
48
- n-chips: 1
49
- thermal-design-power-mem: 12.16
50
- thermal-design-power-coeff: 0.12
51
- sci-m:
52
- total-embodied-emissions: 350000 # kgCO2eq
53
- time-reserved: 3600 # == the duration field
54
- expected-lifespan: 126144000 # 4 years in seconds
55
- resources-reserved: 1
56
- total-resources: 1
57
- sci-o:
58
- grid-carbon-intensity: 951 # gCO2e/kWh
59
- energy-cpu:
60
- physical-processor: Intel® Core™ i7-1185G7
61
- thermal-design-power: 28 # W
62
- thermal-design-power-coeff: 0.12
63
- n-hours: 1
64
- n-chips: 1
65
- sci:
66
- functional-unit-duration: 1
67
- functional-duration-time: ''
68
- functional-unit: requests # factor to convert per time to per f.unit
69
- inputs:
70
- - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred
71
- duration: 3600 # Secs
72
- cpu-util: 0
73
- app-server:
74
- pipeline: # note: no energy-memory calc applied here
75
- - eshoppen-cpu # thermal-design-power & cpu -> energy
76
- - sci-e # sums e components
77
- - sci-m # duration & config -> embodied
78
- - sci-o # energy & grid-carbon-intensity & embodied -> carbon
79
- - sci
80
- config:
81
- sci-m:
82
- total-embodied-emissions: 1205520 # kgCO2eq
83
- time-reserved: 1 # == duration field
84
- expected-lifespan: 35040 # 4 years in seconds
85
- resources-reserved: 2 # using cores
86
- total-resources: 16 # the original report has a typo, says 16 but actually has 26 cores.
87
- sci-o:
88
- grid-carbon-intensity: 951 # gCO2e/kWh
89
- energy-cpu:
90
- physical-processor: Intel® Xeon® Platinum 8272CL
91
- thermal-design-power: 205
92
- thermal-design-power-coeff: 0.32
93
- n-hours: 1
94
- n-chips: 1
95
- sci:
96
- functional-unit-duration: 1
97
- functional-duration-time: ''
98
- functional-unit: requests # factor to convert per time to per f.unit
99
- inputs:
100
- - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred
101
- duration: 3600
102
- cpu-util: 18.392
103
- db-server:
104
- pipeline: # no energy-memory calc applied here
105
- - eshoppen-cpu # thermal-design-power & cpu & duration-> energy
106
- - sci-e # sums e-components
107
- - sci-m # duration & config -> embodied
108
- - sci-o # energy & grid-carbon-intensity & embodied -> carbon
109
- config:
110
- sci-o:
111
- grid-carbon-intensity: 1000 # gCO2e/kWh
112
- sci-m:
113
- total-embodied-emissions: 1433120 # kgCO2eq
114
- time-reserved: 1 # == duration field
115
- expected-lifespan: 35040 # 4 years in hours
116
- resources-reserved: 2 # using cores
117
- total-resources: 16 # total cores
118
- sci-c:
119
- grid-carbon-intensity: 951
120
- energy-cpu:
121
- n-hours: 1
122
- n-chips: 1
123
- physical-processor: Intel® Xeon® Platinum 8160
124
- thermal-design-power: 150 # W
125
- thermal-design-power-coeff: 0.32
126
- sci:
127
- functional-unit-duration: 1
128
- functional-duration-time: ''
129
- functional-unit: requests # factor to convert per time to per f.unit
130
- inputs:
131
- - timestamp: 2023-07-06T00:00 # [KEYWORD] [NO-SUBFIELDS] time when measurement occurred
132
- duration: 3600
133
- cpu-util: 10
134
- grid-carbon-intensity: 1000
135
- network:
136
- pipeline:
137
- - eshoppen-net
138
- - sci-e # sums e components
139
- - sci-m
140
- - sci-o
141
- - sci
142
- config:
143
- sci-m:
144
- total-embodied-emissions: 0 # kgCO2eq
145
- time-reserved: 1 # == duration field
146
- expected-lifespan: 35040 # 4 years in seconds
147
- resources-reserved: 1 # using cores
148
- total-resources: 1 # total cores
149
- energy-network:
150
- net-energy: 0.001 #kwh/GB
151
- sci:
152
- functional-unit-duration: 1
153
- functional-duration-time: ''
154
- functional-unit: requests # factor to convert per time to per f.unit
155
- sci-o:
156
- grid-carbon-intensity: 951
157
- inputs:
158
- - timestamp: 2023-07-06T00:00
159
- duration: 3600
160
- data-in: 1.16
161
- data-out: 14.3
162
-
@@ -1,58 +0,0 @@
1
- name: mft-green-ai
2
- description: "https://github.com/Green-Software-Foundation/sci-guide/blob/dev/use-case-submissions/msft-green-ai.md"
3
- tags:
4
- kind: ml
5
- complexity: simple
6
- category: cloud
7
- initialize:
8
- models:
9
- - name: sci-o # a model that given e, i and m calculates a carbon value (e * i) + m
10
- kind: builtin
11
- verbose: false
12
- path: ''
13
- - name: wattime
14
- kind: builtin
15
- verbose: false
16
- path: ''
17
- - name: sci
18
- kind: builtin
19
- verbose: false
20
- path: ''
21
- graph:
22
- DenseNet: # an advanced grouping node
23
- pipeline:
24
- - sci-o # energy & grid-carbon-intensity & embodied -> carbon
25
- - watttime
26
- - add-obs
27
- - sci
28
- config:
29
- sci-o:
30
- physical-processor: nvidia-t4-nc16as-v3
31
- grid-carbon-intensity: 1 # data not provided in case study
32
- embodied-carbon: 0
33
- sci:
34
- functional-unit-duration: '' # signal to convert /s -> /hr
35
- functional-unit: '' # factor to convert per time to per f.unit ()
36
- inputs:
37
- - timestamp: 2023-07-06T00:00
38
- duration: 1336 # 22.27 min runtime in seconds
39
- energy: 17.97
40
- InceptionV3: # an advanced grouping node
41
- pipeline:
42
- - sci-o # energy & grid-carbon-intensity & embodied -> carbon
43
- - watttime
44
- - add-obs
45
- - sci
46
- config:
47
- sci-o:
48
- physical-processor: nvidia-t4-nc16as-v3
49
- grid-carbon-intensity: 1 # data not provided in case study
50
- embodied-carbon: 0
51
- sci:
52
- functional-unit-duration: 1
53
- functional-duration-time: ''
54
- functional-unit: requests # factor to convert per time to per f.unit
55
- inputs:
56
- - timestamp: 2023-07-06T00:00
57
- duration: 1205 # 22.27 min runtime in seconds
58
- energy: 14.37
@@ -1,201 +0,0 @@
1
- name: ntt-data-on-premise
2
- description: https://github.com/Green-Software-Foundation/sci-guide/blob/dev/use-case-submissions/nttdatta-On-Premise-Web-system.md
3
- tags:
4
- kind: web
5
- complexity: moderate
6
- category: on-premise
7
- initialize:
8
- models:
9
- - name: sci-e
10
- kind: builtin
11
- verbose: false
12
- path: ''
13
- - name: sci-m # a model that calculates m from te, tir, el, rr and rtor
14
- kind: builtin
15
- verbose: false
16
- path: ''
17
- - name: sci-o # a model that given e, i and m calculates a carbon value (e * i) + m
18
- kind: builtin
19
- verbose: false
20
- path: ''
21
- - name: sci # a model that given e, i and m calculates a carbon value (e * i) + m
22
- kind: builtin
23
- verbose: false
24
- path: ''
25
- graph:
26
- children:
27
- layer-3-switch: # an advanced grouping node
28
- pipeline:
29
- - sci-e
30
- - sci-m
31
- - sci-o
32
- - sci
33
- config:
34
- sci-m:
35
- total-embodied-emissions: 251000 # gCO2eq
36
- time-reserved: 3600 # 1 hour in s
37
- expected-lifespan: 126144000 # 4 years in seconds
38
- resources-reserved: 1
39
- total-resources: 1
40
- sci-o:
41
- grid-carbon-intensity: 457 # gCO2/kwh
42
- sci:
43
- functional-unit-duration: 1
44
- functional-duration-time: ''
45
- functional-unit: requests # factor to convert per time to per f.unit
46
- inputs:
47
- - timestamp: 2023-07-06T00:00
48
- duration: 3600
49
- five-min-input-ratotal-embodied-emissions: 100
50
- five-min-output-ratotal-embodied-emissions: 100
51
- grid-carbon-intensity: 457 # gCO2e/kWh
52
- energy-network: 0.00496 # 3.85e-3 * 24 ports * 1.5 (pue)
53
- requests: 38032740
54
- layer-2-switch:
55
- pipeline:
56
- - sci-e
57
- - sci-m
58
- - sci-o
59
- - sci
60
- config:
61
- sci-m:
62
- total-embodied-emissions: 251000 # gCO2eq
63
- time-reserved: 3600 # get from the duration field
64
- expected-lifespan: 126144000 # 4 years in seconds
65
- resources-reserved: 1
66
- total-resources: 1
67
- sci-o:
68
- grid-ci: 457 # gCO2/kwh
69
- sci:
70
- functional-unit-duration: 1
71
- functional-duration-time: ''
72
- functional-unit: requests # factor to convert per time to per f.unit
73
- children:
74
- switch-1:
75
- inputs:
76
- - timestamp: 2023-07-06T00:00
77
- duration: 1
78
- energy-network: 0.000811 #kwh
79
- grid-carbon-intensity: 457 # gCO2e/kWh
80
- requests: 38032740
81
- switch-2:
82
- inputs:
83
- - timestamp: 2023-07-06T00:00
84
- duration: 1
85
- energy-network: 0 # no traffic at all
86
- grid-carbon-intensity: 457 # gCO2e/kWh
87
- requests: 38032740
88
- switch-3:
89
- inputs:
90
- - timestamp: 2023-07-06T00:00
91
- duration: 1
92
- energy-network: 0.000955 #kwh
93
- grid-carbon-intensity: 457 # gCO2e/kWh
94
- requests: 38032740
95
- switch-4:
96
- inputs:
97
- - timestamp: 2023-07-06T00:00
98
- duration: 1
99
- energy-network: 1.14e-8 #kwh
100
- grid-carbon-intensity: 457 # gCO2e/kWh
101
- requests: 38032740
102
- db-servers:
103
- pipeline:
104
- - sci-e
105
- - sci-m
106
- - sci-o
107
- - sci
108
- config:
109
- sci-m:
110
- total-embodied-emissions: 6270000 # gCO2eq
111
- time-reserved: duration # get from the duration field
112
- expected-lifespan: 126144000 # 4 years in seconds
113
- resources-reserved: 1
114
- total-resources: 1
115
- sci-o:
116
- grid-carbon-intensity: 457 # gCO2/kwh
117
- sci:
118
- functional-unit-duration: ''
119
- functional-unit: requests
120
- children:
121
- db-server1:
122
- inputs:
123
- - timestamp: 2023-07-06T00:00
124
- energy-cpu: 0.258
125
- duration: 1 #s
126
- grid-carbon-intensity: 457 # gCO2e/kWh
127
- requests: 38032740
128
- db-server2:
129
- inputs:
130
- - timestamp: 2023-07-06T00:00
131
- energy-cpu: 0.193
132
- duration: 1 #s
133
- grid-carbon-intensity: 457 # gCO2e/kWh
134
- requests: 38032740
135
- app-servers:
136
- pipeline:
137
- - sci-e
138
- - sci-m
139
- - sci-o
140
- - sci
141
- config:
142
- sci-m:
143
- total-embodied-emissions: 6270000 # gCO2eq
144
- time-reserved: duration # get from the duration field
145
- expected-lifespan: 126144000 # 4 years in seconds
146
- resources-reserved: 1
147
- total-resources: 1
148
- sci-o:
149
- grid-carbon-intensity: 457 # gCO2/kwh
150
- sci:
151
- functional-unit-duration: 1
152
- functional-duration-time: ''
153
- functional-unit: requests # factor to convert per time to per f.unit
154
- children:
155
- app-server1:
156
- inputs:
157
- - timestamp: 2023-07-06T00:00
158
- duration: 1
159
- energy-cpu: 0.149
160
- grid-carbon-intensity: 457 # gCO2e/kWh
161
- app-server2:
162
- inputs:
163
- - timestamp: 2023-07-06T00:00
164
- duration: 1
165
- energy-cpu: 0.147
166
- grid-carbon-intensity: 457 # gCO2e/kWh
167
- requests: 38032740
168
- web-servers:
169
- pipeline:
170
- - sci-e
171
- - sci-m
172
- - sci-o
173
- - sci
174
- config:
175
- sci-m:
176
- total-embodied-emissions: 6270000 # gCO2eq
177
- time-reserved: duration # get from the duration field
178
- expected-lifespan: 126144000 # 4 years in seconds
179
- resources-reserved: 1
180
- total-resources: 1
181
- sci-o:
182
- grid-carbon-intensity: 457 # gCO2/kwh
183
- sci:
184
- functional-unit-duration: 1
185
- functional-duration-time: ''
186
- functional-unit: requests # factor to convert per time to per f.unit
187
- children:
188
- web-server1:
189
- inputs:
190
- - timestamp: 2023-07-06T00:00
191
- duration: 1
192
- energy-cpu: 0.139
193
- grid-carbon-intensity: 951 # gCO2e/kWh
194
- requests: 38032740
195
- web-server2:
196
- inputs:
197
- - timestamp: 2023-07-06T00:00
198
- duration: 1
199
- energy-cpu: 0.116
200
- grid-carbon-intensity: 951 # gCO2e/kWh
201
- requests: 38032740
@@ -1,109 +0,0 @@
1
- name: nesting-demo
2
- description:
3
- aggregation:
4
- metrics: ['carbon', 'energy']
5
- type: 'horizontal'
6
- tags:
7
- kind: web
8
- complexity: moderate
9
- category: on-premise
10
- initialize:
11
- models:
12
- - name: teads-curve
13
- model: TeadsCurveModel
14
- path: "@grnsft/if-unofficial-models"
15
- - name: sci-e
16
- model: SciEModel
17
- path: "@grnsft/if-models"
18
- - name: sci-m
19
- path: "@grnsft/if-models"
20
- model: SciMModel
21
- - name: sci-o
22
- model: SciOModel
23
- path: "@grnsft/if-models"
24
- - name: sci
25
- model: SciModel
26
- path: "@grnsft/if-models"
27
- graph:
28
- children:
29
- child: # an advanced grouping node
30
- pipeline:
31
- - teads-curve
32
- - sci-e
33
- - sci-m
34
- - sci-o
35
- - sci
36
- config:
37
- teads-curve:
38
- thermal-design-power: 65
39
- sci-m:
40
- total-embodied-emissions: 251000 # gCO2eq
41
- time-reserved: 3600 # 1 hour in s
42
- expected-lifespan: 126144000 # 4 years in seconds
43
- resources-reserved: 1
44
- total-resources: 1
45
- sci-o:
46
- grid-carbon-intensity: 457 # gCO2/kwh
47
- sci:
48
- functional-unit-duration: 1
49
- functional-duration-time: ''
50
- functional-unit: requests # factor to convert per time to per f.unit
51
- children:
52
- child-1:
53
- inputs:
54
- - timestamp: 2023-07-06T00:00
55
- duration: 10
56
- cpu-util: 10
57
- e-net: 0.000811 #kwh
58
- requests: 380
59
- - timestamp: 2023-07-06T00:10
60
- duration: 10
61
- cpu-util: 10
62
- e-net: 0.000811 #kwh
63
- requests: 380
64
- - timestamp: 2023-07-06T00:20
65
- duration: 10
66
- cpu-util: 10
67
- e-net: 0.000811 #kwh
68
- requests: 380
69
- - timestamp: 2023-07-06T00:30
70
- duration: 10
71
- cpu-util: 10
72
- e-net: 0.000811 #kwh
73
- requests: 380
74
- child-2:
75
- inputs:
76
- - timestamp: 2023-07-06T00:00
77
- duration: 10
78
- cpu-util: 20
79
- e-net: 0.000811 #kwh
80
- requests: 380
81
- - timestamp: 2023-07-06T00:10
82
- duration: 10
83
- cpu-util: 30
84
- e-net: 0.000811 #kwh
85
- requests: 380
86
- - timestamp: 2023-07-06T00:20
87
- duration: 10
88
- cpu-util: 40
89
- e-net: 0.000811 #kwh
90
- requests: 380
91
- - timestamp: 2023-07-06T00:30
92
- duration: 10
93
- cpu-util: 50
94
- e-net: 0.000811 #kwh
95
- requests: 380
96
- child-3:
97
- inputs:
98
- - timestamp: 2023-07-06T00:00
99
- duration: 10
100
- cpu-util: 10
101
- e-net: 0.000811 #kwh
102
- requests: 380
103
- child-4:
104
- inputs:
105
- - timestamp: 2023-07-06T00:00
106
- duration: 10
107
- cpu-util: 10
108
- e-net: 0.000811 #kwh
109
- requests: 380
@@ -1,26 +0,0 @@
1
- name: ccf-demo
2
- description: example impl invoking CCF model
3
- tags:
4
- initialize:
5
- models:
6
- - name: azure-importer
7
- path: "@grnsft/if-unofficial-models"
8
- model: AzureImporterModel
9
- kind: plugin
10
- graph:
11
- children:
12
- child:
13
- pipeline:
14
- - azure-importer
15
- config:
16
- azure-importer:
17
- inputs:
18
- - timestamp: '2023-11-02T10:35:31.820Z'
19
- duration: 3600
20
- azure-observation-window: 5 min # value and unit must be space separated
21
- azure-observation-aggregation: 'average'
22
- azure-subscription-id: 9de7e19f-8a18-4e73-9451-45fc74e7d0d3
23
- azure-resource-group: vm1_group
24
- azure-vm-name: vm1
25
-
26
-
@@ -1,61 +0,0 @@
1
- name: if-demo
2
- description: demo pipeline
3
- tags:
4
- initialize:
5
- models:
6
- - name: azure-importer
7
- model: AzureImporterModel
8
- path: "@grnsft/if-unofficial-models"
9
- - name: cloud-instance-metadata
10
- model: CloudInstanceMetadataModel
11
- path: "@grnsft/if-models"
12
- - name: teads-curve
13
- model: TeadsCurveModel
14
- path: "@grnsft/if-unofficial-models"
15
- - name: sci-e
16
- model: SciEModel
17
- path: "@grnsft/if-models"
18
- - name: sci-o
19
- model: SciOModel
20
- path: "@grnsft/if-models"
21
- - name: sci-e
22
- model: SciEModel
23
- path: "@grnsft/if-models"
24
- - name: sci-m
25
- model: SciMModel
26
- path: "@grnsft/if-models"
27
- - name: sci
28
- model: SciModel
29
- path: "@grnsft/if-models"
30
- graph:
31
- children:
32
- child:
33
- pipeline:
34
- - azure-importer
35
- - cloud-instance-metadata
36
- - teads-curve
37
- - sci-e
38
- - sci-o
39
- - sci-m
40
- - sci
41
- config:
42
- sci-o:
43
- grid-carbon-intensity: 951
44
- sci:
45
- functional-unit: ''
46
- functional-unit-time: hour
47
- functional-unit-duration: 1
48
- inputs:
49
- - timestamp: '2023-11-02T10:35:31.820Z'
50
- duration: 3600
51
- azure-observation-window: 5 min # value and unit must be space separated
52
- azure-observation-aggregation: 'average'
53
- azure-subscription-id: 9de7e19f-8a18-4e73-9451-45fc74e7d0d3
54
- azure-resource-group: vm1_group
55
- azure-vm-name: vm1
56
- total-embodied-emissions: 1533.12
57
- time-reserved: 300
58
- expected-lifespan: 94348800 # 3 yrs in seconds
59
- resources-reserved: 1
60
- total-resources: 64
61
-