1{
2  "Attributes": [
3    {
4      "Name": "LowCapacityCPUs",
5      "Controller": "cpuset",
6      "File": "background/cpus"
7    },
8    {
9      "Name": "HighCapacityCPUs",
10      "Controller": "cpuset",
11      "File": "foreground/cpus"
12    },
13    {
14      "Name": "MaxCapacityCPUs",
15      "Controller": "cpuset",
16      "File": "top-app/cpus"
17    },
18    {
19      "Name": "MemLimit",
20      "Controller": "memory",
21      "File": "memory.limit_in_bytes"
22    },
23    {
24      "Name": "MemSoftLimit",
25      "Controller": "memory",
26      "File": "memory.soft_limit_in_bytes"
27    },
28    {
29      "Name": "MemSwappiness",
30      "Controller": "memory",
31      "File": "memory.swappiness"
32    },
33    {
34      "Name": "STuneBoost",
35      "Controller": "schedtune",
36      "File": "schedtune.boost"
37    },
38    {
39      "Name": "STunePreferIdle",
40      "Controller": "schedtune",
41      "File": "schedtune.prefer_idle"
42    },
43    {
44      "Name": "UClampMin",
45      "Controller": "cpu",
46      "File": "cpu.uclamp.min"
47    },
48    {
49      "Name": "UClampMax",
50      "Controller": "cpu",
51      "File": "cpu.uclamp.max"
52    }
53  ],
54
55  "Profiles": [
56    {
57      "Name": "HighEnergySaving",
58      "Actions": [
59        {
60          "Name": "JoinCgroup",
61          "Params":
62          {
63            "Controller": "schedtune",
64            "Path": "background"
65          }
66        }
67      ]
68    },
69    {
70      "Name": "Frozen",
71      "Actions": [
72        {
73          "Name": "JoinCgroup",
74          "Params":
75          {
76            "Controller": "freezer",
77            "Path": "frozen"
78          }
79        }
80      ]
81    },
82    {
83      "Name": "Unfrozen",
84      "Actions": [
85        {
86          "Name": "JoinCgroup",
87          "Params":
88          {
89            "Controller": "freezer",
90            "Path": ""
91          }
92        }
93      ]
94    },
95    {
96      "Name": "NormalPerformance",
97      "Actions": [
98        {
99          "Name": "JoinCgroup",
100          "Params":
101          {
102            "Controller": "schedtune",
103            "Path": ""
104          }
105        }
106      ]
107    },
108    {
109      "Name": "HighPerformance",
110      "Actions": [
111        {
112          "Name": "JoinCgroup",
113          "Params":
114          {
115            "Controller": "schedtune",
116            "Path": "foreground"
117          }
118        }
119      ]
120    },
121    {
122      "Name": "MaxPerformance",
123      "Actions": [
124        {
125          "Name": "JoinCgroup",
126          "Params":
127          {
128            "Controller": "schedtune",
129            "Path": "top-app"
130          }
131        }
132      ]
133    },
134    {
135      "Name": "RealtimePerformance",
136      "Actions": [
137        {
138          "Name": "JoinCgroup",
139          "Params":
140          {
141            "Controller": "schedtune",
142            "Path": "rt"
143          }
144        }
145      ]
146    },
147    {
148      "Name": "CameraServicePerformance",
149      "Actions": [
150        {
151          "Name": "JoinCgroup",
152          "Params":
153          {
154            "Controller": "schedtune",
155            "Path": "camera-daemon"
156          }
157        }
158      ]
159    },
160
161    {
162      "Name": "CpuPolicySpread",
163      "Actions": [
164        {
165          "Name": "SetAttribute",
166          "Params":
167          {
168            "Name": "STunePreferIdle",
169            "Value": "1"
170          }
171        }
172      ]
173    },
174    {
175      "Name": "CpuPolicyPack",
176      "Actions": [
177        {
178          "Name": "SetAttribute",
179          "Params":
180          {
181            "Name": "STunePreferIdle",
182            "Value": "0"
183          }
184        }
185      ]
186    },
187
188    {
189      "Name": "VrKernelCapacity",
190      "Actions": [
191        {
192          "Name": "JoinCgroup",
193          "Params":
194          {
195            "Controller": "cpuset",
196            "Path": ""
197          }
198        }
199      ]
200    },
201    {
202      "Name": "VrServiceCapacityLow",
203      "Actions": [
204        {
205          "Name": "JoinCgroup",
206          "Params":
207          {
208            "Controller": "cpuset",
209            "Path": "system/background"
210          }
211        }
212      ]
213    },
214    {
215      "Name": "VrServiceCapacityNormal",
216      "Actions": [
217        {
218          "Name": "JoinCgroup",
219          "Params":
220          {
221            "Controller": "cpuset",
222            "Path": "system"
223          }
224        }
225      ]
226    },
227    {
228      "Name": "VrServiceCapacityHigh",
229      "Actions": [
230        {
231          "Name": "JoinCgroup",
232          "Params":
233          {
234            "Controller": "cpuset",
235            "Path": "system/performance"
236          }
237        }
238      ]
239    },
240    {
241      "Name": "VrProcessCapacityLow",
242      "Actions": [
243        {
244          "Name": "JoinCgroup",
245          "Params":
246          {
247            "Controller": "cpuset",
248            "Path": "application/background"
249          }
250        }
251      ]
252    },
253    {
254      "Name": "VrProcessCapacityNormal",
255      "Actions": [
256        {
257          "Name": "JoinCgroup",
258          "Params":
259          {
260            "Controller": "cpuset",
261            "Path": "application"
262          }
263        }
264      ]
265    },
266    {
267      "Name": "VrProcessCapacityHigh",
268      "Actions": [
269        {
270          "Name": "JoinCgroup",
271          "Params":
272          {
273            "Controller": "cpuset",
274            "Path": "application/performance"
275          }
276        }
277      ]
278    },
279
280    {
281      "Name": "ProcessCapacityLow",
282      "Actions": [
283        {
284          "Name": "JoinCgroup",
285          "Params":
286          {
287            "Controller": "cpuset",
288            "Path": "background"
289          }
290        }
291      ]
292    },
293    {
294      "Name": "ProcessCapacityNormal",
295      "Actions": [
296        {
297          "Name": "JoinCgroup",
298          "Params":
299          {
300            "Controller": "cpuset",
301            "Path": ""
302          }
303        }
304      ]
305    },
306    {
307      "Name": "ProcessCapacityHigh",
308      "Actions": [
309        {
310          "Name": "JoinCgroup",
311          "Params":
312          {
313            "Controller": "cpuset",
314            "Path": "foreground"
315          }
316        }
317      ]
318    },
319    {
320      "Name": "ProcessCapacityMax",
321      "Actions": [
322        {
323          "Name": "JoinCgroup",
324          "Params":
325          {
326            "Controller": "cpuset",
327            "Path": "top-app"
328          }
329        }
330      ]
331    },
332
333    {
334      "Name": "ServiceCapacityLow",
335      "Actions": [
336        {
337          "Name": "JoinCgroup",
338          "Params":
339          {
340            "Controller": "cpuset",
341            "Path": "system-background"
342          }
343        }
344      ]
345    },
346    {
347      "Name": "ServiceCapacityRestricted",
348      "Actions": [
349        {
350          "Name": "JoinCgroup",
351          "Params":
352          {
353            "Controller": "cpuset",
354            "Path": "restricted"
355          }
356        }
357      ]
358    },
359
360    {
361      "Name": "CameraServiceCapacity",
362      "Actions": [
363        {
364          "Name": "JoinCgroup",
365          "Params":
366          {
367            "Controller": "cpuset",
368            "Path": "camera-daemon"
369          }
370        }
371      ]
372    },
373
374    {
375      "Name": "LowIoPriority",
376      "Actions": [
377        {
378          "Name": "JoinCgroup",
379          "Params":
380          {
381            "Controller": "blkio",
382            "Path": "background"
383          }
384        }
385      ]
386    },
387    {
388      "Name": "NormalIoPriority",
389      "Actions": [
390        {
391          "Name": "JoinCgroup",
392          "Params":
393          {
394            "Controller": "blkio",
395            "Path": ""
396          }
397        }
398      ]
399    },
400    {
401      "Name": "HighIoPriority",
402      "Actions": [
403        {
404          "Name": "JoinCgroup",
405          "Params":
406          {
407            "Controller": "blkio",
408            "Path": ""
409          }
410        }
411      ]
412    },
413    {
414      "Name": "MaxIoPriority",
415      "Actions": [
416        {
417          "Name": "JoinCgroup",
418          "Params":
419          {
420            "Controller": "blkio",
421            "Path": ""
422          }
423        }
424      ]
425    },
426
427    {
428      "Name": "TimerSlackHigh",
429      "Actions": [
430        {
431          "Name": "SetTimerSlack",
432          "Params":
433          {
434            "Slack": "40000000"
435          }
436        }
437      ]
438    },
439    {
440      "Name": "TimerSlackNormal",
441      "Actions": [
442        {
443          "Name": "SetTimerSlack",
444          "Params":
445          {
446            "Slack": "50000"
447          }
448        }
449      ]
450    },
451
452    {
453      "Name": "PerfBoost",
454      "Actions": [
455        {
456          "Name": "SetClamps",
457          "Params":
458          {
459            "Boost": "50%",
460            "Clamp": "0"
461          }
462        }
463      ]
464    },
465    {
466      "Name": "PerfClamp",
467      "Actions": [
468        {
469          "Name": "SetClamps",
470          "Params":
471          {
472            "Boost": "0",
473            "Clamp": "30%"
474          }
475        }
476      ]
477    },
478
479    {
480      "Name": "LowMemoryUsage",
481      "Actions": [
482        {
483          "Name": "SetAttribute",
484          "Params":
485          {
486            "Name": "MemSoftLimit",
487            "Value": "16MB"
488          }
489        },
490        {
491          "Name": "SetAttribute",
492          "Params":
493          {
494            "Name": "MemSwappiness",
495            "Value": "150"
496
497          }
498        }
499      ]
500    },
501    {
502      "Name": "HighMemoryUsage",
503      "Actions": [
504        {
505          "Name": "SetAttribute",
506          "Params":
507          {
508            "Name": "MemSoftLimit",
509            "Value": "512MB"
510          }
511        },
512        {
513          "Name": "SetAttribute",
514          "Params":
515          {
516            "Name": "MemSwappiness",
517            "Value": "100"
518          }
519        }
520      ]
521    },
522    {
523      "Name": "SystemMemoryProcess",
524      "Actions": [
525        {
526          "Name": "JoinCgroup",
527          "Params":
528          {
529            "Controller": "memory",
530            "Path": "system"
531          }
532        }
533      ]
534    }
535  ],
536
537  "AggregateProfiles": [
538    {
539      "Name": "SCHED_SP_DEFAULT",
540      "Profiles": [ "TimerSlackNormal" ]
541    },
542    {
543      "Name": "SCHED_SP_BACKGROUND",
544      "Profiles": [ "HighEnergySaving", "LowIoPriority", "TimerSlackHigh" ]
545    },
546    {
547      "Name": "SCHED_SP_FOREGROUND",
548      "Profiles": [ "HighPerformance", "HighIoPriority", "TimerSlackNormal" ]
549    },
550    {
551      "Name": "SCHED_SP_TOP_APP",
552      "Profiles": [ "MaxPerformance", "MaxIoPriority", "TimerSlackNormal" ]
553    },
554    {
555      "Name": "SCHED_SP_RT_APP",
556      "Profiles": [ "RealtimePerformance", "MaxIoPriority", "TimerSlackNormal" ]
557    },
558    {
559      "Name": "CPUSET_SP_DEFAULT",
560      "Profiles": [ "TimerSlackNormal" ]
561    },
562    {
563      "Name": "CPUSET_SP_BACKGROUND",
564      "Profiles": [ "HighEnergySaving", "ProcessCapacityLow", "LowIoPriority", "TimerSlackHigh" ]
565    },
566    {
567      "Name": "CPUSET_SP_FOREGROUND",
568      "Profiles": [ "HighPerformance", "ProcessCapacityHigh", "HighIoPriority", "TimerSlackNormal" ]
569    },
570    {
571      "Name": "CPUSET_SP_TOP_APP",
572      "Profiles": [ "MaxPerformance", "ProcessCapacityMax", "MaxIoPriority", "TimerSlackNormal" ]
573    },
574    {
575      "Name": "CPUSET_SP_SYSTEM",
576      "Profiles": [ "ServiceCapacityLow", "TimerSlackNormal" ]
577    },
578    {
579      "Name": "CPUSET_SP_RESTRICTED",
580      "Profiles": [ "ServiceCapacityRestricted", "TimerSlackNormal" ]
581    }
582  ]
583}
584