交換性能測試

交換性能測試

我理解 的一般概念swap memory,但我需要以某種方式建立一個程式來強制使用swap memory進行效能測試,但我不知道從哪裡開始。

基本上,我將安裝一個flash memory card將用作 的swap space,我想測試這樣做如何提高效能。我認為最簡單的方法是製作一個簡單的程序,使用多個執行緒來測試它處理同時運行的多個進程的能力。問題是,我只是不太了解swap(或從我所讀到的內容中收集到足夠的見解),不知道如何“強制”這些線程使用swap space.

有人對我如何解決這個問題有一些可靠的建議嗎?我很64-bit linux OS可能會在Fedora 18.

答案1

我不知道這是否是更好的方式來歸檔你想做的事情,但我使用了這樣的 C 程式碼

#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

並以這種方式多次運行 ./mhog

./mhog &

當您的伺服器或電腦出現記憶體不足的情況時,您將看到開始使用

相關內容