Archive for category: Kernel

XEN: Improve disk performance on domU

XEN: Improve disk performance on domU

 
26 Kudos
Don't
move!

This post is about a nice discovery I made when I upgraded my XEN dom0 kernel to the latest one (2.6.32-).
I suddenly noticed that the I/O performance was highly dropping down when moving few small files (~350MB) from one partition to another one of the same hard-disk.

I worried myself so I began investigating about the issue and, eventually, I posted on xen-users mailing list .

After few days I’ve been told that the problem was probably given by the I/O scheduler on the guest machine.

The solution is to disable domU scheduler and leave all the work to the dom0 scheduler. And it, actually, did the trick for me.

In order to do that, just add ‘elevator=noop’ to the kernel’s bootflag of your guest machine and check if the system becomes more reactive.

If you are interested into the whole dynamic or you’re simply willing to understand better the reasons why this happens, here’s the thread on XEN mailing list.

If you’ll find a possible explanation for such a slow-down.

Just to be curious: drop me a comment about if something changes or not on your systems.

April 16, 2010 0 comments Read More
Set up a new kernel: few hints

Set up a new kernel: few hints

 
1 Kudos
Don't
move!

There are few things that join various distros. One of such things is the kernel.
At first, configuring it, could be a very stressful task so here are a couple of suggestions:

  • There’s a website that can help you so damn much to find which modules are needed by your kernel in order to work. This website refers to Debian but you can completely ignore that. Just put into it an lspci -n and go check your kernel configuration.
  • You can often use an already working kernel in order to understand what’s important and what is not. Distros prepare kernels in order to have almost everything compiled as module. These modules are going to be automagically loaded by the kernel when the relative device is found, but most of those kernel modules are useless for your system.
    In order to see which modules are currently loaded on your system, you can issue lsmod but this command doesn’t provide very much per-device informations. lspci provides a nice switch (-v) that shows what’s the module that manages that device.
  • In the newest kernel (>=2.6.32), developers have add a new make build target called localmodconfig that performs the task mentioned above, and adds automatically the needed parameters to the kernel configuration. In you want more information about this, I suggest you to take a look to the kernelnewbies site where you can find very cool information around kernel world.

December 20, 2009 0 comments Read More