On 2011年12月27日 16:31, Easley wrote:
>
> Yes, I mount it. And use Eric's method to get debug message.
> Add HUGETLB_DEBUG=yes HUGETLB_VERBOSE=99 to command line.
> The debug message is following. I don't know why the hugetlb
> not worked.
>
> A machine (rhel5.4)
> -------------------
> [root@A ~]# HUGETLB_DEBUG=yes HUGETLB_VERBOSE=99 
> HUGETLBFS_MORECORE=yes LD_PRELOAD=libhugetlbfs.so ./a.out

I think HUGETLBFS_MORECORE should be HUGETLB_MORECORE.



> libhugetlbfs [first.dev.com:15824]: HUGETLB_SHARE=0, sharing disabled
>  libhugetlbfs [first.dev.com:15824]: Couldn't locate  
> __executable_start, not attempting to remap segments
>
>
>  B machine (rhel6.0)
>  --------------------
>  [root@B ~]#  HUGETLB_DEBUG=yes HUGETLB_VERBOSE=99  
> HUGETLBFS_MORECORE=yes LD_PRELOAD=libhugetlbfs.so ./a.out
>  libhugetlbfs [nehalem.rhel6:4660]: INFO: Detected page sizes:
>  libhugetlbfs [nehalem.rhel6:4660]: INFO:    Size: 2048 kB (default)  
> Mount: /hugetlb
>  libhugetlbfs [nehalem.rhel6:4660]: INFO: Parsed kernel version: [2] 
> .  [6] . [32]
>  libhugetlbfs [nehalem.rhel6:4660]: INFO: Feature 
> private_reservations  is present in this kernel
>  libhugetlbfs [nehalem.rhel6:4660]: INFO: Kernel has MAP_PRIVATE  
> reservations.  Disabling heap prefaulting.
>  libhugetlbfs [nehalem.rhel6:4660]: INFO: HUGETLB_SHARE=0, sharing 
> disabled
>  libhugetlbfs [nehalem.rhel6:4660]: INFO: No segments were 
> appropriate  for remapping
>
>  The HugePages_Free equal to HugePages_Total. It looks like that 
> hugetlb doesn't work, but it did work before.
>
> Any help will be appreciated.
>
> --Easley
> ------------------ Original ------------------
> *From: * "bill4carson"<bill4car...@gmail.com>;
> *Date: * Tue, Dec 27, 2011 12:37 PM
> *To: * "Easley"<ugi...@gmail.com>;
> *Cc: * "Eric B Munson"<emun...@mgebm.net>; 
> "libhugetlbfs-devel"<libhugetlbfs-devel@lists.sourceforge.net>;
> *Subject: * Re: [Libhugetlbfs-devel] The Hugetlb looks like doesn't 
> take effect.
>
>
> On 2011年12月27日 10:59, Easley wrote:
> >
> > Now, I'm puzzled.
> >
> > I changed '#define ELEMENTS 1024*1024*64' to '#define ELEMENTS
> > 1024*1024*20',
> > and it looks like not work again. And the program run a short time.
> >
> > [root@ ~]# echo 1000 > /proc/sys/vm/nr_hugepages
> > HugePages_Total:   433
> > HugePages_Free:    433
> > HugePages_Rsvd:      0
> > Hugepagesize:     2048 kB
> >
> > I didn't mount the hugetlb to a filesystem, in order to get some debug
> > msg.
>
> mount hugetlbfs is a MUST
>
> > And thanks
> > for Eric's help.
> >
> > I don't know how to check hugetlbfs's version. I run 'locate hugetlb',
> > and it output:
> >
> > A machine (rhel5.4)
> > --------------------
> > ......
> > /usr/lib/libhugetlbfs.so
> > /usr/lib64/libhugetlbfs.so
> > /usr/share/doc/libhugetlbfs-1.3
> > /usr/share/doc/libhugetlbfs-1.3/HOWTO
> > /usr/share/doc/libhugetlbfs-1.3/LGPL-2.1
> > /usr/share/doc/libhugetlbfs-1.3/NEWS
> > /usr/share/doc/libhugetlbfs-1.3/README
> > ......
> >
> > B machine (rhel6.0)
> > --------------------
> > ......
> > /usr/lib64/libhugetlbfs.so
> > /usr/share/libhugetlbfs
> > /usr/share/doc/libhugetlbfs-2.8
> > /usr/share/doc/libhugetlbfs-2.8/HOWTO
> > /usr/share/doc/libhugetlbfs-2.8/LGPL-2.1
> > /usr/share/doc/libhugetlbfs-2.8/NEWS
> > /usr/share/doc/libhugetlbfs-2.8/README
> > ......
> >
> > A machine (rhel5.4)
> > -------------------
> > [root@A ~]# HUGETLB_DEBUG=yes HUGETLB_VERBOSE=99
> > HUGETLBFS_MORECORE=yes LD_PRELOAD=libhugetlbfs.so ./a.out
> > libhugetlbfs [first.dev.com:15824]: HUGETLB_SHARE=0, sharing disabled
> > libhugetlbfs [first.dev.com:15824]: Couldn't locate
> > __executable_start, not attempting to remap segments
> >
> >
> > B machine (rhel6.0)
> > --------------------
> > [root@B ~]#  HUGETLB_DEBUG=yes HUGETLB_VERBOSE=99
> > HUGETLBFS_MORECORE=yes LD_PRELOAD=libhugetlbfs.so ./a.out
> > libhugetlbfs [nehalem.rhel6:4660]: INFO: Detected page sizes:
> > libhugetlbfs [nehalem.rhel6:4660]: INFO:    Size: 2048 kB (default)
> > Mount: /hugetlb
> > libhugetlbfs [nehalem.rhel6:4660]: INFO: Parsed kernel version: [2] .
> > [6] . [32]
> > libhugetlbfs [nehalem.rhel6:4660]: INFO: Feature private_reservations
> > is present in this kernel
> > libhugetlbfs [nehalem.rhel6:4660]: INFO: Kernel has MAP_PRIVATE
> > reservations.  Disabling heap prefaulting.
> > libhugetlbfs [nehalem.rhel6:4660]: INFO: HUGETLB_SHARE=0, sharing 
> disabled
> > libhugetlbfs [nehalem.rhel6:4660]: INFO: No segments were appropriate
> > for remapping
> >
> > It looks like that hugetlb doesn't work, but it did work before.
> > Any help will be appreciated.
> >
> > --Easley
> > ------------------ Original ------------------
> > *From: * "bill4carson"<bill4car...@gmail.com>;
> > *Date: * Mon, Dec 26, 2011 11:12 AM
> > *To: * "Easley"<ugi...@gmail.com>;
> > *Cc: * "libhugetlbfs-devel"<libhugetlbfs-devel@lists.sourceforge.net>;
> > *Subject: * Re: [Libhugetlbfs-devel] The Hugetlb looks like doesn't
> > take effect.
> >
> >
> > On 2011年12月23日 20:29, Easley wrote:
> > >
> > > I changed #define ELEMENTS 1024*1024*64 to #define ELEMENTS
> > 1024*1024*20,
> > > and it takes effect. Thank you.
> > > -------
> > > And there is another question. It's on another machine
> > > I take the following steps:
> > > --------------
> > >  [root@ ~]# echo 1000 > /proc/sys/vm/nr_hugepages
> > what's the output of cat /proc/meminfo | grep Huge ?
> >
> >
> > >  [root@ ~]# mkdir /hugetlb
> > >  [root@ ~]# HUGETLB_MORECORE=yes LD_PRELOAD=libhugetlbfs.so ./a.out
> > > ---------------
> > > There's should be output some error message,
> >   why is that ?and what's you point?
> >
> >
> > >  but it output nothing.
> > > (I do this in order to check whether hugepage take effect.)
> > > I think there's some wrong hugetlbfs setting, and I don't know why.
> > > My machine total memory is 24GB, and hugepages is 434 pages.
> > > Any help will appreciated.
> > >
> > > --Easley
> > >
> > > ------------------ Original ------------------
> > > *From: * "bill4carson"<bill4car...@gmail.com>;
> > > *Date: * Fri, Dec 23, 2011 11:12 AM
> > > *To: * "Easley"<ugi...@gmail.com>;
> > > *Cc: * "libhugetlbfs-devel"<libhugetlbfs-devel@lists.sourceforge.net>;
> > > *Subject: * Re: [Libhugetlbfs-devel] The Hugetlb looks like doesn't
> > > take effect.
> > >
> > >
> > > On 2011年12月23日 10:37, Easley wrote:
> > > >
> > > > Hi,
> > > >
> > > >  I run my program by follow:
> > > > ---------------------------------
> > > > [root@ ~]# echo 200 > /proc/sys/vm/nr_hugepages
> > > > [root@ ~]# mkdir /hugetlb
> > > > [root@ ~]# mount -t hugetlbfs hugetlbfs /hugetlb
> > > > [root@ ~]# HUGETLB_MORECORE=yes LD_PRELOAD=libhugetlbfs.so ./a.out
> > > > [root@ ~]# grep Huge /proc/meminfo
> > > > HugePages_Total:   200
> > > > HugePages_Free:    200
> > > > HugePages_Rsvd:      0
> > > > Hugepagesize:     2048 kB
> > > > ------------------------------------------------
> > >
> > > So you have 400M bytes memory based on huge page.
> > >
> > >
> > > > And some machines output the follow msg.
> > > > -----------
> > > > libhugetlbfs: WARNING: New heap segment map at 0x40a00000 failed:
> > > > Cannot allocate memory
> > > > libhugetlbfs: WARNING: New heap segment map at 0x40a00000 failed:
> > > > Cannot allocate memory
> > > > ------------
> > > > How can I do that?
> > > > Any help will be appreciated.
> > > >
> > > > --Easley
> > > >
> > > >
> > > >
> > > > My program code (The code is not belong to me.)
> > > > ----------------------
> > > > #include <stdio.h>
> > > > #include <stdlib.h>
> > > >
> > > > #define ELEMENTS 1024*1024*64
> > > > static double  bss_array_from[ELEMENTS];
> > > > static double  bss_array_to[ELEMENTS];
> > > > static double *malloc_array_from;
> > > > static double *malloc_array_to;
> > > >
> > > > int   main()   {
> > > >     int   i;
> > > >     malloc_array_from = (double *)malloc(ELEMENTS*sizeof(double));
> > > >     malloc_array_to   = (double *)malloc(ELEMENTS*sizeof(double));
> > > >
> > > I think you allocate much bigger than you set before.
> > > Take a smaller size first, and try again.
> > > good luck :)
> > >
> > > >     /* initialize and touch all of the pages */
> > > >     for (i = 1; i < ELEMENTS; i++) {
> > > >        bss_array_to[i]      = 1.0;
> > > >        bss_array_from[i]    = 2.0;
> > > >        malloc_array_to[i]   = 3.0;
> > > >        malloc_array_from[i] = 4.0;
> > > >     }
> > > >
> > > >     /* copy "from" "to" */
> > > >     for (i = 1; i < ELEMENTS; i++) {
> > > >        bss_array_to[i]    = bss_array_from[i];
> > > >        malloc_array_to[i] = malloc_array_from[i];
> > > >     }
> > > >     return 0;
> > > > }
> > > > ---------------------------------
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > 
> ------------------------------------------------------------------------------
> > > > Write once. Port to many.
> > > > Get the SDK and tools to simplify cross-platform app development.
> > Create
> > > > new or port existing apps to sell to consumers worldwide. 
> Explore the
> > > > Intel AppUpSM program developer opportunity.
> > appdeveloper.intel.com/join
> > > > http://p.sf.net/sfu/intel-appdev
> > > >
> > > >
> > > > _______________________________________________
> > > > Libhugetlbfs-devel mailing list
> > > > Libhugetlbfs-devel@lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/libhugetlbfs-devel
> > >
> > > --
> > > I am a slow learner
> > > but I will keep trying to fight for my dreams!
> > >
> > > --bill
> > >
> >
> > --
> > I am a slow learner
> > but I will keep trying to fight for my dreams!
> >
> > --bill
> >
>
> -- 
> I am a slow learner
> but I will keep trying to fight for my dreams!
>
> --bill
>

-- 
I am a slow learner
but I will keep trying to fight for my dreams!

--bill


------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create 
new or port existing apps to sell to consumers worldwide. Explore the 
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
Libhugetlbfs-devel mailing list
Libhugetlbfs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libhugetlbfs-devel

Reply via email to