Is it possible, that 32-bit kernel with HIGHMEM is faster?
Hello,
I have PC with 2 Gigs of RAM and I was curious if I can get performance gain disabling CONFIG_HIGHMEM and using CONFIG_VMSPLIT_2G_OPT. I have tested performance by running mplayer with some HD trailers (GPU is old Radeon with OSS drivers - only Xv acceleration). From results I see, that kernel with HIGHMEM is slightly faster. I know, I haven't used much memory only by running mplayer alone, but I have expected, that every access to memory will be slower with HIGHMEM. I don't understand, why is HIGHMEM faster, but almost all articles about CONFIG_VMSPLIT_* and CONFIG_PAGE_OFFSET are from year 2006.
CPU is Intel P4 2.80GHz with disabled HT (kernel has not enabled CONFIG_SMP). Memory is 4x 512 MB dual-channel 400MHz CL3. Used kernel was 3.2.1 with CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS.
Diff of config:
Code:
-# CONFIG_NOHIGHMEM is not set
-CONFIG_HIGHMEM4G=y
+CONFIG_NOHIGHMEM=y
+# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
-CONFIG_PAGE_OFFSET=0xC0000000
-CONFIG_HIGHMEM=y
+# CONFIG_VMSPLIT_3G is not set
+# CONFIG_VMSPLIT_3G_OPT is not set
+# CONFIG_VMSPLIT_2G is not set
+CONFIG_VMSPLIT_2G_OPT=y
+# CONFIG_VMSPLIT_1G is not set
+CONFIG_PAGE_OFFSET=0x78000000
Code:
$ mplayer -fs -nosound -benchmark
| Movie (codec) | HIGHMEM (-vo null) | VMSPLIT_2G_OPT (-vo null) | VMSPLIT performance % (-vo null) | HIGHMEM (-vo xv) | VMSPLIT_2G_OPT (-vo xv) | VMSPLIT performance % (-vo xv) |
| Avatar 1080p (ffh264) | 111.479s | 114.822s | 97.0% | 123.826s | 126.070s | 98.2% |
| nVidia PureVideo 1080p (wmv9dmo) | 165.938s | 166.637s | 99.6% | 181.632s | 184.528s | 98.4% |
| Star Trek 11 1080p (wmv9dmo) | 69.056s | 68.384s | 101.0% | 78.598s | 80.052s | 98.2% |