yes, max freq is cached(in legacy variable cpu_hz, maybe renaming it to
cpu_hz_mx is better), and current freq isn't.


On Tuesday, 29 December 2015, Maxim Uvarov <[email protected]> wrote:

> On 12/29/2015 16:43, Savolainen, Petri (Nokia - FI/Espoo) wrote:
>
>> There are also those max freq API calls. Maybe it's just for diagnostics
>> or logging purposes, but it's valuable information if the system you are
>> running on is setup for maximum frequency, or if it's scaling the frequency.
>>
>> These are exactly the figures I'd want to see (sampled) in my log.
>>
>> -Petri
>>
> Ok, that case in implementation that calls should parse files each time.
> Not cache them in sysinfo struct.
>
> Maxim.
>
>
>> -----Original Message-----
>>> From: lng-odp [mailto:[email protected]] On Behalf Of EXT
>>> Maxim Uvarov
>>> Sent: Tuesday, December 29, 2015 3:13 PM
>>> To: [email protected]
>>> Subject: Re: [lng-odp] [PATCH v3 API-NEXT 00/11] Separate CPU info codes
>>> into their platform files
>>>
>>> so what is  summary for that api?
>>>
>>> odp_cpu_hz_current()
>>> odp_cpu_hz()
>>>
>>> very unstable on platforms like my x86 laptop. Example:
>>>
>>> cat /proc/cpuinfo  |grep "cpu MHz"
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 2501.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>>
>>> cat /proc/cpuinfo  |grep "cpu MHz"
>>> cpu MHz        : 2501.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 800.000
>>> cpu MHz        : 1500.000
>>>
>>> And each time there are different values. On busy loop it can go to top
>>> 3Ghz speed and later
>>> lower frequency due to overheating.
>>>
>>> As I understand from current patches is api call just parses cpuinfo.
>>> That might be not enough
>>> due to it's not clear how to use that values.
>>>
>>> Maxim.
>>>
>>>
>>> On 12/29/2015 13:31, [email protected] wrote:
>>>
>>>> From: Hongbo Zhang <[email protected]>
>>>>
>>>> v2->v3 changes:
>>>> use "api: cpu:" tag in patch 8/11 title instead of "linux-generic:
>>>>
>>> sysinfo"
>>>
>>>> v1->v2 changes:
>>>>    - don't create arch/arm/ since there isn't implementation now, use
>>>>
>>> arch/linux
>>>
>>>> as default choice
>>>>    - create symlink to arch/linux/odp_cpu_cycles.c for powerpc, if
>>>> absent
>>>>
>>> this
>>>
>>>> arch cannot be compiled
>>>>    - add some clean-ups patches 8~11, these patches are against the
>>>>
>>> previous ones
>>>
>>>> so send them together for better review and merge.
>>>>
>>>> v1 notes:
>>>> This patch set separates the CPU info codes into their own platform
>>>>
>>> sepcific
>>>
>>>> files.
>>>> It is common sence that the top general layer call an uniform interface
>>>>
>>> to
>>>
>>>> initialize some plarform specific data structures, and this uniform
>>>>
>>> interface
>>>
>>>> is implemented in their own platform specific files.
>>>> This patch set makes it.
>>>>
>>>> Hongbo Zhang (11):
>>>>     linux-generic: sysinfo: move cpu_arch_str to odp_system_info_t
>>>>     linux-generic: sysinfo: use uniform call odp_sysinfo_parser
>>>>     linux-generic: sysinfo: rename odp_cpu_hz_current with odp_ prefix
>>>>     linux-generic: sysinfo: move x86 system info codes to its plarform
>>>>       file
>>>>     linux-generic: sysinfo: move MIPS system info codes to its plarform
>>>>       file
>>>>     linux-generic: sysinfo: move ARM system info codes to default arch
>>>>       file
>>>>     linux-generic: sysinfo: move PowerPC system info codes to its
>>>>
>>> plarform
>>>
>>>>       file
>>>>     api: cpu: make frequency API return 0 on failure
>>>>     linux-generic: sysinfo: set values for cpu_arch_str
>>>>     linux-generic: sysinfo: apply per-CPU implementation to MIPS
>>>>     linux-generic: sysinfo: apply per-CPU implementation to PowerPC
>>>>
>>>>    configure.ac                                       |   1 +
>>>>    include/odp/api/cpu.h                              |   4 +
>>>>    platform/linux-generic/Makefile.am                 |  10 +-
>>>>    .../linux-generic/arch/linux/odp_sysinfo_parse.c   |  20 ++
>>>>    .../linux-generic/arch/mips64/odp_sysinfo_parse.c  |  63 ++++++
>>>>    .../linux-generic/arch/powerpc/odp_cpu_cycles.c    |   1 +
>>>>    .../linux-generic/arch/powerpc/odp_sysinfo_parse.c |  63 ++++++
>>>>    .../linux-generic/arch/x86/odp_sysinfo_parse.c     |  72 +++++++
>>>>    platform/linux-generic/include/odp_cpu_internal.h  |   4 +
>>>>    platform/linux-generic/include/odp_internal.h      |   1 +
>>>>    platform/linux-generic/odp_system_info.c           | 217
>>>> +------------
>>>>
>>> --------
>>>
>>>>    11 files changed, 242 insertions(+), 214 deletions(-)
>>>>    create mode 100644 platform/linux-
>>>>
>>> generic/arch/linux/odp_sysinfo_parse.c
>>>
>>>>    create mode 100644 platform/linux-
>>>>
>>> generic/arch/mips64/odp_sysinfo_parse.c
>>>
>>>>    create mode 120000 platform/linux-
>>>>
>>> generic/arch/powerpc/odp_cpu_cycles.c
>>>
>>>>    create mode 100644 platform/linux-
>>>>
>>> generic/arch/powerpc/odp_sysinfo_parse.c
>>>
>>>>    create mode 100644
>>>> platform/linux-generic/arch/x86/odp_sysinfo_parse.c
>>>>
>>>> _______________________________________________
>>> lng-odp mailing list
>>> [email protected]
>>> https://lists.linaro.org/mailman/listinfo/lng-odp
>>>
>>
> _______________________________________________
> lng-odp mailing list
> [email protected]
> https://lists.linaro.org/mailman/listinfo/lng-odp
>
_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to