8 Replies Latest reply on Feb 10, 2011 11:05 AM by Yang

    How to turn off cores using sccGui

    Nil

      Hi,

       

      I am looking into power consumption by cores, the question i have is:

      Is there a way to turn certain cores off so that it does not consume power using sccGui ?

       

      Thanks

        • 1. Re: How to turn off cores using sccGui
          tedk

          We don't have a GUI interface into the SCC power management. You could set the voltage of cores in a power domain to zero with a program, however. You can also turn off the clock for a tile (note that this affects both cores).

          • 2. Re: How to turn off cores using sccGui
            Nil

            Hi,

             

            When you say program does that mean RCCE program with calls to power management routines.

             

            can you please explain how to turn off the clock for a tile or point me in to direction of any documentation which explains it.

             

            Thanks

            • 3. Re: How to turn off cores using sccGui
              tedk

              It doesn't have to be RCCE. I just meant not though the GUI.You could also (I just got mail about this today) write the STOPCLK# bit in the core configuration register. Table 7 in the EAS. And you can do this from the Gui. Send Flit via SystemIF, register GLCFG0. I'll get a screenshot and post.

              1 of 1 people found this helpful
              • 4. Re: How to turn off cores using sccGui
                tedk

                Here is a screenshot showing use of the Send Flit via SystemIF.

                1 of 1 people found this helpful
                • 5. Re: How to turn off cores using sccGui
                  Nil

                  Few more question:

                   

                  How long does it takes before changes comes in to effect when "Send Flit via SystemIF" used?

                   

                  when system initialization is just done it uses around 50 watts (when reset is pulled it uses nearly same amount), but when linux is booted on all cores it uses around 32 watts?

                   

                  If you can shed some light on this question that would be grate.

                   

                  Thanks

                  • 6. Re: How to turn off cores using sccGui
                    tedk

                    I don't know how long it takes for changes propagated thorugh the Gui to take effect. It is going though the SIF from the MCPC. It's not at the speed of a program. I'll make a guess and say on the order of a second and see if someone corrects me.

                     

                    Yes, I have seen the power be higher after training than after a Linux boot. Linux may be doing some power management on its own. We're guessing that there may be some clock gating going on when Linux is just booted and quiescent. The power you see just after booting is a good baseline to use. If you run a computational package like Linpack on all cores, you should see this power more than double.

                     

                    The power you see with the status command is for both the cores and the mesh. The power for the mesh should stay essentially contant. It goes up when there is a lot of message passing, but not significantly. You should see an increase in total power mostly coming from core power when you run something heavily computational like Linpack.

                    • 7. Re: How to turn off cores using sccGui
                      tedk

                      About STPCLK ... if you pull the STPCLK signal for all cores through the GUI you should be able to see a lower current of 3V3SCC supply voltage using the status command on the BMC. Just pulling it for one core may not be enough to see a significant change in the current.

                      • 8. Re: How to turn off cores using sccGui
                        Yang

                        Hi, Ted,

                         

                        I am wondering how could we set the voltage of a power domain to zero in our own program?

                        The function RCCE_iset_power() in RCCE library can only lower the voltage to 0.7V, or is there

                        another API can set the voltage to 0V?

                        My second question is when we set the STPCLK bit in the config register for one core, say core0,

                        does stop the clock for only core 0, or it stops the clock for core 0 and core 1 on the same tile?

                        Thank you very much!

                         

                        Yang