Я реализую последовательную программу для сортировки как quicksort. Я хотел бы проверить производительность моей программы в огромном массиве из 1 или 10 миллиардов целых чисел. Но проблема в том, что я получаю ошибку сегментации из-за размера массива.
Пример кода объявления этого массива:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 1000000000
int main(int argc, char **argv)
{
int list[N], i;
srand(time(NULL));
for(i=0; i<N; i++)
list[i] = rand()%1000;
return 0;
}
У меня есть предложение использовать функцию mmap. Но я не знаю, как его использовать? может ли кто-нибудь помочь мне использовать его?
Я работаю над 64-битной версией Ubuntu 10.04, gcc версии 4.4.3.
Спасибо за ваши ответы.