From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lauri Kasanen Subject: Re: [PATCH] drm/radeon: Inline r100_mm_rreg Date: Fri, 11 Apr 2014 20:38:20 +0300 Message-ID: <20140411203820.321fcb1d.cand@gmx.com> References: <20140410160817.5275493d.cand@gmx.com> <20140410214634.ba440af5.cand@gmx.com> <5346F13B.6060604@vodafone.de> <20140411105201.57ea4a1b.cand@gmx.com> <5347A8C4.90307@vodafone.de> <20140411125417.ce34db7e.cand@gmx.com> <5347E0D4.3040205@vodafone.de> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: quoted-printable Return-path: Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 59E6A6E411 for ; Fri, 11 Apr 2014 10:37:03 -0700 (PDT) In-Reply-To: <5347E0D4.3040205@vodafone.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Christian =?ISO-8859-15?Q?K=F6nig?= Cc: "dri-devel@lists.freedesktop.org" List-Id: dri-devel@lists.freedesktop.org On Fri, 11 Apr 2014 14:32:20 +0200 Christian K=F6nig wrote: > Am 11.04.2014 11:54, schrieb Lauri Kasanen: > > On Fri, 11 Apr 2014 10:33:08 +0200 > > Christian K=F6nig wrote: > > > >>>> Actually direct register access shouldn't be necessary so often. Apa= rt > >>>> from page flips, write/read pointer updates and irq processing there > >>>> shouldn't be so many of them. Could you clarify a bit more what issue > >>>> you are seeing here? > >>> Too much cpu usage for such a simple function. 2% makes it #2 in top-= 10 > >>> radeon.ko functions, right after evergreen_cs_parse. For reference, #3 > >>> (radeon_cs_packet_parse) is only 0.5%, one fourth of this function's > >>> usage. > >> I think you misunderstood me here. I do believe your numbers that it > >> makes a noticeable difference. > >> > >> But I've did a couple of perf tests recently on SI and CIK while hacki= ng > >> on VM support, and IIRC r100_mm_rreg didn't showed up in the top 10 on > >> those systems. > >> > >> So what puzzles me is who the hack is calling r100_mm_rreg so often th= at > >> it makes a noticeable difference on evergreen/NI? > > The biggest caller is cayman_cp_int_cntl_setup. Before inlining it took > > 0.0013%, after it takes 1%. > = > Sounds like somebody is constantly turning interrupts on and off. I instrumented radeon_irq_set. There's about 12 calls to that per sec, most coming from radeon_irq_kms_sw_irq_get and radeon_irq_kms_sw_irq_put. So from your earlier mail I gather this amount of IRQ setting is normal. It's just taking a lot of cpu for some reason. - Lauri