1 Reply Latest reply on Aug 15, 2017 1:12 AM by alexsh

    Embedded G-T16R high CPU temperature and lack of power management capabilities

    ybubnov

      Dear AMD Processors forum attenders, 

       

      I’m working with Advantech's PCA-6763 ISA Half-size SBC with AMD G-T16R (615 MHz), QNX 4.25 operating system, AMI 4.6.5.1 BIOS (UEFI 2.3, PI 1.2 compliance). It’s a Family 14h Model, Bobcat architecture.

       

      I’ve found a high CPU temperature and lack of power management capabilities, which is abnormal for the embedded applications.


      Here is what i’ve already done:

      1) Ran the AMI Setup Utility: Advanced → H/W Monitor → CPU temperature = +80OC (after 1 hour working). Setup Utility provide only PState0 adjustment of the _PPC object. The direct measurement if the CPU radiator temperature shows +60OC.

      2) Studied Advantech’s reliability test reports: #14S025A0, #16E004A0. They did dry heat test at 65 OC temperature with Passmark Burn-in V7.0 test. Although they didn’t find any performance degradation, I have a doubts, because they didn’t analyze the CPU and GPU temperature during the test (or I don’t have such graphics).

      3) Ran the QNX 4.25.

      3a) Made a temperature and voltage monitoring utility (reading D18F3xA4 CPU register and communication with on-board super I/O chip NCT6776D).

      I’m interpreting the CurTemp field of the D18F3xA4 register simply: absolute temperature of the CPU is CurTemp*0.125. This approach gives me a figures equal shown by Setup utility. Although the BKDG says: “Tctl is a temperature on its own scale aligned to the processors cooling requirements. Therefore Tctl does not represent a temperature which could be measured on the die or the case of the processor. Instead, it specifies the processor temperature relative to the maximum operating temperature, Tctl_max.”

      3b) Tried to change P-state following the instructions of the AMD64 Architecture Programmer’s Manual Volume 2: System Programming, Chapter 17 Hardware Performance Monitoring and Control:

      a) MSR (0xC001006B) <- 0x8000026300005c32 (~450 MHz at P-state 7).

      b) MSR (0xC0010062) <- 0x07 (command to change P-state)

      c) MSR (0xC0010063) -> 0x0 (nothing happens)

      And I can’t change the MSR (0xC0010061) PstateMaxVal field – it is only for reading and it’s reset value is product-specific and set in 0x000.

      3c) Ran my own idle process with the endless loop at the priority 1 with FIFO dispatching. The system idle process can not get the CPU time, so there is no ability to call HLT instruction. The CPU temperature raised from 80 to 83,5 OC in 10 minutes.   

      My
      assumptions:

      1) There is only P-state0 available.
      2) The CPU frequency can not be changed.
      3) The operating system in idle process calls the HLT instruction, but there is no sufficient effect on the CPU temperature. 

      Please confirm my assumptions.

      Please advise, how could I reduce the CPU temperature of the G-T16R. 

      Best regards,

      Yuri
        • Re: Embedded G-T16R high CPU temperature and lack of power management capabilities
          alexsh

          Hi All,

           

          I've got basically the same thing with Advantech PCM 9376 board  and Linux 4.9+.

          The CPU is

          processor  : 0
          vendor_id  : AuthenticAMD
          cpu family : 20
          model      : 2
          model name : AMD G-T16R Processor
          stepping   : 0
          microcode  : 0x500010d
          cpu MHz    : 615.426

           

          The CPU heats up to 70..75C ( according to the BIOS and the Linux hwmon readings)  even  when doing nothing .

          The BIOS allows creation of the _PPC, _PSS and _PCT ACPI sections - there is a special option for that -  but this just does not work - there are no such sections in the ACPI , so Linux is unable to use the cpu frequency control services.

           

          Interesting enough, the AMD product brief  https://www.amd.com/Documents/49282_G-Series_platform_brief.pdf   says  nothing about any power-saving technology used. So it is quite likely that the CPU just has no support for any fine-grained power management.

           

          Regards,

          Alex