mmap(2) performance netbsd-1-6 vs. -current

Bang Jun-Young <[email protected]>
Newsgroups gmane.os.netbsd.devel.kernel,gmane.os.netbsd.devel.performance
Message-ID <[email protected]>
Hi,

After reading a Slashdotted article currently in the flame, I performed
a quick and dirty benchmark test to see mmap(2) performance difference
between netbsd-1-6 and -current. The result is interesting:  

netbsd-1-6 (latest as of this writing):
	real 25.357s user 0.150s sys 24.984s

-current (1.6ZD, updated yesterday):
	real 22.603s user 0.180s sys 22.404s

As you can see, -current mmap(2) was faster than the netbsd-1-6 one
by 11% in the test. The numbers hardly varied during multiple tests. 

The test program used is as follows (please don't blame me for its
silliness, I just wanted to see a rough difference in minutes :-):

#include <stdio.h>
#include <sys/mman.h>

main()
{
	void *ptr[15];
	int i, j;
	size_t size;

	for (j = 0; j < 40960; j++) {
		for (i = 0; i < 15; i++) {
			size = 4096 << i;
			ptr[i] = mmap(NULL, size, PROT_READ|PROT_WRITE, MAP_ANON, -1, 0);
			if (ptr == NULL)
				err("NULL returned, i=%d\n", i);
			*((int *)ptr) = 0xdeadbeef;
		}
		for (i = 0; i < 15; i++) {
			size = 4096 << i;
			munmap(ptr[i], size);
		}
	}
}

Jun-Young

-- 
Bang Jun-Young <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.