2016-09-06 51 views
2

我們已經啓用了使用大頁面我們JBoss的系統上使用這些命令:Java的大頁面並詳細GC頭

-XX:+UseLargePages 
-XX:LargePageSizeInBytes=2m 

我們已經分配在操作系統級頁面和JBoss的使用頁面提供的權限。除了顯示4k頁面大小的詳細GC日誌頭之外,一切看起來都不錯。

Memory: **4k page**, physical 12802068k(7370652k free), swap 4194296k(4194296k free) 

我希望此行改爲「2米頁」作爲JAVA_OPTS,並在操作系統級別上定義,以配合我們的大頁面大小,但也許Java堆不「看」大頁面或也許GC日誌頭對這些改變不敏感(例如,這個輸出檢查系統的頁面大小,不一定是Java使用的頁面,在這種情況下,大頁面2m(希望))。

有誰知道我是否應該期待這個標題改變使用大頁面?

+0

輸出爲[這](http://stackoverflow.com/questions/8117476/how-to-enable-large-page- memory-for-the-jvm)相關? – Kayaman

+0

'grep -i pagesize/proc/meminfo'返回什麼? – vsminkov

+0

@vsminkov'Hugepagesize:2048 kB' –

回答

1

GC日誌與大頁面無關並且打印正常大小的頁面大小os::vm_page_size()等於getconf PAGE_SIZE4kB對於x86)。

爲了確認一切正常,你可以檢查

java -XX:+UseLargePages \ 
    -XX:LargePageSizeInBytes=2m \ 
    -XX:+PrintFlagsFinal -version \ 
    | grep LargePage 
+0

這與我們所看到的一致,儘管我沒有檢查JVM代碼來確認。我們還發現'numastat'給了我們一些JBoss保留和使用大量頁面的信心。 –