Essayez de lire des données de grande taille répétitives via la CPU (c'est-à-dire pas par DMA). Comme :
int main() {
const int size = 20*1024*1024; // Allocate 20M. Set much larger then L2
char *c = (char *)malloc(size);
for (int i = 0; i < 0xffff; i++)
for (int j = 0; j < size; j++)
c[j] = i*j;
}
Cependant Dépendant du serveur un plus grand problème peut être un cache de disque (en mémoire), puis de cache L1/L2. Sous Linux (par exemple) déposer à l'aide:
sync
echo 3 > /proc/sys/vm/drop_caches
Edit: Il est trivial de générer un grand programme qui ne fait rien:
#!/usr/bin/ruby
puts "main:"
200000.times { puts " nop" }
puts " xor rax, rax"
puts " ret"
Courir plusieurs fois sous différents noms (code produit pas script) devrait faire le travail
Quelle architecture et système d'exploitation testez-vous? –
Je suppose que faire d'autres choses aléatoires sur le serveur pour un miunute ou alors serait un peu brut? – Dentrasi
Ma question est pourquoi voudriez-vous faire cela? –