Você provavelmente poderia usar stress
:
stress: tool to impose load on and stress test systems
Se você quer estressar a memória, pode usar:
stress --vm 2 --vm-bytes 512M --timeout 10s
para usar 2 vm usando os 512MB de ram por 10 segundos.
Se você quiser enfatizar o uso da CPU:
stress --cpu ## -t 10s
com ## igual ao seu número de núcleos para simular um uso de 100% em todos os núcleos ao mesmo tempo por 10 segundos.
e se você quiser simular IO use a opção:
stress --io 4 -t 10s
Ele adicionará um thread que faz a chamada de sincronização em seu disco, mas você também pode gravar em seu disco com esta opção:
stress --hdd 4 --hdd-bytes 256M
Isto criaria 4 threads escrevendo cada 256 MB de dados para o seu disco, isto poderia, é claro, ajustado para simular uma grande quantidade de pequenos arquivos ou escrever arquivos.
Isso vai precisar de alguma forma de adaptação se você quiser enfatizar uma coisa, uma a uma, ou todas juntas, ou por mais tempo, assim:
stress --hdd 4 --hdd-bytes 256M --io 4 --cpu ## --vm 2 --vm-bytes 512M -t 60s
Quanto à GPU, você pode usar glmark2
, que deve estar disponível no Ubuntu. É um benchmark básico de GPU que você pode rodar para sempre para simular um gpuload:
glmark2 --run-forever