@grnsft/if 0.1.3 → 0.1.5

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 (134) hide show
  1. package/README.md +21 -2
  2. package/build/config/config.d.ts +12 -0
  3. package/build/config/config.js +54 -0
  4. package/build/config/index.d.ts +2 -0
  5. package/build/config/index.js +8 -0
  6. package/build/config/strings.d.ts +19 -0
  7. package/build/config/strings.js +34 -0
  8. package/build/index.d.ts +2 -0
  9. package/build/index.js +53 -0
  10. package/build/lib/models-universe.d.ts +36 -0
  11. package/build/lib/models-universe.js +113 -0
  12. package/build/lib/observatory.d.ts +20 -0
  13. package/build/lib/observatory.js +31 -0
  14. package/build/lib/planet-aggregator.d.ts +6 -0
  15. package/build/lib/planet-aggregator.js +35 -0
  16. package/build/lib/supercomputer.d.ts +37 -0
  17. package/build/lib/supercomputer.js +148 -0
  18. package/build/models/index.d.ts +1 -0
  19. package/build/models/index.js +6 -0
  20. package/build/models/time-sync.d.ts +55 -0
  21. package/build/models/time-sync.js +235 -0
  22. package/build/types/helpers.d.ts +1 -0
  23. package/build/types/helpers.js +3 -0
  24. package/build/types/impl.d.ts +45 -0
  25. package/build/types/impl.js +5 -0
  26. package/build/types/model-interface.d.ts +14 -0
  27. package/build/types/model-interface.js +3 -0
  28. package/build/types/models-universe.d.ts +23 -0
  29. package/build/types/models-universe.js +3 -0
  30. package/build/types/planet-aggregator.d.ts +6 -0
  31. package/build/types/planet-aggregator.js +3 -0
  32. package/build/types/process-args.d.ts +7 -0
  33. package/build/types/process-args.js +3 -0
  34. package/build/types/supercomputer.d.ts +4 -0
  35. package/build/types/supercomputer.js +3 -0
  36. package/build/types/time-sync.d.ts +9 -0
  37. package/build/types/time-sync.js +3 -0
  38. package/build/types/units-dealer.d.ts +3 -0
  39. package/build/types/units-dealer.js +3 -0
  40. package/build/types/units.d.ts +11 -0
  41. package/build/types/units.js +37 -0
  42. package/build/util/args.d.ts +8 -0
  43. package/build/util/args.js +58 -0
  44. package/build/util/errors.d.ts +6 -0
  45. package/build/util/errors.js +25 -0
  46. package/build/util/helpers.d.ts +4 -0
  47. package/build/util/helpers.js +18 -0
  48. package/build/util/units-dealer.d.ts +10 -0
  49. package/build/util/units-dealer.js +32 -0
  50. package/build/util/validations.d.ts +29 -0
  51. package/build/util/validations.js +80 -0
  52. package/build/util/yaml.d.ts +12 -0
  53. package/build/util/yaml.js +36 -0
  54. package/examples/impls/test/time-sync.yml +75 -0
  55. package/examples/ompls/test/time-sync.yml +255 -0
  56. package/examples/ompls/time-sync.yml +212 -0
  57. package/hack-banner.png +0 -0
  58. package/package.json +3 -1
  59. package/src/config/units.yaml +11 -24
  60. package/src/models/README.md +266 -0
  61. package/tsconfig.build.tsbuildinfo +1 -1
  62. package/.devcontainer/devcontainer.json +0 -38
  63. package/.examples/ompls/azure.yml +0 -205
  64. package/.github/ISSUE_TEMPLATE/agenda.md +0 -37
  65. package/.github/ISSUE_TEMPLATE/blank-issue.md +0 -10
  66. package/.github/ISSUE_TEMPLATE/bug-report.md +0 -32
  67. package/.github/ISSUE_TEMPLATE/dev-ticket.md +0 -44
  68. package/.github/ISSUE_TEMPLATE/feedback.md +0 -42
  69. package/.github/ISSUE_TEMPLATE/model-plugin.md +0 -63
  70. package/.github/ISSUE_TEMPLATE/sprint-planning.md +0 -39
  71. package/.github/ISSUE_TEMPLATE/sprint-retro.md +0 -41
  72. package/.github/ISSUE_TEMPLATE/user-story.md +0 -10
  73. package/.github/PULL_REQUEST_TEMPLATE.md +0 -21
  74. package/.github/workflows/nodejs-ci.yml +0 -26
  75. package/coverage/clover.xml +0 -237
  76. package/coverage/coverage-final.json +0 -11
  77. package/coverage/lcov-report/base.css +0 -224
  78. package/coverage/lcov-report/block-navigation.js +0 -87
  79. package/coverage/lcov-report/config/config.ts.html +0 -256
  80. package/coverage/lcov-report/config/index.html +0 -146
  81. package/coverage/lcov-report/config/index.ts.html +0 -91
  82. package/coverage/lcov-report/config/strings.ts.html +0 -187
  83. package/coverage/lcov-report/favicon.png +0 -0
  84. package/coverage/lcov-report/index.html +0 -146
  85. package/coverage/lcov-report/lib/boavizta/index.html +0 -116
  86. package/coverage/lcov-report/lib/boavizta/index.ts.html +0 -1171
  87. package/coverage/lcov-report/lib/case-studies/aveva-model.ts.html +0 -277
  88. package/coverage/lcov-report/lib/case-studies/emem-model.ts.html +0 -439
  89. package/coverage/lcov-report/lib/case-studies/eshoppen-model.ts.html +0 -550
  90. package/coverage/lcov-report/lib/case-studies/index.html +0 -176
  91. package/coverage/lcov-report/lib/case-studies/index.ts.html +0 -97
  92. package/coverage/lcov-report/lib/case-studies/sci-accenture-model.ts.html +0 -232
  93. package/coverage/lcov-report/lib/ccf/index.html +0 -116
  94. package/coverage/lcov-report/lib/ccf/index.ts.html +0 -1339
  95. package/coverage/lcov-report/lib/cloud-instance-metadata/index.html +0 -116
  96. package/coverage/lcov-report/lib/cloud-instance-metadata/index.ts.html +0 -370
  97. package/coverage/lcov-report/lib/index.html +0 -161
  98. package/coverage/lcov-report/lib/index.ts.html +0 -121
  99. package/coverage/lcov-report/lib/models-universe.ts.html +0 -475
  100. package/coverage/lcov-report/lib/observatory.ts.html +0 -187
  101. package/coverage/lcov-report/lib/planet-aggregator.ts.html +0 -253
  102. package/coverage/lcov-report/lib/sci/index.html +0 -116
  103. package/coverage/lcov-report/lib/sci/index.ts.html +0 -571
  104. package/coverage/lcov-report/lib/sci-e/index.html +0 -116
  105. package/coverage/lcov-report/lib/sci-e/index.ts.html +0 -403
  106. package/coverage/lcov-report/lib/sci-m/index.html +0 -116
  107. package/coverage/lcov-report/lib/sci-m/index.ts.html +0 -487
  108. package/coverage/lcov-report/lib/sci-o/index.html +0 -116
  109. package/coverage/lcov-report/lib/sci-o/index.ts.html +0 -265
  110. package/coverage/lcov-report/lib/shell-imp/index.html +0 -116
  111. package/coverage/lcov-report/lib/shell-imp/index.ts.html +0 -376
  112. package/coverage/lcov-report/lib/supercomputer.ts.html +0 -712
  113. package/coverage/lcov-report/lib/teads-aws/index.html +0 -116
  114. package/coverage/lcov-report/lib/teads-aws/index.ts.html +0 -823
  115. package/coverage/lcov-report/lib/teads-curve/index.html +0 -116
  116. package/coverage/lcov-report/lib/teads-curve/index.ts.html +0 -625
  117. package/coverage/lcov-report/lib/watt-time/index.html +0 -116
  118. package/coverage/lcov-report/lib/watt-time/index.ts.html +0 -829
  119. package/coverage/lcov-report/prettify.css +0 -1
  120. package/coverage/lcov-report/prettify.js +0 -2
  121. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  122. package/coverage/lcov-report/sorter.js +0 -196
  123. package/coverage/lcov-report/types/common.ts.html +0 -109
  124. package/coverage/lcov-report/types/index.html +0 -116
  125. package/coverage/lcov-report/util/args.ts.html +0 -259
  126. package/coverage/lcov-report/util/errors.ts.html +0 -160
  127. package/coverage/lcov-report/util/index.html +0 -146
  128. package/coverage/lcov-report/util/models-universe.ts.html +0 -679
  129. package/coverage/lcov-report/util/observatory.ts.html +0 -229
  130. package/coverage/lcov-report/util/supercomputer.ts.html +0 -466
  131. package/coverage/lcov-report/util/yaml.ts.html +0 -199
  132. package/coverage/lcov.info +0 -403
  133. package/scripts/impact-test.sh +0 -12
  134. package/yarn-error.log +0 -5431
