Re: benchmarking i/o throughput
Jeroen Demeyer <[email protected]>
| Newsgroups | gmane.linux.cluster.openmosix.general |
|---|---|
| Message-ID | <[email protected]> |
Andreas Schäfer wrote: > Hi, > > I was curious how good openMosix' 2.6 I/O bandwith is, so I wrote to > simple programs (see the attachment). The first one writes a > configurable amount of data to the stdout and measures how long this > takes. The second one simply reads data into a buffer. > > When I connected both programs with a pipe and migrated only the > reading process to another node I got a througput of approx. 6.3 > megabytes/s (on fast ethernet, both machine's CPUs loathing), which > seemed to me pretty much ok. > > The weird thing was that when migrating only the writing process, the > throughput dropped to 90 kilobyte/s. I've also tried a much simpler C > program which just printf'ed it's data to the stdout, but still the > throughput was as low as before. > > BTW: process migration causes the first sleep() in the writing > program to return immediately, is this an expected behavior? What happens if you replace std::cout.write(buf, BUF_SIZE); with the syscall write(1, buf, BUF_SIZE); C++ tends to break up writes into small pieces, so this could affect performance. ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid3432&bid#0486&dat1642