Ubuntu 16.04 - cpufrequtils escalando núcleos sob demanda?

1

Gostaria de perguntar se é possível "dimensionar" o número de núcleos usados em uma base de demanda, pois cpufrequtils faz a frequência.

Da BIOS eu posso configurar o número de núcleos a serem usados, no meu caso eu uso CPUs dual quad Xeon (X5365, E5450 principalmente) e posso optar por usar entre 2 a 4 núcleos por processador.

Quando ocioso, o Ubuntu 16.04 dimensiona a frequência de 3GHz para 2GHz. Por isso eu gostaria de explorar se é possível "escalar" de modo a dizer o número de núcleos usados em uma base de demanda, já que a maioria dos processadores é usada apenas para 0,3%

    
por Fab 04.03.2017 / 07:17

1 resposta

0

Bem, basicamente o sistema já faz isso. CPUs ociosas entram em vários níveis de economia de energia c-states, quanto mais profundo o estado c, mais energia será economizada, mas também maior será o tempo necessário para a transição de volta para a ativa. Os processadores mais recentes podem entrar em um estado tão profundo que podem ser considerados "off-line" em termos de consumo de energia. A estrutura inativa dentro do kernel é muito complicada, pois tenta equilibrar o tempo de resposta com a economia de energia.

Por exemplo: Eu tenho um antigo i7 (4 núcleos, 2 threads por núcleo, 8 CPUs), que só vai para o estado c6. Usando o turbostat, recebo os seguintes poderes de pacote em ocioso (e o computador é um servidor, no qual eu desativei muitos serviços, por isso é bem ocioso):

4 núcleos online: 3,92 watts.
3 núcleos online: 3,91 watts.
2 núcleos online: 3,90 watts.
1 núcleo online: 3,90 watts.

    
por Doug Smythies 04.03.2017 / 08:24