@@ -0,0 +1,255 @@
1
+ name: nesting-demo
2
+ description: impl with 2 levels of nesting with non-uniform timing of observations
3
+ tags: null
4
+ initialize:
5
+ models:
6
+ - name: teads-curve
7
+ path: '@grnsft/if-unofficial-models'
8
+ model: TeadsCurveModel
9
+ - name: sci-e
10
+ path: '@grnsft/if-models'
11
+ model: SciEModel
12
+ - name: sci-m
13
+ path: '@grnsft/if-models'
14
+ model: SciMModel
15
+ - name: sci-o
16
+ path: '@grnsft/if-models'
17
+ model: SciOModel
18
+ - name: time-synchronization
19
+ path: builtin
20
+ model: TimeSyncModel
21
+ config:
22
+ start-time: 2023-12-12T00:00:00.000Z
23
+ end-time: 2023-12-12T00:01:00.000Z
24
+ interval: 5
25
+ graph:
26
+ children:
27
+ child:
28
+ pipeline:
29
+ - teads-curve
30
+ - sci-e
31
+ - sci-m
32
+ - sci-o
33
+ - time-synchronization
34
+ config:
35
+ teads-curve:
36
+ thermal-design-power: 65
37
+ sci-m:
38
+ total-embodied-emissions: 251000
39
+ time-reserved: 3600
40
+ expected-lifespan: 126144000
41
+ resources-reserved: 1
42
+ total-resources: 1
43
+ sci-o:
44
+ grid-carbon-intensity: 457
45
+ children:
46
+ child-1:
47
+ inputs:
48
+ - timestamp: 2023-12-12T00:00:00.000Z
49
+ duration: 10
50
+ cpu-util: 10
51
+ carbon: 100
52
+ energy: 100
53
+ requests: 300
54
+ - timestamp: 2023-12-12T00:00:10.000Z
55
+ duration: 10
56
+ cpu-util: 20
57
+ requests: 380
58
+ outputs:
59
+ - timestamp: '2023-12-12T00:00:00.000Z'
60
+ duration: 5
61
+ cpu-util: 8
62
+ carbon: 50
63
+ energy: 0.00002888888888888889
64
+ requests: 150
65
+ thermal-design-power: 52
66
+ total-embodied-emissions: 125500
67
+ time-reserved: 2880
68
+ expected-lifespan: 63072000
69
+ resources-reserved: 0.8
70
+ total-resources: 0.8
71
+ grid-carbon-intensity: 365.6
72
+ energy-cpu: 0.00002888888888888889
73
+ embodied-carbon: 3.58162100456621
74
+ operational-carbon: 0.013202222222222223
75
+ - timestamp: '2023-12-12T00:00:05.000Z'
76
+ duration: 5
77
+ cpu-util: 8
78
+ carbon: 50
79
+ energy: 0.00002888888888888889
80
+ requests: 150
81
+ thermal-design-power: 52
82
+ total-embodied-emissions: 125500
83
+ time-reserved: 2880
84
+ expected-lifespan: 63072000
85
+ resources-reserved: 0.8
86
+ total-resources: 0.8
87
+ grid-carbon-intensity: 365.6
88
+ energy-cpu: 0.00002888888888888889
89
+ embodied-carbon: 3.58162100456621
90
+ operational-carbon: 0.013202222222222223
91
+ - timestamp: '2023-12-12T00:00:10.000Z'
92
+ duration: 5
93
+ cpu-util: 16
94
+ requests: 190
95
+ thermal-design-power: 52
96
+ total-embodied-emissions: 125500
97
+ time-reserved: 2880
98
+ expected-lifespan: 63072000
99
+ resources-reserved: 0.8
100
+ total-resources: 0.8
101
+ grid-carbon-intensity: 365.6
102
+ energy-cpu: 0.000043127731199186996
103
+ energy: 0.000043127731199186996
104
+ embodied-carbon: 3.58162100456621
105
+ operational-carbon: 0.019709373158028454
106
+ - timestamp: '2023-12-12T00:00:15.000Z'
107
+ duration: 5
108
+ cpu-util: 16
109
+ requests: 190
110
+ thermal-design-power: 52
111
+ total-embodied-emissions: 125500
112
+ time-reserved: 2880
113
+ expected-lifespan: 63072000
114
+ resources-reserved: 0.8
115
+ total-resources: 0.8
116
+ grid-carbon-intensity: 365.6
117
+ energy-cpu: 0.000043127731199186996
118
+ energy: 0.000043127731199186996
119
+ embodied-carbon: 3.58162100456621
120
+ operational-carbon: 0.019709373158028454
121
+ - timestamp: '2023-12-12T00:00:20.000Z'
122
+ duration: 5
123
+ cpu-util: 0
124
+ requests: 0
125
+ thermal-design-power: 0
126
+ total-embodied-emissions: 0
127
+ time-reserved: 0.8
128
+ expected-lifespan: 0
129
+ resources-reserved: 0.8
130
+ total-resources: 0.8
131
+ grid-carbon-intensity: 0
132
+ energy-cpu: 0
133
+ energy: 0
134
+ embodied-carbon: 0
135
+ operational-carbon: 0
136
+ - timestamp: '2023-12-12T00:00:25.000Z'
137
+ duration: 5
138
+ cpu-util: 0
139
+ requests: 0
140
+ thermal-design-power: 0
141
+ total-embodied-emissions: 0
142
+ time-reserved: 0.8
143
+ expected-lifespan: 0
144
+ resources-reserved: 0.8
145
+ total-resources: 0.8
146
+ grid-carbon-intensity: 0
147
+ energy-cpu: 0
148
+ energy: 0
149
+ embodied-carbon: 0
150
+ operational-carbon: 0
151
+ - timestamp: '2023-12-12T00:00:30.000Z'
152
+ duration: 5
153
+ cpu-util: 0
154
+ requests: 0
155
+ thermal-design-power: 0
156
+ total-embodied-emissions: 0
157
+ time-reserved: 0.8
158
+ expected-lifespan: 0
159
+ resources-reserved: 0.8
160
+ total-resources: 0.8
161
+ grid-carbon-intensity: 0
162
+ energy-cpu: 0
163
+ energy: 0
164
+ embodied-carbon: 0
165
+ operational-carbon: 0
166
+ - timestamp: '2023-12-12T00:00:35.000Z'
167
+ duration: 5
168
+ cpu-util: 0
169
+ requests: 0
170
+ thermal-design-power: 0
171
+ total-embodied-emissions: 0
172
+ time-reserved: 0.8
173
+ expected-lifespan: 0
174
+ resources-reserved: 0.8
175
+ total-resources: 0.8
176
+ grid-carbon-intensity: 0
177
+ energy-cpu: 0
178
+ energy: 0
179
+ embodied-carbon: 0
180
+ operational-carbon: 0
181
+ - timestamp: '2023-12-12T00:00:40.000Z'
182
+ duration: 5
183
+ cpu-util: 0
184
+ requests: 0
185
+ thermal-design-power: 0
186
+ total-embodied-emissions: 0
187
+ time-reserved: 0.8
188
+ expected-lifespan: 0
189
+ resources-reserved: 0.8
190
+ total-resources: 0.8
191
+ grid-carbon-intensity: 0
192
+ energy-cpu: 0
193
+ energy: 0
194
+ embodied-carbon: 0
195
+ operational-carbon: 0
196
+ - timestamp: '2023-12-12T00:00:45.000Z'
197
+ duration: 5
198
+ cpu-util: 0
199
+ requests: 0
200
+ thermal-design-power: 0
201
+ total-embodied-emissions: 0
202
+ time-reserved: 0.8
203
+ expected-lifespan: 0
204
+ resources-reserved: 0.8
205
+ total-resources: 0.8
206
+ grid-carbon-intensity: 0
207
+ energy-cpu: 0
208
+ energy: 0
209
+ embodied-carbon: 0
210
+ operational-carbon: 0
211
+ - timestamp: '2023-12-12T00:00:50.000Z'
212
+ duration: 5
213
+ cpu-util: 0
214
+ requests: 0
215
+ thermal-design-power: 0
216
+ total-embodied-emissions: 0
217
+ time-reserved: 0.8
218
+ expected-lifespan: 0
219
+ resources-reserved: 0.8
220
+ total-resources: 0.8
221
+ grid-carbon-intensity: 0
222
+ energy-cpu: 0
223
+ energy: 0
224
+ embodied-carbon: 0
225
+ operational-carbon: 0
226
+ - timestamp: '2023-12-12T00:00:55.000Z'
227
+ duration: 5
228
+ cpu-util: 0
229
+ requests: 0
230
+ thermal-design-power: 0
231
+ total-embodied-emissions: 0
232
+ time-reserved: 0.8
233
+ expected-lifespan: 0
234
+ resources-reserved: 0.8
235
+ total-resources: 0.8
236
+ grid-carbon-intensity: 0
237
+ energy-cpu: 0
238
+ energy: 0
239
+ embodied-carbon: 0
240
+ operational-carbon: 0
241
+ - timestamp: '2023-12-12T00:01:00.000Z'
242
+ duration: 1
243
+ cpu-util: 0
244
+ requests: 0
245
+ thermal-design-power: 0
246
+ total-embodied-emissions: 0
247
+ time-reserved: 0
248
+ expected-lifespan: 0
249
+ resources-reserved: 0
250
+ total-resources: 0
251
+ grid-carbon-intensity: 0
252
+ energy-cpu: 0
253
+ energy: 0
254
+ embodied-carbon: 0
255
+ operational-carbon: 0
@@ -0,0 +1,212 @@
1
+ name: nesting-demo
2
+ description: impl with 2 levels of nesting with non-uniform timing of observations
3
+ tags: null
4
+ initialize:
5
+ models:
6
+ - name: teads-curve
7
+ path: '@grnsft/if-unofficial-models'
8
+ model: TeadsCurveModel
9
+ - name: sci-e
10
+ path: '@grnsft/if-models'
11
+ model: SciEModel
12
+ - name: sci-m
13
+ path: '@grnsft/if-models'
14
+ model: SciMModel
15
+ - name: sci-o
16
+ path: '@grnsft/if-models'
17
+ model: SciOModel
18
+ - name: time-synchronization
19
+ path: builtin
20
+ model: TimeSyncModel
21
+ config:
22
+ start-time: 2023-12-12T00:00:00.000Z
23
+ end-time: 2023-12-12T00:01:00.000Z
24
+ interval: 5
25
+ graph:
26
+ children:
27
+ child:
28
+ pipeline:
29
+ - teads-curve
30
+ - sci-e
31
+ - sci-m
32
+ - sci-o
33
+ - time-synchronization
34
+ config:
35
+ teads-curve:
36
+ thermal-design-power: 65
37
+ sci-m:
38
+ total-embodied-emissions: 251000
39
+ time-reserved: 3600
40
+ expected-lifespan: 126144000
41
+ resources-reserved: 1
42
+ total-resources: 1
43
+ sci-o:
44
+ grid-carbon-intensity: 457
45
+ children:
46
+ child-1:
47
+ inputs:
48
+ - timestamp: 2023-12-12T00:00:00.000Z
49
+ duration: 10
50
+ cpu-util: 10
51
+ requests: 300
52
+ outputs:
53
+ - timestamp: '2023-12-12T00:00:00.000Z'
54
+ duration: 10
55
+ cpu-util: 10
56
+ requests: 30
57
+ thermal-design-power: 65
58
+ total-embodied-emissions: 251000
59
+ time-reserved: 3600
60
+ expected-lifespan: 126144000
61
+ resources-reserved: 1
62
+ total-resources: 1
63
+ grid-carbon-intensity: 457
64
+ energy-cpu: 0.000057777777777777776
65
+ energy: 0.000057777777777777776
66
+ embodied-carbon: 7.16324200913242
67
+ operational-carbon: 0.026404444444444442
68
+ carbon: 7.189646453576864
69
+ - timestamp: '2023-12-12T00:00:01.000Z'
70
+ duration: 10
71
+ cpu-util: 10
72
+ requests: 30
73
+ thermal-design-power: 65
74
+ total-embodied-emissions: 251000
75
+ time-reserved: 3600
76
+ expected-lifespan: 126144000
77
+ resources-reserved: 1
78
+ total-resources: 1
79
+ grid-carbon-intensity: 457
80
+ energy-cpu: 0.000057777777777777776
81
+ energy: 0.000057777777777777776
82
+ embodied-carbon: 7.16324200913242
83
+ operational-carbon: 0.026404444444444442
84
+ carbon: 7.189646453576864
85
+ - timestamp: '2023-12-12T00:00:02.000Z'
86
+ duration: 10
87
+ cpu-util: 10
88
+ requests: 30
89
+ thermal-design-power: 65
90
+ total-embodied-emissions: 251000
91
+ time-reserved: 3600
92
+ expected-lifespan: 126144000
93
+ resources-reserved: 1
94
+ total-resources: 1
95
+ grid-carbon-intensity: 457
96
+ energy-cpu: 0.000057777777777777776
97
+ energy: 0.000057777777777777776
98
+ embodied-carbon: 7.16324200913242
99
+ operational-carbon: 0.026404444444444442
100
+ carbon: 7.189646453576864
101
+ - timestamp: '2023-12-12T00:00:03.000Z'
102
+ duration: 10
103
+ cpu-util: 10
104
+ requests: 30
105
+ thermal-design-power: 65
106
+ total-embodied-emissions: 251000
107
+ time-reserved: 3600
108
+ expected-lifespan: 126144000
109
+ resources-reserved: 1
110
+ total-resources: 1
111
+ grid-carbon-intensity: 457
112
+ energy-cpu: 0.000057777777777777776
113
+ energy: 0.000057777777777777776
114
+ embodied-carbon: 7.16324200913242
115
+ operational-carbon: 0.026404444444444442
116
+ carbon: 7.189646453576864
117
+ - timestamp: '2023-12-12T00:00:04.000Z'
118
+ duration: 10
119
+ cpu-util: 10
120
+ requests: 30
121
+ thermal-design-power: 65
122
+ total-embodied-emissions: 251000
123
+ time-reserved: 3600
124
+ expected-lifespan: 126144000
125
+ resources-reserved: 1
126
+ total-resources: 1
127
+ grid-carbon-intensity: 457
128
+ energy-cpu: 0.000057777777777777776
129
+ energy: 0.000057777777777777776
130
+ embodied-carbon: 7.16324200913242
131
+ operational-carbon: 0.026404444444444442
132
+ carbon: 7.189646453576864
133
+ - timestamp: '2023-12-12T00:00:05.000Z'
134
+ duration: 10
135
+ cpu-util: 10
136
+ requests: 30
137
+ thermal-design-power: 65
138
+ total-embodied-emissions: 251000
139
+ time-reserved: 3600
140
+ expected-lifespan: 126144000
141
+ resources-reserved: 1
142
+ total-resources: 1
143
+ grid-carbon-intensity: 457
144
+ energy-cpu: 0.000057777777777777776
145
+ energy: 0.000057777777777777776
146
+ embodied-carbon: 7.16324200913242
147
+ operational-carbon: 0.026404444444444442
148
+ carbon: 7.189646453576864
149
+ - timestamp: '2023-12-12T00:00:06.000Z'
150
+ duration: 10
151
+ cpu-util: 10
152
+ requests: 30
153
+ thermal-design-power: 65
154
+ total-embodied-emissions: 251000
155
+ time-reserved: 3600
156
+ expected-lifespan: 126144000
157
+ resources-reserved: 1
158
+ total-resources: 1
159
+ grid-carbon-intensity: 457
160
+ energy-cpu: 0.000057777777777777776
161
+ energy: 0.000057777777777777776
162
+ embodied-carbon: 7.16324200913242
163
+ operational-carbon: 0.026404444444444442
164
+ carbon: 7.189646453576864
165
+ - timestamp: '2023-12-12T00:00:07.000Z'
166
+ duration: 10
167
+ cpu-util: 10
168
+ requests: 30
169
+ thermal-design-power: 65
170
+ total-embodied-emissions: 251000
171
+ time-reserved: 3600
172
+ expected-lifespan: 126144000
173
+ resources-reserved: 1
174
+ total-resources: 1
175
+ grid-carbon-intensity: 457
176
+ energy-cpu: 0.000057777777777777776
177
+ energy: 0.000057777777777777776
178
+ embodied-carbon: 7.16324200913242
179
+ operational-carbon: 0.026404444444444442
180
+ carbon: 7.189646453576864
181
+ - timestamp: '2023-12-12T00:00:08.000Z'
182
+ duration: 10
183
+ cpu-util: 10
184
+ requests: 30
185
+ thermal-design-power: 65
186
+ total-embodied-emissions: 251000
187
+ time-reserved: 3600
188
+ expected-lifespan: 126144000
189
+ resources-reserved: 1
190
+ total-resources: 1
191
+ grid-carbon-intensity: 457
192
+ energy-cpu: 0.000057777777777777776
193
+ energy: 0.000057777777777777776
194
+ embodied-carbon: 7.16324200913242
195
+ operational-carbon: 0.026404444444444442
196
+ carbon: 7.189646453576864
197
+ - timestamp: '2023-12-12T00:00:09.000Z'
198
+ duration: 10
199
+ cpu-util: 10
200
+ requests: 30
201
+ thermal-design-power: 65
202
+ total-embodied-emissions: 251000
203
+ time-reserved: 3600
204
+ expected-lifespan: 126144000
205
+ resources-reserved: 1
206
+ total-resources: 1
207
+ grid-carbon-intensity: 457
208
+ energy-cpu: 0.000057777777777777776
209
+ energy: 0.000057777777777777776
210
+ embodied-carbon: 7.16324200913242
211
+ operational-carbon: 0.026404444444444442
212
+ carbon: 7.189646453576864
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@grnsft/if",
3
3
  "description": "Impact Framework",
