Uso do processamento

Número de jobs

O processamento computacional em HPCs como o Marvin é realizado através da submissão de jobs. Nesses jobs, o usuário descreve os recursos computacionais que ele deseja utilizar - a quantidade de CPUs, GPUs e memória RAM - e os scripts e programas que serão executados. Assim, ao observarmos o número de jobs submetidos (Figura 1), podemos estimar como os usuários tem utilizado os recursos computacionais disponíveis.

Observando a Figura 1 é possível notar que a demanda por jobs não foi uniforme ao longo do ano, mas apresentou picos em alguns meses. O número total de jobs executados foi de 31978. Isso indica uma média de 2664 por mês, o que representa um aumento de ~240% em relação ao ano de 2023 (ver 2023 - processamento).

Figura 1: Número de jobs submetidos por mês no período analisado. A linha vermelha mostra a média de 2265 jobs/mês.

Os jobs exibidos na Figura 1 são submetidos para diferentes partições do SLURM. Os que utilizam processamento em GPU são submetidos para as partições *-gpu-* 1 e os que utilizam apenas processamento em CPU para as partições *-cpu-*. Os jobs submetidos para as partições gui-*-* são sessões gráficas (VNC, Jupyter ou RStudio) inicializadas através do OpenOnDemand.

Na Figura 2 observamos essa distribuição de jobs por diferentes partições. A maior demanda foi para a partição short-cpu. A segunda maior demanda foi para a partição short-gpu-small e em terceiro para a short-gpu-big.

As partições “gui”, inicializadas através do OpenOnDemand, atenderam 67 jobs.

Figura 2: Número de jobs por servidor (GPU ou CPU) e em cada partição.

Tempo de execução dos jobs

Na figura 3 podemos observar o tempo acumulado de processamento de cada uma das partições. Esse tempo corresponde a soma do tempo de execução dos jobs. Juntamente com os dados acima, isso nos permite ter uma visão da utilização do HPC e das partições mais utilizadas.

Figura 3: Tempo acumulado de execução de jobs por partição.

Na figura Figura 4 podemos observar a distribuição do tempo de execução dos jobs.

Aproximadamente 50% dos jobs foram executados em menos de 1 hora e 34% em menos de 30 minutos. Apenas 5% demoraram mais que 6 horas para serem executados

Figura 4: Distribuição do tempo de execução dos jobs.

Tempo de jobs na fila de espera

Quando um usuário submete um job para ser processado em uma partição do SLURM, o job entra na fila de execução. Caso outros jobs estejam sendo executados e consumindo os recursos disponíveis, como CPUs, GPUs e memória, o job permanecerá na fila aguardando que outros jobs sejam concluídos e, consequentemente, que os recursos necessários para sua execução sejam liberados.

Por isso, o tempo que os jobs permanecem na fila de espera indicam a competição dos usuários por recursos e nos dão uma ideia de quão suficiente são os recursos atuais para atender a demanda.

O tempo médio de espera de um job na fila foi de 6.5 horas. Aproximadamente 23% dos jobs esperaram menos de 1 minuto para iniciar a execução.

Figura 5: Tempo de espera dos jobs até o início da execução e tempo de espera para jobs submetidos as filas “gui”.

Usuários de processamento

Nem todos os usuários que acessam o Marvin utilizam os recursos de processamento. Alguns utilizam apenas para armazenamento e compartilhamento de dados científicos. Em 2024, 30 usuários submeteram jobs.


  1. Asterisco (*) é comumente utilizado para representar “qualquer valor”. Possivelmente a origem sejam as expressões regulares. Ver: regular expression/pattern matching.↩︎