Я пытаюсь запустить простую программу malloc, чтобы проверить, правильно ли настроена моя среда огромной страницы. libhugetlbfs устанавливается только в системный каталог по умолчанию / usr / local. ОС - RHEL 6.7. Я проверил, что libhugetlbfs.so находится в папке / usr / lib64. Когда я запускаю код с помощью
HUGETLB_MORECORE = yes LD_PRELOAD = libhugetlbfs.so
код
#include<stdio.h>
#include<stdlib.h>
int main()
{
double *x;
int y,i;
y = 15000000;
x = (double *)malloc(y*sizeof(double));
if (x != NULL)
{
printf("\nmalloc successful\n");
}
else
{
printf("malloc unsuccesfull");
}
}
вывод дает
**ERROR: ld.so: object 'libhugetlbfs.so' from LD_PRELOAD cannot be preloaded: ignored.**
malloc successful
ясно, что malloc dint происходит с использованием огромной страницы. Я проверил все переменные среды .. не смог найти проблему .. какие-либо предложения ???