4
- "version": "v0.1.3",
4
+ "version": "v0.1.5",
5
5
  "author": {
6
6
  "name": "Green Software Foundation",
7
7
  "email": "info@gsf.com"
@@ -14,6 +14,8 @@
14
14
  },
15
15
  "dependencies": {
16
16
  "js-yaml": "^4.1.0",
17
+ "moment": "^2.29.4",
18
+ "moment-range": "^4.0.2",
17
19
  "ts-command-line-args": "^2.5.1",
18
20
  "typescript": "^5.1.6",
19
21
  "zod": "^3.22.4"
@@ -18,14 +18,18 @@ duration:
18
18
  description: refers to the duration of the input
19
19
  unit: seconds
20
20
  aggregation: sum
21
+ energy:
22
+ description: amount of energy utilised by the component
23
+ unit: kWh
24
+ aggregation: sum
21
25
  energy-cpu:
22
26
  description: Energy consumed by the CPU of the component
23
27
  unit: kWh
24
28
  aggregation: sum
25
29
  expected-lifespan:
26
- description: expected lifespan for some component
30
+ description: Total Expected Lifespan of the Component in Seconds
27
31
  unit: seconds
28
- aggregation: none
32
+ aggregation: sum
29
33
  energy-memory:
30
34
  description: Energy consumed by the Memory of the component
31
35
  unit: kWh
@@ -34,28 +38,16 @@ embodied-carbon:
34
38
  description: Embodied Emissions of the component
35
39
  unit: gCO2e
36
40
  aggregation: sum
37
- energy:
38
- description: amount of energy utilised by the component
39
- unit: kWh
40
- aggregation: sum
41
41
  energy-network:
42
42
  description: Energy consumed by the Network of the component
43
43
  unit: kWh
44
44
  aggregation: sum
45
- expected-lifespan:
46
- description: Total Expected Lifespan of the Component in Seconds
47
- unit: seconds
48
- aggregation: None
49
45
  functional-unit:
50
46
  description: the name of the functional unit in which the final SCI value should be expressed, e.g. requests, users
51
47
  unit: none
52
- aggregation: none
53
- functional-unit-duration:
54
- description: how many units of functional-unit-time the final SCI value should be expressed in.
55
- unit: functional-unit-time
56
- aggregation: none
48
+ aggregation: sum
57
49
  functional-unit-time:
58
- description: string describing the unit of time in which the final SCI calculation should be expressed
50
+ description: string describing the unit of time in which the final SCI calculation should be expressed, e.g. "1-min"
59
51
  unit: none
60
52
  aggregation: none
61
53
  gpu-util:
@@ -74,10 +66,6 @@ location:
74
66
  description: Geographic location of provider as string (for watt-time model it is provided as latitude and longitude, comma separated, in decimal degrees)
75
67
  unit: None (decimal degrees for watt-time model)
76
68
  aggregation: None
77
- embodied-carbon:
78
- description: Carbon emitted from component manufacture (returned from Boavizta)
79
- unit: gCO2eq
80
- aggregation: sum
81
69
  operational-carbon:
82
70
  description: Operational Emissions of the component
83
71
  unit: gCO2e
@@ -85,11 +73,11 @@ operational-carbon:
85
73
  physical-processor:
86
74
  description: Name of the physical processor
87
75
  unit: None
88
- aggregation: None
76
+ aggregation: none
89
77
  vendor:
90
78
  description: Name of the cloud service provider in the ccf model. Can be aws, gcp or azure
91
79
  unit: None
92
- aggregation: None
80
+ aggregation: none
93
81
  ram-alloc:
94
82
  description: refers to GB of memory allocated.
95
83
  unit: GB
@@ -113,7 +101,7 @@ total-embodied-emissions:
113
101
  timestamp:
114
102
  description: refers to the time of occurrence of the input
115
103
  unit: RFC3339
116
- aggregation: None
104
+ aggregation: none
117
105
  time-reserved:
118
106
  description: time reserved for a component
119
107
  unit: seconds
@@ -122,4 +110,3 @@ total-resources:
122
110
  description: total resources available
123
111
  unit: count
124
112
  aggregation: none
125
-