스왑 성능 테스트 card 로 사용됩니다.

나는 일반적인 개념을 이해한다. swap memory,하지만 어떻게 든 프로그램을 빌드해야합니다. swap memory 성능 테스트를 위해 어디서부터 시작해야할지 모르겠다.

기본적으로, 나는 flash memory card 로 사용됩니다. swap space, 그렇게함으로써 성능이 어떻게 향상되는지 테스트하고 싶습니다. 여러 스레드가 동시에 실행되는 여러 프로세스를 얼마나 잘 처리하는지 테스트하기 위해 여러 스레드를 사용하는 간단한 프로그램을 만드는 것이 가장 쉽다고 생각했습니다. 문제는, 나는 단지에 대해 충분히 알지 못한다. swap (또는 내가 읽은 것에서 충분한 통찰력을 모았습니다) 어떻게이 쓰레드를 사용하도록 강제 할 수 있는지 알고 싶습니다. swap space.

누구나 내가이 문제에 접근 할 수있는 방법에 대해 확실한 제안을 한 적이 있습니까? 나는 이것을 64-bit linux OS, 아마도 Fedora 18.



답변

나는 이것이 당신이하고 싶은 것을 아카이브하는 더 좋은 방법인지는 모르지만, 나는 이와 같은 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 &

서버 또는 컴퓨터의 메모리 부족 상황이 발생하면 사용 시작이 표시됩니다