I will send another version for update patch 9/11, and I'd like to
take this chance to change the legacy variable cpu_hz to cpu_hz_max
since it contains the max freq for odp_cpu_hz_max().


On 6 January 2016 at 17:18, Hongbo Zhang <[email protected]> wrote:
> odp_cpu_hz_max() returns the cached max freq
> and odp_cpu_hz(), as noted, returns the current freq which may change,
> and this implementation does parse each time
> so there should be no problem of this part.
>
> On 1 January 2016 at 10:26, Hongbo Zhang <[email protected]> wrote:
>> 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