You can subscribe to this list here.
1999 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(8) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2000 |
Jan
(19) |
Feb
(11) |
Mar
(56) |
Apr
(31) |
May
(37) |
Jun
(21) |
Jul
(30) |
Aug
(31) |
Sep
(25) |
Oct
(60) |
Nov
(28) |
Dec
(57) |
2001 |
Jan
(47) |
Feb
(119) |
Mar
(279) |
Apr
(198) |
May
(336) |
Jun
(201) |
Jul
(136) |
Aug
(123) |
Sep
(123) |
Oct
(185) |
Nov
(66) |
Dec
(97) |
2002 |
Jan
(318) |
Feb
(101) |
Mar
(167) |
Apr
(233) |
May
(249) |
Jun
(134) |
Jul
(195) |
Aug
(99) |
Sep
(278) |
Oct
(435) |
Nov
(326) |
Dec
(325) |
2003 |
Jan
(214) |
Feb
(309) |
Mar
(142) |
Apr
(141) |
May
(210) |
Jun
(86) |
Jul
(133) |
Aug
(218) |
Sep
(315) |
Oct
(152) |
Nov
(162) |
Dec
(288) |
2004 |
Jan
(277) |
Feb
(267) |
Mar
(182) |
Apr
(168) |
May
(254) |
Jun
(131) |
Jul
(168) |
Aug
(177) |
Sep
(262) |
Oct
(309) |
Nov
(262) |
Dec
(255) |
2005 |
Jan
(258) |
Feb
(169) |
Mar
(282) |
Apr
(208) |
May
(262) |
Jun
(187) |
Jul
(207) |
Aug
(171) |
Sep
(283) |
Oct
(216) |
Nov
(307) |
Dec
(107) |
2006 |
Jan
(207) |
Feb
(82) |
Mar
(192) |
Apr
(165) |
May
(121) |
Jun
(108) |
Jul
(120) |
Aug
(126) |
Sep
(101) |
Oct
(216) |
Nov
(95) |
Dec
(125) |
2007 |
Jan
(176) |
Feb
(117) |
Mar
(240) |
Apr
(120) |
May
(81) |
Jun
(82) |
Jul
(62) |
Aug
(120) |
Sep
(103) |
Oct
(109) |
Nov
(181) |
Dec
(87) |
2008 |
Jan
(145) |
Feb
(69) |
Mar
(31) |
Apr
(98) |
May
(91) |
Jun
(43) |
Jul
(68) |
Aug
(135) |
Sep
(48) |
Oct
(18) |
Nov
(29) |
Dec
(16) |
2009 |
Jan
(26) |
Feb
(15) |
Mar
(83) |
Apr
(39) |
May
(23) |
Jun
(35) |
Jul
(11) |
Aug
(3) |
Sep
(11) |
Oct
(2) |
Nov
(28) |
Dec
(8) |
2010 |
Jan
(4) |
Feb
(40) |
Mar
(4) |
Apr
(46) |
May
(35) |
Jun
(46) |
Jul
(10) |
Aug
(4) |
Sep
(50) |
Oct
(70) |
Nov
(31) |
Dec
(24) |
2011 |
Jan
(17) |
Feb
(8) |
Mar
(35) |
Apr
(50) |
May
(75) |
Jun
(55) |
Jul
(72) |
Aug
(272) |
Sep
(10) |
Oct
(9) |
Nov
(11) |
Dec
(15) |
2012 |
Jan
(36) |
Feb
(49) |
Mar
(54) |
Apr
(47) |
May
(8) |
Jun
(82) |
Jul
(20) |
Aug
(50) |
Sep
(51) |
Oct
(20) |
Nov
(10) |
Dec
(25) |
2013 |
Jan
(34) |
Feb
(4) |
Mar
(24) |
Apr
(40) |
May
(101) |
Jun
(30) |
Jul
(55) |
Aug
(84) |
Sep
(53) |
Oct
(49) |
Nov
(61) |
Dec
(36) |
2014 |
Jan
(26) |
Feb
(22) |
Mar
(30) |
Apr
(4) |
May
(43) |
Jun
(33) |
Jul
(44) |
Aug
(61) |
Sep
(46) |
Oct
(154) |
Nov
(16) |
Dec
(12) |
2015 |
Jan
(18) |
Feb
(2) |
Mar
(122) |
Apr
(23) |
May
(56) |
Jun
(29) |
Jul
(35) |
Aug
(15) |
Sep
|
Oct
(45) |
Nov
(94) |
Dec
(38) |
2016 |
Jan
(50) |
Feb
(39) |
Mar
(39) |
Apr
(1) |
May
(14) |
Jun
(12) |
Jul
(19) |
Aug
(12) |
Sep
(9) |
Oct
(1) |
Nov
(13) |
Dec
(7) |
2017 |
Jan
(6) |
Feb
(1) |
Mar
(16) |
Apr
(5) |
May
(61) |
Jun
(18) |
Jul
(43) |
Aug
(1) |
Sep
(8) |
Oct
(25) |
Nov
(30) |
Dec
(6) |
2018 |
Jan
(5) |
Feb
(2) |
Mar
(25) |
Apr
(15) |
May
(2) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2019 |
Jan
|
Feb
(2) |
Mar
|
Apr
(1) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Rodrigo B. (a. morcego) <rod...@co...> - 2000-12-06 04:30:55
|
On Wed, Dec 06, 2000 at 12:26:43AM -0500, Jeff Dike wrote: > mo...@ea... said: > > TCP Unix Difference > > -----------------------------=20 > > Min| 0.8 0.3 0.5=20 > > Max| 29.1 0.3 28.8=20 > > Avg| 110.0 1.8 108.2=20 > > Pak| 6% 0% 0%=20 > > -----------------------------=20 >=20 > Nice. You sold me. Is your patch ready for public viewing? I'd like to= =20 > reproduce these results here. >=20 Same for me ... I would like to integrate it with my patch. With both performance improveme= nts, it will be great. []s --=20 Rodrigo Barbosa (morcego) - rod...@co... Conectiva R&D Team - http://distro.conectiva.com.br "Quis custodiet custodes?" - http://www.conectiva.com |
From: Jeff D. <jd...@ka...> - 2000-12-06 04:18:27
|
mo...@ea... said: > TCP Unix Difference > ----------------------------- > Min| 0.8 0.3 0.5 > Max| 29.1 0.3 28.8 > Avg| 110.0 1.8 108.2 > Pak| 6% 0% 0% > ----------------------------- Nice. You sold me. Is your patch ready for public viewing? I'd like to reproduce these results here. Jeff |
From: Mooneer S. <mo...@ea...> - 2000-12-06 03:11:37
|
Kernel parameters: mem=64m no-xterm fake_arch Host kernel: 2.2.17 UML kernel: 2.4.0-test11 Flood pinged the UML kernel with 1,000 ICMP packets and kept track of packet loss/ping time. This was performed three times, with the best result for each used. "Traditional Style" (TCP to localhost): root@apoc [~]# ping -c 1000 -f 10.0.0.1 PING 10.0.0.1 (10.0.0.1) from 10.0.0.2 : 56(84) bytes of data. .......................................................................... --- 10.0.0.1 ping statistics --- 1073 packets transmitted, 1000 packets received, 6% packet loss round-trip min/avg/max = 0.8/29.1/110.0 ms root@apoc [~]# Unix socket (/tmp/tap0): root@apoc [~]# ping -c 1000 -f 10.0.0.1 PING 10.0.0.1 (10.0.0.1) from 10.0.0.2 : 56(84) bytes of data. . --- 10.0.0.1 ping statistics --- 1000 packets transmitted, 1000 packets received, 0% packet loss round-trip min/avg/max = 0.3/0.3/1.8 ms root@apoc [~]# Table of Results (times in ms): TCP Unix Difference ----------------------------- Min| 0.8 0.3 0.5 Max| 29.1 0.3 28.8 Avg| 110.0 1.8 108.2 Pak| 6% 0% 0% ----------------------------- Pak = Packet loss (percentage) Min = Minimum ping time Max = Maximum ping time Avg = Average ping time TCP = UML communicates with um_eth_net_util through a TCP/IP connection Unix = UML communicates with um_eth_net_util through a named pipe/Unix socket I believe the reason for the speed increase is because the kernel does not have to go through the overhead that a TCP/IP connection entails, even when using the loopback device. -----Original Message----- From: Jeff Dike [mailto:jd...@ka...] Sent: Tuesday, December 05, 2000 5:27 PM To: Mooneer Salem Cc: Rodrigo Barbosa (aka morcego); use...@li... Subject: Re: [uml-user] [PATCH net-tools] debug improvements rod...@co... said: > Have you benckmarked it ? Rodrigo is right. Measure the latency across both types of sockets. A connection through localhost goes through the loopback interface, which I think is about as low-overhead as you could want. Jeff |
From: Jeff D. <jd...@ka...> - 2000-12-06 00:18:17
|
rod...@co... said: > Have you benckmarked it ? Rodrigo is right. Measure the latency across both types of sockets. A connection through localhost goes through the loopback interface, which I think is about as low-overhead as you could want. Jeff |
From: Rodrigo B. (a. morcego) <rod...@co...> - 2000-12-05 23:39:00
|
On Tue, Dec 05, 2000 at 02:56:18PM -0800, Mooneer Salem wrote: > [sent to user-mode-linux-devel as well] >=20 > I'm messing with the network code at the moment. I noticed that > the virtual ethernet driver makes a TCP connection to localhost. > How much less overhead would be incurred if this was changed to > use Unix sockets instead (e.g. like /tmp/mysql.sock for MySQL)? >=20 > Right now I made a few hacks to both the user-mode utilities and > the test11 kernel to use Unix sockets instead of TCP/IP. > Basically the kernel opens /tmp/tapx for each virtual ethernet device > it detects, instead of opening a connection to localhost. The user-mode > utilities make sockets on /tmp/tapx and use those instead of TCP/IP. This > should cut down on overhead. Once I see how stable or unstable it > is I'll make the diffs and send them to Jeff and/or the list. Well, I may be wrong, but I think UNIX Socket handling is actualy slower then network socket handling (expecialy when conserning the lo interface). Have you benckmarked it ? []s --=20 Rodrigo Barbosa (morcego) - rod...@co... Conectiva R&D Team - http://distro.conectiva.com.br "Quis custodiet custodes?" - http://www.conectiva.com |
From: Mooneer S. <mo...@ea...> - 2000-12-05 22:54:45
|
[sent to user-mode-linux-devel as well] I'm messing with the network code at the moment. I noticed that the virtual ethernet driver makes a TCP connection to localhost. How much less overhead would be incurred if this was changed to use Unix sockets instead (e.g. like /tmp/mysql.sock for MySQL)? Right now I made a few hacks to both the user-mode utilities and the test11 kernel to use Unix sockets instead of TCP/IP. Basically the kernel opens /tmp/tapx for each virtual ethernet device it detects, instead of opening a connection to localhost. The user-mode utilities make sockets on /tmp/tapx and use those instead of TCP/IP. This should cut down on overhead. Once I see how stable or unstable it is I'll make the diffs and send them to Jeff and/or the list. -----Original Message----- From: use...@li... [mailto:use...@li...]On Behalf Of Rodrigo Barbosa (aka morcego) Sent: Tuesday, December 05, 2000 12:32 PM To: Jeff Dike Cc: use...@li... Subject: Re: [uml-user] [PATCH net-tools] debug improvements On Tue, Dec 05, 2000 at 01:19:20AM -0500, Jeff Dike wrote: > It's up to Jim Leu, but I would be inclined not to take this patch. The > reason is that you're chasing a big problem, and big problems have big fixes > (in the sense that you fix it and it makes a big difference). So, if I were > you, I'd ignore all this little stuff until you find the real bug. Also, by > fixing little things, you run the risk of getting enough small improvements to > add up to something that's barely acceptable. Then you stop chasing the real > problem because things are now sort of OK. I don't necessarily agree with you. I have seen big problems that only needed small fixes. But in this particular case, we only think that it's just one big problem. But we can have a series of small problems that looks just like a big one. > I think this particular patch is also a bad idea because it's good to be able > to turn on debugging in the standard executable with a command line option, > and not have to recompile it. And if debugging is the default, as you have > it, then hardly anyone is going to turn it off, so the ifdefs aren't doing > anything except cluttering the code. Well, my proposal was to minimize changes. The code didn't have suport for a debug flag, the debug option was hardcoded and turned on by default. What I'm planning to the future (don't scream or cluebat me, please), is to use multithreading to have debugging with very small performance hits. I keep the main thread for routing, and another one for debugging, so I can have async debug, causing minimal performance hit. > I also have a hard time believing that those tests make any kind of > performance difference. And if it is measurable, then we're back to my > argument above. They have an effect, yes. Very small. But I'm not yet sure that we are dealing with just one big problem here. > Cleaning up excessive output might be a good idea, but all of the fprintf's > that you've ifdefed look like fairly rare occurrences. Not so rare. And fprintf is a samewhat costy instruction. > In the interest of not being totally negative, I have to say that moving that > fork does look like a good idea. Thanks. And no, I don't think you are being totaly negative. Totaly negative is like some people that simply refuses a patch, without telling why they did. Once you explained your reason, I can work to improve it, remove problematic points, and maybe come up with something better. |
From: Michael V. <mj...@un...> - 2000-12-05 18:25:39
|
On Tue, 5 Dec 2000, Erik Paulson wrote: > One cool trick that you can do is checkpoint under UML, and (after hacking > on LINE for a little bit) restart on NT :) Or even better...include a NT box in a Mosix cluster :) Mike |
From: Erik P. <epa...@cs...> - 2000-12-05 17:45:09
|
On Mon, Dec 04, 2000 at 11:01:19PM -0500, Jeff Dike wrote: > > BTW, have you tried checkpointing UML itself? That would be way cool. I'd thought about that, and it's something to look into later, but for now I just want to do a single process. One cool trick that you can do is checkpoint under UML, and (after hacking on LINE for a little bit) restart on NT :) -Erik > > Jeff > > |
From: Jeff D. <jd...@ka...> - 2000-12-05 16:20:13
|
I've checked in the fixes to the block driver. "dd if=/dev/ubd/0 of=/dev/null" no longer causes hangs, and dbench no longer causes file corruption. At the request of Daniel Phillips, I'm also maintaining a patch against the latest cvs as uml-patch-latest.2.4.0-test11. It's available from the project download page. Jeff |
From: Jeff D. <jd...@ka...> - 2000-12-05 02:52:34
|
epa...@cs... said: > The problem is that it segfaults restoring the last page of memory. > Maybe it's something wonky with the way UML handles it's stack, or > maybe there's a bug in the mmap() part of UML. OK, I'll have a look at it. There is some funkiness going on, but it should work. BTW, have you tried checkpointing UML itself? That would be way cool. Jeff |
From: Erik P. <epa...@cs...> - 2000-12-04 20:16:46
|
Hi, I've been working on getting checkpointing working under user-mode-linux, and last night I found an interesting utility that can checkpoint any currently-running process all in userspace. /proc gives you most of what you need, and the little bit it doesn't (current registers, position info for the currently open fd's) it swipes out of the process with ptrace. Now, I could easily believe that the checkpointing wouldn't work under UML, so I'm planning on adding the bits to /proc it needs so it doesn't have to mess with ptrace(). However, I don't see any reason the restart code included here wouldn't work - basically it creates a new stack to work out of, mmap()'s in the old process, opens up the old files and seeks in them, and restores the registers. The problem is that it segfaults restoring the last page of memory. Maybe it's something wonky with the way UML handles it's stack, or maybe there's a bug in the mmap() part of UML. The code I was trying was here: ftp://ftp.gin.cz/pub/local/feela/src/freezer.tgz It builds two apps, freeze and warm. I would 'freeze' a process that was just doing a for(i=0;i<1000;i++){printf(i);sleep(1);} under the host kernel and then 'warm' it under UML. Thanks! -Erik |
From: Jeff D. <jd...@ka...> - 2000-12-01 16:16:37
|
wst...@po... said: > I get _reams_ - hundreds - of: > Failed to forward 0 to pid 25385, errno = 9 > With each keystroke on one of the xterms after boot, I get: > stdio_rcv_proc read failed, errno = 5 > The console doesn't seem to be reset on halt Well, I don't see any of that. It looks like I may have to pay another visit to Dartmouth and break fingers until you see that there is nothing wrong with UML... > I take it you split up the file descriptors? It seems to work as > advertised. Yup, the consoles now have separate in and out descriptors, although in the normal case that they're attached to a tty, they're the same. > error stat'ing /dev/ttydirs/xxx/xxxxxxxxxxxxp2: No such file or directory > error: parent pid should not be init > error stat'ing /dev/ttydirs/xxx/xxxxxxxxxxxxp4: No such file or directory The first and third are from xterm. I have no idea what's going on in its little mind, but it seems harmless. I guess the second is, too, but I've never seen it. Jeff |
From: William S. <wst...@po...> - 2000-11-30 22:14:45
|
Good day, Jeff, all, (Host rh7, 2.4.0-test11-ac1, uml rh6.2, Jeff's 2.4.0-test11-1um #1 Mon Nov 20 01:07:52 EST 2000 um unknown). -------- STDIN=/dev/null -------- ./linux-2.4.0-test11 mem=48M </dev/null I get _reams_ - hundreds - of: Failed to forward 0 to pid 25385, errno = 9 Failed to forward 0 to pid 25396, errno = 9 Failed to forward 0 to pid 25385, errno = 9 Failed to forward 0 to pid 25574, errno = 9 Failed to forward 0 to pid 25385, errno = 9 Failed to forward 0 to pid 25396, errno = 9 Failed to forward 0 to pid 25385, errno = 9 Failed to forward 0 to pid 25574, errno = 9 Failed to forward 0 to pid 25385, errno = 9 Failed to forward 0 to pid 25396, errno = 9 Failed to forward 0 to pid 25623, errno = 9 These end as the loging prompts show up. With each keystroke on one of the xterms after boot, I get: stdio_rcv_proc read failed, errno = 5 That said, the redirect does seem to work; typing on the console has no effect, as it should, but the console messages correctly show up (they didn't in earlier kernels, as we discussed). I take it you split up the file descriptors? It seems to work as advertised. The console doesn't seem to be reset on halt (nothing I type after halt shows up and <Enter> just prints a new copy of the prompt on the same line), so I have to type "clear ; reset" blind, but it comes back after that. -------- STDOUT=/dev/null -------- e2fsck -v root_fs ; ./linux-2.4.0-test11 mem=48M >/dev/null Way cool. All console output suppressed, but I can still login blind on the console and type commands. "ls -al >/dev/ttys/1" spits out a directory listing to the first xterm. The original shell even works correctly after a halt. Darn, nothing to complain about. ;-) -------- STDIN=STDOUT=/dev/null -------- e2fsck -v root_fs ; ./linux-2.4.0-test11 mem=48M </dev/null >/dev/null Pretty close. I no longer get the "Failed to forward..." or "Stdio_rvc_proc..." messages, although those might still exist but be heading off to /dev/null so I don't see them. I do get the following on the console. The first and third are well-known; they show up at every xterm respawn. I don't remember the second. error stat'ing /dev/ttydirs/xxx/xxxxxxxxxxxxp2: No such file or directory error: parent pid should not be init error stat'ing /dev/ttydirs/xxx/xxxxxxxxxxxxp4: No such file or directory Logging in blind correctly fails to work. Good. In all three cases the xterms start up without problem. Also, adding "no-xterm" to the command line works correctly; the xterms don't start, but servers are available. Waaaaaaaaay cool! Nice work, Jeff. Cheers, - Bill --------------------------------------------------------------------------- Last week TechWeb reported that Eric S. Raymond was invited to speak to a Microsoft Research Group. Given Raymond's status in the Open Source Community, this is somewhat akin to the Vatican asking Martin Luther to pay a visit in 1517 and chat about the note that he left. -- Joe "Zonker" Brockmeier -------------------------------------------------------------------------- William Stearns (wst...@po...). Mason, Buildkernel, named2hosts, and ipfwadm2ipchains are at: http://www.pobox.com/~wstearns LinuxMonth; articles for Linux Enthusiasts! http://www.linuxmonth.com -------------------------------------------------------------------------- |
From: Jeff D. <jd...@ka...> - 2000-11-28 15:40:37
|
This batch contains the "debug=go" and "ubd=sync" options. Jeff |
From: Jeff D. <jd...@ka...> - 2000-11-26 23:50:31
|
wst...@po... said: > If you can't reproduce it, I'll compile my own non-stripped one. You guessed it. It Works For Me (TM): darkstar:~# swapon /dev/ubd/1 darkstar:~# Run it debug and get a stack trace from the panic. Jeff |
From: William S. <wst...@po...> - 2000-11-26 01:08:03
|
Good day, Jeff, all, I've got a quirk in 2.4.0-test11. The root filesystem in question is rh62., host kernel is 2.4.0-test11-ac1, host root is rh7, uml kernel is the stock one from the web site, swap is a 126MB swapfile. -rwxr-xr-x 1 wstearns wstearns 1306884 Nov 20 01:07 linux-2.4.0-test11 lrwxrwxrwx 1 wstearns wstearns 18 Nov 20 01:22 linux -> linux-2.4.0-test11 [wstearns@sparrow rh6.2]$ ./linux mem=20M ubd1=swap tracing thread pid = 3353 Linux version 2.4.0-test11-1um (jd...@cc...) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #1 Mon Nov 20 01:07:52 EST 2000 [snip] Setting clock : Sat Nov 25 15:46:14 EST 2000 [ OK ] Activating swap partitions Kernel panic: Double fault on 0x51800000 - panicing because it wasn't fixed the first time OK, let's try it with a non-sparse swapfile on the host: [wstearns@sparrow rh6.2]$ dd if=/dev/zero of=swap-notsparse bs=$((1024*1024)) count=126 126+0 records in 126+0 records out [wstearns@sparrow rh6.2]$ sudo mkswap swap-notsparse Password: Setting up swapspace version 1, size = 132116480 bytes And: [wstearns@sparrow rh6.2]$ ./linux mem=20M ubd1=swap-notsparse tracing thread pid = 3625 Linux version 2.4.0-test11-1um (jd...@cc...) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #1 Mon Nov 20 01:07:52 EST 2000 [snip] Setting clock : Sat Nov 25 15:57:01 EST 2000 [ OK ] Activating swap partitions Kernel panic: Double fault on 0x51800000 - panicing because it wasn't fixed the first time Identical. OK, one more test. Tell the host kernel to stop using the physical swap partition on the physical drive, give wstearnbs ownership of the partition, then: ./linux mem=20M ubd1=/dev/hda5 and Activating swap partitions Kernel panic: Double fault on 0x51800000 - panicing because it wasn't fixed the first time Same error. Your kernel doesn't have symbol information, so gdb is of limited use. If you can't reproduce it, I'll compile my own non-stripped one. Cheers, - Bill --------------------------------------------------------------------------- "Put down those Windows disks, Dave..." -- HAL -------------------------------------------------------------------------- William Stearns (wst...@po...). Mason, Buildkernel, named2hosts, and ipfwadm2ipchains are at: http://www.pobox.com/~wstearns LinuxMonth; articles for Linux Enthusiasts! http://www.linuxmonth.com -------------------------------------------------------------------------- |
From: Jeff D. <jd...@ka...> - 2000-11-21 20:49:05
|
I checked in a bunch of changes which cause clone failures to be handled much more gracefully. Now, you'll get a failed fork rather than a panic. Jeff |
From: Jeff D. <jd...@ka...> - 2000-11-20 04:55:24
|
The 2.4.0-test11 updates are checked in. hostfs now works better. You can mount it, cd around inside it, and cat things. Writing things is right out. It turned out that my stack guard page wasn't really guarding anything. This has been fixed. Jeff |
From: Jeff D. <jd...@ka...> - 2000-11-19 14:50:52
|
epa...@cs... said: > I've run lmbench through a UML session, and again natively on a PIII > machine here to see how things looked. I run lmbench as a stress test on every kernel before I release it. I don't pay any attention to the numbers because they are all over the map. My activities on the host apparently affect the lmbench numbers of the UML. How many runs did you make? And how consistent were the numbers? If your numbers aren't consistent, I would try something extreme like bring up the host only as far as needed to run UML (like single-user with the necessary filesystems mounted) and do the lmbench. That would put the host in as predictable a state as possible. And then do the same with the UML to get it in as consistent a state as possible. Then do a bunch of lmbench runs and see if you get good numbers. Also, if you're going to compare UML vs host numbers, they'd better be running the same kernel version. If you stay away from the kernel, UML performance is basically the same as the host, which isn't surprising. Once you start going into the kernel, performance starts hurting. Every UML system call involves four context switches on the host. Adding a new system call tracing mechanism to the host is on my list of things to do for 2.5. Also, I/O bound tests are hurt by the block driver, which can only have one outstanding request at a time. Fixing this would probably greatly help the performance of things like kernel builds. Jeff |
From: Erik P. <epa...@cs...> - 2000-11-19 07:14:21
|
Hello, I've run lmbench through a UML session, and again natively on a PIII machine here to see how things looked. It's not totally fair, I should have probably mounted the lmbench directory over the loopback device on the native kernel, and I think I've got some memory stuff misconfigured (UML blew up when I tried to tell it lmbench that it had more than 10 megs of RAM, so I think I'm missing a command-line flag or something. It also failed in alloc_pages during a run, but I haven't had a chance to take a look at that) Has anyone else taken a look at some benchmarks? The machine I'm using is a 650mhz PIII with 512 megs of RAM, and a 10gig IDE drive (I'll have to ask around to see who made it). I'm using UML 2.4.0-test10 as downloaded off the website tonight (18 Nov), on a 2.2.16smp host. This work is for CS736 (Operating Systems) here at the University of Wisconsin.My project involves using UML as a testbed for secure sandboxing and process migration in a distributed system, and we're trying to get a feeling for some performance numbers. I'm going to be running SPEC through soon as well, since many of our target apps are CPU-bound and shouldn't hit into the OS too much (except for VM-issues) Thanks, and I'm looking forward to your comments. -Erik (lmbench can be found at: http://www.bitmover.com/lmbench/ ) L M B E N C H 2 . 0 S U M M A R Y ------------------------------------ (Alpha software, do not distribute) Basic system parameters ---------------------------------------------------- Host OS Description Mhz --------- ------------- ----------------------- ---- perdita.c Linux 2.2.16- i686-pc-linux-gnu 652 uml Linux 2.4.0-t i686-pc-linux-gnu 650 Processor, Processes - times in microseconds - smaller is better ---------------------------------------------------------------- Host OS Mhz null null open selct sig sig fork exec sh call I/O stat clos TCP inst hndl proc proc proc --------- ------------- ---- ---- ---- ---- ---- ----- ---- ---- ---- ---- ---- perdita.c Linux 2.2.16- 652 0.5 0.8 4.9 6.2 28 1.4 2.1 0.2K 1.2K 27.K uml Linux 2.4.0-t 650 25.8 35.4 64.5 101. 36.2 105. 8.3K 16.K 47.K Context switching - times in microseconds - smaller is better ------------------------------------------------------------- Host OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw --------- ------------- ----- ------ ------ ------ ------ ------- ------- perdita.c Linux 2.2.16- 1 5 10 28 uml Linux 2.4.0-t 359 368 418 413 *Local* Communication latencies in microseconds - smaller is better ------------------------------------------------------------------- Host OS 2p/0K Pipe AF UDP RPC/ TCP RPC/ TCP ctxsw UNIX UDP TCP conn --------- ------------- ----- ----- ---- ----- ----- ----- ----- ---- perdita.c Linux 2.2.16- 1 7 13 26 41 132 uml Linux 2.4.0-t 359 693 782 File & VM system latencies in microseconds - smaller is better -------------------------------------------------------------- Host OS 0K File 10K File Mmap Prot Page Create Delete Create Delete Latency Fault Fault --------- ------------- ------ ------ ------ ------ ------- ----- ----- perdita.c Linux 2.2.16- 9 1 19 2 636 1 0.5K uml Linux 2.4.0-t 24 8 169 12 2772 0.1K *Local* Communication bandwidths in MB/s - bigger is better ----------------------------------------------------------- Host OS Pipe AF TCP File Mmap Bcopy Bcopy Mem Mem UNIX reread reread (libc) (hand) read write --------- ------------- ---- ---- ---- ------ ------ ------ ------ ---- ----- perdita.c Linux 2.2.16- 524 270 76 373 468 181 142 482 160 uml Linux 2.4.0-t 6 35 -1 270 460 187 150 460 190 Memory latencies in nanoseconds - smaller is better (WARNING - may not be correct, check graphs) --------------------------------------------------- Host OS Mhz L1 $ L2 $ Main mem Guesses --------- ------------- ---- ----- ------ -------- ------- perdita.c Linux 2.2.16- 652 4.60 10.76 122.4 uml Linux 2.4.0-t 650 4.64 10.86 194.1 |
From: Jeff D. <jd...@ka...> - 2000-11-18 01:35:07
|
If you want to build from source from now on, you have to put ARCH=um on the make command line or in the environment. I added Dave Zarzycki's changes to the top-level Makefile, which make the default behavior to build a native kernel. This is in preparation to getting UML in the main pool. hostfs still doesn't work, but it's configurable. UML works better as a daemon. The umn driver doesn't put "-n" on the ifconfig command line. Also, the problems with checking out arch/um/fs seem to have been fixed. Jeff |
From: Matt C. <ma...@co...> - 2000-11-15 18:45:46
|
Jeff Dike wrote: > > ma...@co... said: > > When I run UML for the first time (to install Slackware), it hangs > > during the boot process after: > > > > none on /proc type proc (rw) > > > > If I press CTRL+C, UML boots up fine. Once I've installed Slackware, > > I don't have this problem anymore. Any idea what this is, or if it's > > related to the problem Bill was having? > > I don't think so. I think that hang was a hard one. If it happens with a > kernel built by me that you got off my site, then it's not. It happens every time with the linux-2.4.0-test9 and linux-2.4.0-test10 kernel binaries I downloaded from your site. I'm running on Slackware 7.0, kernel version 2.2.16. I don't mind it so much since it goes away after I install Slackware, but I was curious as to what causes it. -- - Matt Clay - Cowboyz.com - (503) 241-1990 |
From: Jeff D. <jd...@ka...> - 2000-11-15 18:37:10
|
ma...@co... said: > When I run UML for the first time (to install Slackware), it hangs > during the boot process after: > > none on /proc type proc (rw) > > If I press CTRL+C, UML boots up fine. Once I've installed Slackware, > I don't have this problem anymore. Any idea what this is, or if it's > related to the problem Bill was having? I don't think so. I think that hang was a hard one. If it happens with a kernel built by me that you got off my site, then it's not. If you're running on a distro that has a "kgcc", then build with that and see if the problem goes away. Jeff |
From: Matt C. <ma...@co...> - 2000-11-15 17:35:13
|
Jeff Dike wrote: > > wst...@po... said: > > I compiled my own test10 and left in the symbols. Added "debug" to > > the command line and left off "</dev/null" for the moment. It's now > > hanging at mounting proc filesystem. > > Just to fill everyone in on what happened with this - I looked at this with > Bill today and it turns out to be a compiler problem. > > At -O2, the default gcc on whatever distro Bill was running calculates > addresses of labels incorrectly. Switching to kgcc fixed the problem. When I run UML for the first time (to install Slackware), it hangs during the boot process after: none on /proc type proc (rw) If I press CTRL+C, UML boots up fine. Once I've installed Slackware, I don't have this problem anymore. Any idea what this is, or if it's related to the problem Bill was having? -- - Matt Clay - Cowboyz.com - (503) 241-1990 |
From: Jeff D. <jd...@ka...> - 2000-11-15 04:16:55
|
wst...@po... said: > I compiled my own test10 and left in the symbols. Added "debug" to > the command line and left off "</dev/null" for the moment. It's now > hanging at mounting proc filesystem. Just to fill everyone in on what happened with this - I looked at this with Bill today and it turns out to be a compiler problem. At -O2, the default gcc on whatever distro Bill was running calculates addresses of labels incorrectly. Switching to kgcc fixed the problem. Jeff |