From owner-freebsd-current@FreeBSD.ORG Wed Jul 27 09:32:22 2011 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 417DA106564A; Wed, 27 Jul 2011 09:32:22 +0000 (UTC) (envelope-from r.c.ladan@gmail.com) Received: from mail-gw0-f54.google.com (mail-gw0-f54.google.com [74.125.83.54]) by mx1.freebsd.org (Postfix) with ESMTP id C791E8FC15; Wed, 27 Jul 2011 09:32:21 +0000 (UTC) Received: by gwb15 with SMTP id 15so1129287gwb.13 for ; Wed, 27 Jul 2011 02:32:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=6PCzi4wBEErGdqpK/bBva5ESWUzreivjbzkSE0zg6hE=; b=rF3H9SsytSdsTDvQCImrjHvrJrGr+DQ4zPBT+Bh74DuoP/nDwxzcTSe/n9QpcmsMFD nCTwwJ8pxGXkb0VePE2hnhkC9+7FClKhvnnqx9232fC+ynUdkUJEFQ/vU2FCZAAC8Y83 R3FyeNEXaGmSzncAH1cEprmu4jPQWEW4jhr+o= MIME-Version: 1.0 Received: by 10.142.75.9 with SMTP id x9mr4756761wfa.129.1311759140427; Wed, 27 Jul 2011 02:32:20 -0700 (PDT) Sender: r.c.ladan@gmail.com Received: by 10.142.199.16 with HTTP; Wed, 27 Jul 2011 02:32:20 -0700 (PDT) In-Reply-To: <20110727092338.GA10526@freebsd.org> References: <20110724212544.GA57733@freebsd.org> <20110725072102.GA24938@freebsd.org> <4E2D2C32.5010602@gmx.de> <20110727004850.GA63109@freebsd.org> <20110727083339.GA12233@tops> <20110727092338.GA10526@freebsd.org> Date: Wed, 27 Jul 2011 11:32:20 +0200 X-Google-Sender-Auth: PiT6g8AJN8EF4am3rDb6wmTd4oc Message-ID: From: =?ISO-8859-1?Q?Ren=E9_Ladan?= To: Alexander Best Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: Norberto Lopes , Gleb Kurtsou , Matthias Andree , Adrian Chadd , freebsd-current@freebsd.org Subject: Re: chromium port causing massive I/O faults X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Jul 2011 09:32:22 -0000 2011/7/27 Alexander Best : > On Wed Jul 27 11, Ren=E9 Ladan wrote: >> 2011/7/27 Gleb Kurtsou : >> > On (27/07/2011 00:48), Alexander Best wrote: >> >> On Mon Jul 25 11, Matthias Andree wrote: >> >> > Am 25.07.2011 09:21, schrieb Alexander Best: >> >> > > On Mon Jul 25 11, Adrian Chadd wrote: >> >> > >> Is it perhaps doing disk IO using mmap? >> >> > > >> >> > > how can i check, whether that's the case or not? >> >> > >> >> > Use truss(1) for instance. >> >> > >> >> > However, unless there are *practical* problems, a high number of pa= ge >> >> > faults is not an indication for problems. =A0Although it may sound = scary, >> >> > page faults are a feature of the memory management. >> >> >> >> unfortunately truss(1) is crashing chromium :( i opened up a new thre= ad >> >> reagarding this issue on freebsd-current@. >> > Could you try ktrace? It works for me >> > >> >> another thing i noticed is the increase in system calls caused by chr= omium. >> >> let's have a look at hub.freebsd.org: >> >> >> >> uptime =3D 149 days >> >> >> >> and 'vmstat -s' reports: >> >> >> >> 2168697753 cpu context switches >> >> 2266220366 device interrupts >> >> 2902880931 software interrupts >> >> 3779075897 traps >> >> 902107847 system calls >> >> >> >> now on my box: >> >> >> >> uptime =3D 2 days >> >> >> >> and 'vmstat -s' reports: >> >> >> >> 1155995386 cpu context switches >> >> 164577882 device interrupts >> >> 189456976 software interrupts >> >> 137007580 traps >> >> 2178434582 system calls >> > About 2.5k syscalls with chrome + a lot of other stuff running. 1.5k >> > without chrome. >> > >> > Looks like there is a lot of clock_gettime and gettimeofday syscalls. >> > ~ % kdump -m 1 -f ktrace.out | grep 'CALL .*gettime' | wc -l >> > =A0 24343 >> > >> > ~ % kdump -E -m 1 -f ktrace.out | grep 'CALL .*gettime' | tail -20 >> > =A012747 chrome =A0 15.077376 CALL =A0gettimeofday(0x7fffff7f9630,0x7f= ffff7f9640) >> > =A012747 chrome =A0 15.077396 CALL =A0clock_gettime(0x4,0x7fffffbfb6f0= ) >> > =A012747 chrome =A0 15.077497 CALL =A0gettimeofday(0x7fffffbfb650,0x7f= ffffbfb660) >> > =A012747 chrome =A0 15.077609 CALL =A0gettimeofday(0x7fffffbfb650,0x7f= ffffbfb660) >> > =A012747 chrome =A0 15.077723 CALL =A0gettimeofday(0x7fffffbfb650,0) >> > =A012747 chrome =A0 15.077845 CALL =A0clock_gettime(0,0x7fffffbfb2b0) >> > =A012747 chrome =A0 15.078337 CALL =A0clock_gettime(0x4,0x7fffff9fa630= ) >> > =A012747 chrome =A0 15.078544 CALL =A0clock_gettime(0x4,0x7fffff9fa650= ) >> > =A012747 chrome =A0 15.078587 CALL =A0clock_gettime(0x4,0x7fffff9fa650= ) >> > =A012747 chrome =A0 15.078632 CALL =A0clock_gettime(0x4,0x7fffff9fa650= ) >> > =A012747 chrome =A0 15.078674 CALL =A0clock_gettime(0x4,0x7fffff9fa650= ) >> > =A012747 chrome =A0 15.082803 CALL =A0gettimeofday(0x7ffffedd3630,0x7f= fffedd3640) >> > =A012747 chrome =A0 15.084644 CALL =A0gettimeofday(0x7fffffbfb650,0x7f= ffffbfb660) >> > =A012747 chrome =A0 15.084746 CALL =A0clock_gettime(0x4,0x7fffffbfb670= ) >> > =A012747 chrome =A0 15.084815 CALL =A0clock_gettime(0x4,0x7fffffbfb670= ) >> > =A012747 chrome =A0 15.086620 CALL =A0gettimeofday(0x7ffffefd4650,0x7f= fffefd4660) >> > =A012747 chrome =A0 15.086736 CALL =A0clock_gettime(0x4,0x7ffffefd4670= ) >> > =A012747 chrome =A0 15.086815 CALL =A0clock_gettime(0x4,0x7ffffefd4670= ) >> > =A012747 chrome =A0 15.098315 CALL =A0gettimeofday(0x7fffffffafe0,0x7f= ffffffaff0) >> > =A012747 chrome =A0 15.098680 CALL =A0clock_gettime(0x4,0x7fffffffb250= ) >> > >> > Some work was done by kib@ to create a kernel page strong current time >> > and other misc info to eliminate gettimeofday kind syscalls. =A0Bits o= f it >> > were commited but I'm not sure if it was finished. >> > But anyway calling gettimeofday hundreds of times per second is a chro= me >> > bug. >> > >> > FreeBSD 9.0-CURRENT #2 r224003+777e962: Thu Jul 14 13:04:55 EEST 2011 >> > chromium-11.0.696.57_1 >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0^^^^^^^^^^^^^ >> Can you retry with an up-to-date version of www/chromium? =A0The >> codebase of chromium >> changes quite fast so not using the latest version in ports might >> render obsolete (and >> upstream unsupported) results. > > my tests were done with chromium-12.0.742.124 btw. > Ok, I'll do some tests with the beta version from the chruetertee repository (13.0.782.99). >> >> Ren=E9 >> -- >> http://www.rene-ladan.nl/ >