Ich verstehe das allgemeine Konzept von swap memory
, aber ich muss irgendwie ein Programm erstellen, das die Verwendung von swap memory
für Leistungstests erzwingt, und ich weiß nicht einmal, wo ich anfangen soll.
Im Grunde werde ich einen installieren, flash memory card
der als verwendet wird swap space
, und ich möchte testen, wie sich die Leistung dadurch verbessert. Ich dachte, es wäre am einfachsten, ein einfaches Programm zu erstellen, das mehrere Threads verwendet, um zu testen, wie gut es mit mehreren gleichzeitig laufenden Prozessen zurechtkommt. Das Problem ist, dass ich einfach nicht genug darüber weiß swap
(oder nicht genug Erkenntnisse aus dem, was ich gelesen habe), um zu wissen, wie ich diese Threads „zwingen“ kann, zu verwenden swap space
.
Hat jemand ein paar gute Vorschläge, wie ich das angehen kann? Ich würde das 64-bit linux OS
höchstwahrscheinlich auf einem ausführen Fedora 18
.
Antwort1
Ich weiß nicht, ob dies der bessere Weg ist, um zu archivieren, was Sie tun möchten, aber ich habe einen C-Code wie diesen verwendet
#include <stdio.h>
#include <stdlib.h>
#define MB(size) ( (size) * 1024 * 1024 )
int main(){
char *p;
if((p = (char *)malloc(MB(256))) != NULL){
memset(p, "A", MB(256));
sleep(300);
}
}
gcc -o mhog mhog.c
echo 1 > /proc/sys/vm/overcommit_memory
und führen Sie ./mhog auf diese Weise mehrmals aus
./mhog &
Wenn Ihr Server oder Computer nicht genügend Arbeitsspeicher hat, sehen Sie den Beginn der verwendeten