百度首页 | 百度空间
 
查看文章
 
262004.1 Configuring RHEL 3 and Oracle 9iR2 32-bit with Hugetlb and Remap_file_pages
2007-11-23 10:05

Using hugetlb memory
====================

ATTENTION: The hugetlb configuration is absolutely independent from the
           Oracle VLM configuration. See
Note 361323.1 for details.
(hugetlb 的使用与VLM是完全独立的!可以说是两码事,只有性能,无关大小。)


hugetlb memory can be used in RHEL 3 for the portion of SGA that is directly
mapped in the Oracle address space (all of the SGA in the non-VLM case, or everything except for the buffercache in the VLM case).

(hugetlb 可以被使用for直接映射在Oracle地址空间的部分SGA,(在非VLM的案例中,那就是所有的SGA,也就是我们的正常状况;在VLM的案例中,那就是除了buffercache 的那一部分))

上面这段话,终于让我心里的想法得到了证实,解了我的心结。

This can reduce overhead in the Linux kernel.

(使用hugetlb 可以减少kernel的消耗,这也是使用hugetlb 的最终目的吧!而使用ramfs+VLM的案例里面,hugetlb 仅仅对share pool、large pool……这一部分顶多不超过4G的内存有效,真的有很大意义吗?warner的话又到底是在说什么呢?这么说,也不能说317141.1是错的。现在所需要考虑的就是ramfs+VLM的性能。接下来搞清楚VLM状态下shmmax的内存分配。那么shm+vlm为什么失败呢?是因为shm swap了?map就失效了?startup时,oracle的确也在shm里分配了8G,然后crash。)

……………………………………………………………………………………

6. Be sure /proc/sys/kernel/shmmax is set large.
   
        echo 3700000000 >/proc/sys/kernel/shmmax

       You can set shmmax to larger values but on 32-bit Linux it will wrap
       around 4294967296(4GB). Keep in mind that a large setting is not that
       crucial for creating a large SGA. If you set it to 4924967295
       (4GB - 1 byte) and try to have a 10GB SGA, Oracle RDBMS will just
       create multiple shared memory segments to achieve this.

这才是后来几篇note转载的原文吧?怎么转的变了味?说的好详细,前面的blog也提到过,不翻了。


类别:linux & oracle | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码:
 

     

©2008 Baidu