DMIPS (Dhrystone MIPS) in AosEdge
Introduction
AosCore could be running on various types of hardware. Different architectures, number of CPU cores, and clock speed result in different raw performance. In general, application CPU usage is measured in percentages of CPU time on the current hardware. This introduces a problem when it is hard to predict how many resources your application needs to run on different hardware. Which solution could we use?
What is DMIPS
The core performance parameter of each processor is MIPS (million instructions per second). However, a different CPU instruction set leads to different performance per clock. For example, the same high-level task may require many more instructions on a RISC machine, but might execute faster than a single CISC instruction. Here shines Dhrystone benchmark. Dhrystone is a standardized speed test with a specific workload mix. Dhrystone may represent a result more meaningfully than MIPS because instruction count comparisons between different instruction sets (e. g. RISC vs. CISC) can confound simple comparisons. Thus, the Dhrystone score counts only the number of program iteration completions per second, allowing individual machines to perform this calculation in a machine-specific way. The result of Drystone benchmark represents DMIPS.
DMIPS in AosEdge
Each AosCore-powered Unit could report its own CPU information and maximum available DMIPS. Also, it is sending monitoring information with the currently used CPU in DMIPS.
Services on AosCloud support CPU quotas in DMIPS.
How to know DMIPS of AosCore-powered Node
After the Unit has been provisioned and gone online, it will send self-info to the AosCloud. You will be able to see CPU info and maximum DMIPS on the Unit Details page on the nodes tab:
How to setup CPU DMIPS limit for service
To limit CPU usage of the service, refer to the Service Quotas docs