Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

Aside from running memory benchmarks, has anyone used a benchmark that stresses the virtual memory subsystem? I'm curious to see how performance differs in virtual machines with and without EPT enabled.

I've found this benchmark: http://www.cs.princeton.edu/~appel/papers/vmpup.c and I was wondering if there were others.

CLARIFICATION: I realized it may be misleading, I'm looking to benchmark "virtual memory" in the memory management sense of the term (e.g. MMU performance), not in the paging to disk "swap" sense of the term.

share|improve this question
add comment

2 Answers 2

I've not seen a tool that targets the VMM specifically but you might want to take a look at the following list of benchmarking resources which might bear some fruit.

Of the options I'd take a closer look at STREAM, it's specifically designed to test memory. Cachebench also looks worth a look, though it's now bundled with LLCbench.

share|improve this answer
    
Thanks! STREAM is my go-to benchmark for memory and definitely a good way to indirectly measure this sort of thing. Not sure if it's really sensible to look for something as low-level as I'm interested, but I'm a fan of microbenchmarks :-) –  zje Feb 9 at 2:04
    
@zje - I've not seen anything that low level beyond what I mentioned (as possibilities). You might want to ask your Q on the linux kernel irc or one of the forums, they would know best and would likely have something to do it if anything exists. –  slm Feb 9 at 2:06
add comment

A benchmark is a (standardized) measurement of some system, and returns a number (or a set of numbers). Doing the measuring is a repeatable way is easy. What is hard (or even very hard) is to come up with a benchmark that means something, i.e., gives numbers that tell you if the setup is better or worse than another for your specific use.

In this particular case, virtual memory systems will react very differently depending on the pattern(s) of memory access. Any operating systems text will give an overview of what is going on, and compare some extremely simplistic algorithms to handle the problem. Real operating systems use much more complex techniques than those.

Best advise: Try to figure out what a representative application mix and corresponding load would be for your specific application, with an eye to load peaks that the system should handle, and measure those.

(Yes, doing that is a big job. Each part of it. Nobody serious will tell you representative benchmarking is a piece of cake.)

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.