我刚刚在Pandaboard ES(OMAP4460,ARM Cortex A9和1.2 GHz)上进行了一些测量,以检查cpu频率变化需要多长时间。我正在运行带有3.0.8内核的Android 4.0.3。我修改了omap_cpufreq_scale()
中的omap2plus-cpufreq.c
功能,以在功能的入口和出口处切换GPIO引脚,并使用示波器测量时间。
测量的切换时间在3.9ms
和4.5ms
之间变化,而
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_transition_latency
报告300000ns
,即0.3 ms
。有谁知道为什么会有这么大的差异?如何确定transition_latencies?
我在数据表中找不到任何时间值。
更新
我在修改后的内核模块中发现了一个小错误。测量的执行时间在268µs
和1210µs
的范围内,具体取决于原始频率和所选频率。