• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2025 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6# http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14module:
15  name: runtime
16  namespace: ark
17
18options:
19- name: boot-panda-files
20  type: arg_list_t
21  default:
22      - $ORIGIN/../pandastdlib/arkstdlib.abc
23  description: Boot panda files separated by colon
24  delimiter: ":"
25
26- name: panda-files
27  type: arg_list_t
28  default: []
29  description: Panda files separated by colon which is not within boot-panda-files
30  delimiter: ":"
31
32- name: boot-intrinsic-spaces
33  type: arg_list_t
34  default:
35    - core
36  possible_values:
37    - core
38  description: Load specified intrinsic spaces. This option is for fine tuning. Use load-runtimes instead
39  delimiter: ":"
40
41- name: boot-class-spaces
42  type: arg_list_t
43  default:
44    - core
45  possible_values:
46    - core
47  description: Load specified class spaces. This option is for fine tuning. Use load-runtimes instead
48  delimiter: ":"
49
50- name: runtime-type
51  type: std::string
52  default: core
53  possible_values:
54    - core
55  description: Runtime type. This option is for fine tuning. Use load-runtimes instead
56
57- name: load-runtimes
58  type: arg_list_t
59  default:
60    - core
61  possible_values:
62    - core
63  description: Load specified class and intrinsic spaces and define runtime type
64  delimiter: ":"
65
66- name: runtime-compressed-strings-enabled
67  type: bool
68  default: true
69  description: Enable/disable compressed strings
70
71- name: explicit-concurrent-gc-enabled
72  type: bool
73  default: true
74  description: Enable/disable explicit GC run in concurrent
75
76- name: run-gc-in-place
77  type: bool
78  default: false
79  description: Enable/disable running GC only in place
80
81- name: full-gc-bombing-frequency
82  type: uint32_t
83  default: 0
84  description: Switch on running Full GC collection instead of the one in the trigger queue in the GC thread. Value means frequency - each N collection in the GC thread will be a full collection. Can't be use with run-gc-in-place
85
86- name: run-gc-every-safepoint
87  type: bool
88  default: false
89  description: Run GC on every safepoint. GC will be run only if we use gc-trigger-type=debug and run-gc-in-place=true
90
91- name: compiler-enable-jit
92  type: bool
93  default: true
94  description: Enables/disables JIT compiler
95
96- name: compiler-hotness-threshold
97  type: uint32_t
98  default: 3000
99  description: Threshold for "hotness" counter of the method after that it will be compiled
100
101- name: compiler-profiling-threshold
102  type: uint32_t
103  default: 1500
104  description: Threshold to start method profiling.
105
106- name: compiler-enable-osr
107  type: bool
108  default: true
109  description: Enables/disables OSR compilation
110
111- name: debugger-library-path
112  type: std::string
113  default: ""
114  description: Path to debugger library
115
116- name: debugger-enable
117  type: bool
118  default: false
119  description: Is debugger enabled on runtime create
120
121- name: sampling-profiler-create
122  type: bool
123  default: false
124  description: Is the sampling profiler created and available during runtime execution
125
126- name: sampling-profiler-startup-run
127  type: bool
128  default: false
129  description: Is the sampling profiler runned on runtime startup
130
131- name: sampling-profiler-interval
132  type: uint32_t
133  default: 500
134  description: Sampling profiler interval in microseconds
135
136- name: sampling-profiler-output-file
137  type: std::string
138  default: ""
139  description: Name of file to collect trace in .aspt format
140
141- name: debugger-port
142  type: uint32_t
143  default: 19015
144  description: Port for serving debugger clients via socket
145
146- name: debugger-break-on-start
147  type: bool
148  default: false
149  description: Whether to break threads on creation or not
150
151- name: log-components
152  type: arg_list_t
153  default:
154    - all
155  possible_values:
156    - all
157    - alloc
158    - mm-obj-events
159    - classlinker
160    - common
161    - core
162    - gc
163    - gc_trigger
164    - reference_processor
165    - interpreter
166    - compiler
167    - pandafile
168    - memorypool
169    - runtime
170    - trace
171    - debugger
172    - interop
173    - verifier
174    - compilation_queue
175    - aot
176    - events
177    - scheduler
178    - coroutines
179  description: '[DEPRECATED] Option was moved to libpandabase/options.yaml, use base_options::Options instead of runtime options.'
180  delimiter: ":"
181  deprecated: true
182
183- name: compiler-nullcheck
184  type: uint64_t
185  default: 1
186  possible_values:
187    - 0
188    - 1
189  description: Dfx option for compiler-nullcheck
190
191- name: reference-dump
192  type: uint64_t
193  default: 1
194  possible_values:
195    - 0
196    - 1
197  description: Dfx option for reference-dump
198
199- name: signal-catcher
200  type: uint64_t
201  default: 1
202  possible_values:
203    - 0
204    - 1
205  description: Dfx option for signal-catcher
206
207- name: signal-handler
208  type: uint64_t
209  default: 1
210  possible_values:
211    - 0
212    - 1
213  description: Dfx option for signal-handler
214
215- name: sigquit-flag
216  type: uint64_t
217  default: 1
218  possible_values:
219    - 0
220    - 1
221  description: Dfx option for sigquit
222
223- name: sigusr1-flag
224  type: uint64_t
225  default: 1
226  possible_values:
227    - 0
228    - 1
229  description: Dfx option for sigusr1
230
231- name: sigusr2-flag
232  type: uint64_t
233  default: 1
234  possible_values:
235    - 0
236    - 1
237  description: Dfx option for sigusr2
238
239- name: mobile-log-flag
240  type: uint64_t
241  default: 1
242  possible_values:
243    - 0
244    - 1
245  description: Dfx option for mobile-log
246
247- name: dfx-log
248  type: uint64_t
249  default: 0
250  possible_values:
251    - 0
252    - 1
253  description: Dfx option for dfx log
254
255- name: gc-type
256  type: std::string
257  default: g1-gc
258  possible_values:
259    - epsilon
260    - epsilon-g1
261    - stw
262    - gen-gc
263    - g1-gc
264    - cmc-gc
265  description: Type of used GC
266
267- name: ic-enable
268  type: bool
269  default: true
270  description: switch of inline cache
271
272- name: gc-trigger-type
273  type: std::string
274  default: heap-trigger
275  possible_values:
276    - heap-trigger-test
277    - heap-trigger
278    - adaptive-heap-trigger
279    - trigger-heap-occupancy
280    - no-gc-for-start-up
281    - debug
282    - debug-never
283    - pause-time-goal-trigger
284  description: Type of used GC trigger
285
286- name: log-detailed-gc-info-enabled
287  type: bool
288  default: false
289  description: If print INFO log to get more detailed information in GC.
290
291- name: log-detailed-gc-compaction-info-enabled
292  type: bool
293  default: false
294  description: If print INFO log to get more detailed compaction/promotion information per region in GC.
295
296- name: gc-trigger-percent-threshold
297  type: uint32_t
298  default: 15
299  description: Percent of heap for threshold increasing
300
301- name: gc-trigger-adaptive-multiplier
302  type: uint32_t
303  default: 3
304  description: Adjust jump from too frequent gc. New jump calculate as gc-trigger-adaptive-multiplier * max-max-extra-heap-size
305
306- name: max-trigger-percent
307  type: uint32_t
308  default: 45
309  description: Percent of maximum heap size is used as threshold for trigger-heap-occupancy
310
311- name: skip-startup-gc-count
312  type: uint32_t
313  default: 10
314  description: No stw gc count for no-gc-for-start-up
315
316- name: gc-use-nth-alloc-trigger
317  type: bool
318  default: false
319  description: Allow to trigger GC on n-th allocation
320
321- name: init-young-space-size
322  type: uint64_t
323  default: 4194304
324  description: Initial young space size gen-gc
325
326- name: young-space-size
327  type: uint64_t
328  default: 4194304
329  description: Young space size of gen-gc
330
331- name: young-shared-space-size
332  type: uint64_t
333  default: 524288
334  description: How much space in young-gen are shared (this space is not used for tlabs)
335
336- name: min-extra-heap-size
337  type: uint64_t
338  default: 5242880
339  description: Minimum extra heap size for trigger gc
340
341- name: max-extra-heap-size
342  type: uint64_t
343  default: 8388608
344  description: Maximum extra heap size for trigger gc
345
346- name: gc-debug-trigger-start
347  type: uint64_t
348  default: 0
349  description: First iteration to start returning true in debug trigger
350
351- name: gc-dump-heap
352  type: bool
353  default: false
354  description: Dump heap before and after GC
355
356- name: gc-workers-count
357  type: uint32_t
358  # default value depends on a specific device model
359  default_target_specific:
360    HL1CMSM: 2  # mate 60 pro
361    ohos: 2 # devboard
362    HN1NOAHM: 2 # mate 40 pro
363    default: 2
364  description: Set number of additional GC helper threads. GC uses these threads to speed up collection doing work in parallel.
365
366- name: manage-gc-threads-affinity
367  type: bool
368  default: true
369  description: Manage GC Threads affinity on cores
370
371- name: use-weak-cpu-for-gc-concurrent
372  type: bool
373  default: false
374  description: Set GC Thread on weak cores during concurrent phases
375
376- name: g1-region-garbage-rate-threshold
377  type: uint32_t
378  default: 52
379  description: Specify garbage rate threshold of a tenured region to be included into a mixed collection.
380
381- name: g1-number-of-tenured-regions-at-mixed-collection
382  type: uint32_t
383  default: 20
384  description: Specify a max number of tenured regions which can be collected at mixed collection in G1GC.
385
386- name: g1-track-freed-objects
387  type: std::string
388  default: default
389  possible_values:
390  - default
391  - 'true'
392  - 'false'
393  description: Specify whether G1GC tracks object removing (i.e. update objects count in memstats and log removed objects). Default means true on Release and false otherwise. If the value is true G1GC doesn't delete classes in concurrent phase because it needs to know object size.
394
395- name: gc-marking-stack-new-tasks-frequency
396  type: uint64_t
397  default: 10000000
398  description: Limit the creation rate of tasks during marking in nanoseconds. if average task creation during marking is less than this value - it increases the stack size limit to create tasks less frequently.
399
400- name: gc-root-marking-stack-max-size
401  type: uint32_t
402  default: 186
403  description: The max stack size for root marking in main thread, if it exceeded, we will send a new task to workers. 0 means unlimited.
404
405- name: gc-workers-marking-stack-max-size
406  type: uint32_t
407  default: 200
408  description: The max stack size for marking stage proceed in workers threads, if it exceeded, we will send a new task to other workers. 0 means unlimited.
409
410- name: gc-parallel-marking-enabled
411  type: bool
412  default: true
413  description: Enable parallel marking in GC if it is supported (now it is G1 and STW). If we don't have gc workers, this options will be ignored.
414
415- name: gc-parallel-compacting-enabled
416  type: bool
417  default: true
418  description: Enable parallel compacting in GC if it is supported (now it is G1). If we don't have gc workers, this options will be ignored.
419
420- name: gc-parallel-ref-updating-enabled
421  type: bool
422  default: true
423  description: Enable parallel references updating in GC if it is supported (now it is G1). If we don't have gc workers, this options will be ignored.
424
425- name: g1-single-pass-compaction-enabled
426  type: bool
427  default: true
428  description: Enable single pass compaction mode for G1 GC if it is supported by VM implementation
429
430- name: reference-processor-enable
431  type: bool
432  default: true
433  description: Enables/disables ReferenceProcessor
434
435- name: log-level
436  type: std::string
437  default: error
438  possible_values:
439  - debug
440  - info
441  - warning
442  - error
443  - fatal
444  description: '[DEPRECATED] Option was moved to libpandabase/options.yaml, use base_options::Options instead of runtime options.'
445  deprecated: true
446
447- name: log-stream
448  type: std::string
449  default: std
450  possible_values:
451  - std
452  - file
453  - fast-file
454  - dummy
455  description: '[DEPRECATED] Option was moved to libpandabase/options.yaml, use base_options::Options instead of runtime options.'
456  deprecated: true
457
458- name: log-file
459  type: std::string
460  default: ""
461  description: '[DEPRECATED] Option was moved to libpandabase/options.yaml, use base_options::Options instead of runtime options.'
462  deprecated: true
463
464- name: gc-enable-tracing
465  type: bool
466  default: false
467  description: enables/disables tracing gc
468
469- name: g1-enable-concurrent-update-remset
470  type: bool
471  default: true
472  description: enables/disables concurrent update remset thread
473
474- name: g1-min-concurrent-cards-to-process
475  type: uint32_t
476  default: 2
477  description: Minimum number of cards to process from queue in update-remset-thread. Higher number consumes less CPU, but can cause higher pause.
478
479- name: g1-hot-cards-processing-frequency
480  type: uint32_t
481  default: 7
482  description: Frequency of proccessing hot cards in update-remset-thread
483
484- name: g1-promotion-region-alive-rate
485  type: uint32_t
486  default: 75
487  description: Minimum percentage of alive bytes in young region to promote it into tenured without moving. 100 value means never.
488
489- name: g1-full-gc-region-fragmentation-rate
490  type: uint32_t
491  default: 10
492  description: Maximum fragmentation percentage for a tenured region with no garbage inside to skip it on full collection. If the region has bigger fragmentation, we will collect it during a full collection in spite of it has no garbage inside. 0 value means we will collect every region.
493
494- name: g1-pause-time-goal
495  description: Enable G1 pause time goal
496  sub_options:
497  - name: max-gc-pause
498    type: uint32_t
499    default: 10
500    description: Maximum sum of G1 GC pauses during gc-pause-interval in milliseconds
501  - name: gc-pause-interval
502    type: uint32_t
503    default: 11
504    description: Time interval for max-gc-pause in milliseconds
505
506- name: distributed-profiling
507  type: bool
508  default: false
509  description: Enable/disable collection of information for distributed profiling
510
511- name: aot-file
512  type: std::string
513  default: ""
514  description: path to aot file
515
516- name: aot-files
517  type: arg_list_t
518  default: []
519  description: List of aot files to be loaded
520  delimiter: ':'
521
522- name: aot-verify-abs-path
523  type: bool
524  default: true
525  description: Use absolute path to panda files in Aot verification
526
527- name: adaptive-tlab-size
528  type: bool
529  default: true
530  description: Enable/disable adaptive TLAB size according to runtime allocation statistics
531
532- name: init-tlab-size
533  type: uint64_t
534  default: 4096
535  description: Initial TLAB size and maximum size of object to be allocated in TLAB. TLAB size remains constant unless adaptive-tlab-size is enabled. Also, this value is used for YoungAllocMaxSize
536
537- name: max-tlab-size
538  type: uint64_t
539  default: 16384
540  description: Max TLAB size. Used when adaptive-tlab-size is enabled
541
542- name: use-tlab-for-allocations
543  type: bool
544  default: true
545  description: Enable/disable TLAB using for object allocations. Now, it is ignored for all GCs except GenGC. Temporary option for quick switch between modes.
546
547- name: init-heap-size-limit
548  type: uint64_t
549  default: 536870912
550  description: Initial size of pool used for objects (Xms). If it was not set explicitly then it set as heap-size-limit
551
552- name: heap-size-limit
553  type: uint32_t
554  default: 536870912
555  description: Max heap size
556
557- name: internal-memory-size-limit
558  type: uint64_t
559  default: 2147483648
560  description: Max internal memory used by the VM
561
562- name: frames-memory-size-limit
563  type: uint64_t
564  default: 2147483648
565  description: Max internal memory used for frames in the VM
566
567- name: min-heap-free-percentage
568  type: uint32_t
569  default: 30
570  description: Minimum percentage of free space in heap. Must be 0 <= min-heap-free-percentage <= max-heap-free-percentage <= 100
571
572- name: max-heap-free-percentage
573  type: uint32_t
574  default: 70
575  description: Maximum percentage of free space in heap. Must be 0 <= min-heap-free-percentage <= max-heap-free-percentage <= 100
576
577- name: code-cache-size-limit
578  type: uint64_t
579  default: 33554432
580  description: The limit for compiled code size.
581
582- name: compiler-memory-size-limit
583  type: uint64_t
584  default: 268435456
585  description: Max memory used by the compiler
586
587- name: print-memory-statistics
588  type: bool
589  default: false
590  description: Enable/disable printing memory statistics in the end of the program
591
592- name: print-gc-statistics
593  type: bool
594  default: false
595  description: Enable/disable printing gc statistics in the end of the program
596
597- name: no-async-jit
598  type: bool
599  default: false
600  description: Perform compilation in the main thread or in parallel worker
601
602- name: compiler-queue-type
603  type: std::string
604  default: counter-priority
605  possible_values:
606    - simple
607    - counter-priority
608    - aged-counter-priority
609  description: Type of compiler queue
610
611- name: compiler-task-life-span
612  type: uint32_t
613  default: 500
614  description: A time in milliseconds of task life span in compiler counter priority queue
615
616- name: compiler-queue-max-length
617  type: uint32_t
618  default: 100
619  description: Max length of compiler queue
620
621- name: compiler-epoch-duration
622  type: uint32_t
623  default: 500
624  description: Duration in milliseconds of an epoch in compiler aged counter priority queue
625
626- name: compiler-death-counter-value
627  type: uint32_t
628  default: 500
629  description: Minimum value of aged counter, which will be still considered
630
631- name: limit-standard-alloc
632  type: bool
633  default: false
634  description: Limit standard allocations usage in runtime
635
636- name: internal-allocator-type
637  type: std::string
638  default: default
639  possible_values:
640    - panda_allocators
641    - malloc
642    - default
643  description: Default means using malloc for Release, and panda allocators for Debug builds. If we use malloc, we will ignore limit-standard-alloc option.
644
645- name: finalizer-timeout-ms
646  type: uint32_t
647  default: 10000
648  description: Set finalizer daemon watchdog time
649
650- name: properties
651  type: arg_list_t
652  default:
653    - user.locale=en-US
654  description: command-line property settings of VM
655
656- name: events-output
657  type: std::string
658  default: none
659  possible_values:
660    - none
661    - csv
662    - memory
663    - log
664  description: Specify events output
665
666- name: events-file
667  type: std::string
668  default: events.csv
669  description: Path to events output file (if needed)
670
671- name: mem-alloc-dump-exec
672  type: bool
673  default: false
674  description: true if need to dump
675
676- name: mem-alloc-dump-file
677  type: std::string
678  default: mem_dump.csv
679  description: Path to mem dump file (if needed)
680
681- name: startup-time
682  type: bool
683  default: false
684  description: Print the start time of command execution
685
686- name: max-free
687  type: uint32_t
688  default: 8388608
689  description: Trigger native memory recycling watermark, default 8 M
690
691- name: native-gc-trigger-type
692  type: std::string
693  default: simple-strategy
694  possible_values:
695    - no-native-gc-trigger
696    - simple-strategy
697  description: Type of native gc trigger
698
699- name: profiler-enabled
700  type: bool
701  default: true
702  description: whether open the pgo profiler when jit diabled
703
704- name: profilesaver-sleeping-time-ms
705  type: uint32_t
706  default: 2000
707  description: Set wake up period time of daemon thread for profile saver
708
709- name: profilesaver-delta-number-threshold
710  type: uint64_t
711  default: 0
712  description: delta number threshold of newly added method or class for profile saver
713
714- name: profilesaver-enabled
715  type: bool
716  default: false
717  description: whether open the profilesaver functions
718
719- name: start-as-zygote
720  type: bool
721  default: false
722  description: whether current vm is zygote
723
724- name: verification-mode
725  type: std::string
726  default: disabled
727  possible_values:
728    - disabled
729    - on-the-fly
730    - ahead-of-time
731  description: Verification mode.
732
733- name: verification-update-cache
734  type: bool
735  default: true
736  description: Whether to update verification result cache
737
738- name: verification-threads
739  type: uint32_t
740  default: 1
741  description: number of verification threads
742
743- name: verification-config-file
744  type: std::string
745  default: "default"
746  description: filename with debug config for verifier
747
748- name: verification-cache-file
749  type: std::string
750  default: ""
751  description: verifier cache filename
752
753- name: enable-fast-heap-verifier
754  type: bool
755  default: true
756  description: Enable fast heap verifier, which is faster than ordinary heap verifier but uses more internal memory
757
758- name: heap-verifier
759  type: arg_list_t
760  default: []
761  possible_values:
762    - pre
763    - into
764    - post
765    - before_g1_concurrent
766    - fail_on_verification
767  description: parameters for heap verification
768  delimiter: ":"
769
770- name: max-global-ref-size
771  type: uint32_t
772  default: 65535
773  description: max size of global reference storage
774
775- name: global-reference-size-check-enabled
776  type: bool
777  default: false
778  description: whether open the global reference size check
779
780- name: concurrent-gc-enabled
781  type: bool
782  default: true
783  description: whether concurrent GC is enabled
784
785- name: snapshot-serialize-enabled
786  type: bool
787  default: false
788  description: whether snapshot serialize is enabled
789
790- name: snapshot-deserialize-enabled
791  type: bool
792  default: true
793  description: whether snapshot deserialize is enabled
794
795- name: snapshot-file
796  type: std::string
797  default: "/system/etc/snapshot"
798  description: snapshot file
799
800- name: framework-abc-file
801  type: std::string
802  default: "strip.native.min.abc"
803  description: snapshot file
804
805- name: boot-an-location
806  type: std::string
807  default: "/data/service/el1/public/for-all-app/framework_ark_cache"
808  description: default path to .an files for boot panda files, try to load ARK .an file from this dir if not empty when enable-an
809
810- name: enable-an
811  description: Try to load ARK .an file for boot panda files from boot-an-location or base on abc file location
812  sub_options:
813  - name: force
814    type: bool
815    default: false
816    description: Crash if there is no .an file for both location based on .abc file and boot-an-location
817
818- name: verify-call-stack
819  type: bool
820  default: false
821  description: Verify call stack before using of the StackWalker
822
823- name: safepoint-backtrace
824  type: bool
825  default: false
826  description: Print backtrace each time a thread gets suspended
827
828- name: aot-string-gc-roots-limit
829  type: uint64_t
830  default: 1000
831  description: Maximum amount of AOT string PLT-slots registered as GC roots
832
833- name: resolve-string-aot-threshold
834  type: uint32_t
835  default: 1
836  description: Minimum amount of ResolveStringAot calls before storing string pointer into PLT-slot
837
838- name: icu-data-path
839  type: std::string
840  default: "default"
841  description: Path to generated icu data file
842
843- name: ark-aot
844  type: bool
845  default: false
846  description: check if runtime start by ark_aot
847
848- name: intrinsics-blacklist
849  type: arg_list_t
850  default: []
851  description: List of methods for which intrinsics should not be linked
852  delimiter: ","
853
854- name: verify-entrypoints
855  type: bool
856  default: false
857  description: Verify compiler entrypoints
858
859- name: ignore-daemon-memory-leaks-threshold
860  type: uint32_t
861  default: 0
862  description: Ignore daemon memory leaks during runtime destruction with the specified threshold
863
864- name: interpreter-type
865  type: std::string
866  default: llvm
867  possible_values: [cpp, irtoc, llvm]
868  description: Interpreter implementation type
869
870- name: abc-layout-profile-location
871  type: std::string
872  default: "/data/profile/"
873  description: Specify the location of abc layout profile
874
875- name: intrusive-test
876  type: uint32_t
877  default: 0
878  description: Numerical identifier of an intrusive test
879
880- name: profile-output
881  type: std::string
882  default: "profile.bin"
883  description: Specify the location the collected profile information
884
885- name: call-profiling-table-size
886  type: uint32_t
887  default: 1000
888  description: Size of call profiling table size
889
890- name: coroutine-stack-size-pages
891  type: uint32_t
892  default: 64
893  description: defines stack size for stackful coroutines (in number of pages)
894
895- name: coroutines-stack-mem-limit
896  type: uint64_t
897  default: 268435456
898  description: defines the total amount of memory that can be used for stackful coroutine stacks allocation (in bytes)
899
900- name: use-coroutine-pool
901  type: bool
902  default: false
903  description: caches coroutine and coroutine context instances in a pool to speedup creation/destruction
904
905- name: workers-type
906  type: std::string
907  default: taskmanager
908  possible_values:
909  - threadpool
910  - taskmanager
911  description: Set type of additional VM workers. VM uses these workers to speed up internal algorithms (JIT, GC, etc.)
912
913- name: taskmanager-workers-count
914  type: uint32_t
915  # default value depends on a specific device model
916  default_target_specific:
917    HL1CMSM: 3 # mate 60 pro
918    ohos: 2 # devboard
919    HN1NOAHM: 4 # mate 40 pro
920    default: 4
921  description: Number of worker threads for the taskmanager. Option is used only for --worker-type=taskmanager
922
923- name: task-stats-type
924  type: std::string
925  default: no-task-stats
926  possible_values:
927  - no-task-stats
928  - light-task-stats
929  description: Set type of task stats that will collect task manager metrics, if use set `no-task-stats` there will be no stats collection
930
931- name: load-in-boot
932  type: bool
933  default: false
934  description: Load entrypoint panda file in boot-panda-files
935
936- name: use-string-caches
937  type: bool
938  default: true
939  description: Whether to create cache for strings created from integer/floating point numbers.
940