From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4853233690916346718==" MIME-Version: 1.0 From: Huang, Ying To: lkp@lists.01.org Subject: Re: [drm/mgag200] 90f479ae51: vm-scalability.median -18.8% regression Date: Wed, 31 Jul 2019 17:25:33 +0800 Message-ID: <87wofyzhbm.fsf@yhuang-dev.intel.com> In-Reply-To: List-Id: --===============4853233690916346718== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi, Daniel, Daniel Vetter writes: > On Tue, Jul 30, 2019 at 10:27 PM Dave Airlie wrote: >> >> On Wed, 31 Jul 2019 at 05:00, Daniel Vetter wrote: >> > >> > On Tue, Jul 30, 2019 at 8:50 PM Thomas Zimmermann wrote: >> > > >> > > Hi >> > > >> > > Am 30.07.19 um 20:12 schrieb Daniel Vetter: >> > > > On Tue, Jul 30, 2019 at 7:50 PM Thomas Zimmermann wrote: >> > > >> Am 29.07.19 um 11:51 schrieb kernel test robot: >> > > >>> Greeting, >> > > >>> >> > > >>> FYI, we noticed a -18.8% regression of vm-scalability.median due= to commit:> >> > > >>> >> > > >>> commit: 90f479ae51afa45efab97afdde9b94b9660dd3e4 ("drm/mgag200: = Replace struct mga_fbdev with generic framebuffer emulation") >> > > >>> https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/li= nux-next.git master >> > > >> >> > > >> Daniel, Noralf, we may have to revert this patch. >> > > >> >> > > >> I expected some change in display performance, but not in VM. Sin= ce it's >> > > >> a server chipset, probably no one cares much about display perfor= mance. >> > > >> So that seemed like a good trade-off for re-using shared code. >> > > >> >> > > >> Part of the patch set is that the generic fb emulation now maps a= nd >> > > >> unmaps the fbdev BO when updating the screen. I guess that's the = cause >> > > >> of the performance regression. And it should be visible with other >> > > >> drivers as well if they use a shadow FB for fbdev emulation. >> > > > >> > > > For fbcon we should need to do any maps/unamps at all, this is for= the >> > > > fbdev mmap support only. If the testcase mentioned here tests fbdev >> > > > mmap handling it's pretty badly misnamed :-) And as long as you do= n't >> > > > have an fbdev mmap there shouldn't be any impact at all. >> > > >> > > The ast and mgag200 have only a few MiB of VRAM, so we have to get t= he >> > > fbdev BO out if it's not being displayed. If not being mapped, it ca= n be >> > > evicted and make room for X, etc. >> > > >> > > To make this work, the BO's memory is mapped and unmapped in >> > > drm_fb_helper_dirty_work() before being updated from the shadow FB. = [1] >> > > That fbdev mapping is established on each screen update, more or les= s. >> > > From my (yet unverified) understanding, this causes the performance >> > > regression in the VM code. >> > > >> > > The original code in mgag200 used to kmap the fbdev BO while it's be= ing >> > > displayed; [2] and the drawing code only mapped it when necessary (i= .e., >> > > not being display). [3] >> > >> > Hm yeah, this vmap/vunmap is going to be pretty bad. We indeed should >> > cache this. >> > >> > > I think this could be added for VRAM helpers as well, but it's still= a >> > > workaround and non-VRAM drivers might also run into such a performan= ce >> > > regression if they use the fbdev's shadow fb. >> > >> > Yeah agreed, fbdev emulation should try to cache the vmap. >> > >> > > Noralf mentioned that there are plans for other DRM clients besides = the >> > > console. They would as well run into similar problems. >> > > >> > > >> The thing is that we'd need another generic fbdev emulation for a= st and >> > > >> mgag200 that handles this issue properly. >> > > > >> > > > Yeah I dont think we want to jump the gun here. If you can try to >> > > > repro locally and profile where we're wasting cpu time I hope that >> > > > should sched a light what's going wrong here. >> > > >> > > I don't have much time ATM and I'm not even officially at work until >> > > late Aug. I'd send you the revert and investigate later. I agree that >> > > using generic fbdev emulation would be preferable. >> > >> > Still not sure that's the right thing to do really. Yes it's a >> > regression, but vm testcases shouldn run a single line of fbcon or drm >> > code. So why this is impacted so heavily by a silly drm change is very >> > confusing to me. We might be papering over a deeper and much more >> > serious issue ... >> >> It's a regression, the right thing is to revert first and then work >> out the right thing to do. > > Sure, but I have no idea whether the testcase is doing something > reasonable. If it's accidentally testing vm scalability of fbdev and > there's no one else doing something this pointless, then it's not a > real bug. Plus I think we're shooting the messenger here. > >> It's likely the test runs on the console and printfs stuff out while run= ning. > > But why did we not regress the world if a few prints on the console > have such a huge impact? We didn't get an entire stream of mails about > breaking stuff ... The regression seems not related to the commit. But we have retested and confirmed the regression. Hard to understand what happens. Best Regards, Huang, Ying --===============4853233690916346718==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Huang\, Ying" Subject: Re: [LKP] [drm/mgag200] 90f479ae51: vm-scalability.median -18.8% regression Date: Wed, 31 Jul 2019 17:25:33 +0800 Message-ID: <87wofyzhbm.fsf@yhuang-dev.intel.com> References: <20190729095155.GP22106@shao2-debian> <1c0bf22b-2c69-6b45-f700-ed832a3a5c17@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id C1945899BE for ; Wed, 31 Jul 2019 09:25:35 +0000 (UTC) In-Reply-To: (Daniel Vetter's message of "Wed, 31 Jul 2019 10:13:52 +0200") List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: Stephen Rothwell , "Rong A. Chen" , LKP , dri-devel , Thomas Zimmermann List-Id: dri-devel@lists.freedesktop.org SGksIERhbmllbCwKCkRhbmllbCBWZXR0ZXIgPGRhbmllbEBmZndsbC5jaD4gd3JpdGVzOgoKPiBP biBUdWUsIEp1bCAzMCwgMjAxOSBhdCAxMDoyNyBQTSBEYXZlIEFpcmxpZSA8YWlybGllZEBnbWFp bC5jb20+IHdyb3RlOgo+Pgo+PiBPbiBXZWQsIDMxIEp1bCAyMDE5IGF0IDA1OjAwLCBEYW5pZWwg VmV0dGVyIDxkYW5pZWxAZmZ3bGwuY2g+IHdyb3RlOgo+PiA+Cj4+ID4gT24gVHVlLCBKdWwgMzAs IDIwMTkgYXQgODo1MCBQTSBUaG9tYXMgWmltbWVybWFubiA8dHppbW1lcm1hbm5Ac3VzZS5kZT4g d3JvdGU6Cj4+ID4gPgo+PiA+ID4gSGkKPj4gPiA+Cj4+ID4gPiBBbSAzMC4wNy4xOSB1bSAyMDox MiBzY2hyaWViIERhbmllbCBWZXR0ZXI6Cj4+ID4gPiA+IE9uIFR1ZSwgSnVsIDMwLCAyMDE5IGF0 IDc6NTAgUE0gVGhvbWFzIFppbW1lcm1hbm4gPHR6aW1tZXJtYW5uQHN1c2UuZGU+IHdyb3RlOgo+ PiA+ID4gPj4gQW0gMjkuMDcuMTkgdW0gMTE6NTEgc2NocmllYiBrZXJuZWwgdGVzdCByb2JvdDoK Pj4gPiA+ID4+PiBHcmVldGluZywKPj4gPiA+ID4+Pgo+PiA+ID4gPj4+IEZZSSwgd2Ugbm90aWNl ZCBhIC0xOC44JSByZWdyZXNzaW9uIG9mIHZtLXNjYWxhYmlsaXR5Lm1lZGlhbiBkdWUgdG8gY29t bWl0Oj4KPj4gPiA+ID4+Pgo+PiA+ID4gPj4+IGNvbW1pdDogOTBmNDc5YWU1MWFmYTQ1ZWZhYjk3 YWZkZGU5Yjk0Yjk2NjBkZDNlNCAoImRybS9tZ2FnMjAwOiBSZXBsYWNlIHN0cnVjdCBtZ2FfZmJk ZXYgd2l0aCBnZW5lcmljIGZyYW1lYnVmZmVyIGVtdWxhdGlvbiIpCj4+ID4gPiA+Pj4gaHR0cHM6 Ly9rZXJuZWwuZ29vZ2xlc291cmNlLmNvbS9wdWIvc2NtL2xpbnV4L2tlcm5lbC9naXQvbmV4dC9s aW51eC1uZXh0LmdpdCBtYXN0ZXIKPj4gPiA+ID4+Cj4+ID4gPiA+PiBEYW5pZWwsIE5vcmFsZiwg d2UgbWF5IGhhdmUgdG8gcmV2ZXJ0IHRoaXMgcGF0Y2guCj4+ID4gPiA+Pgo+PiA+ID4gPj4gSSBl eHBlY3RlZCBzb21lIGNoYW5nZSBpbiBkaXNwbGF5IHBlcmZvcm1hbmNlLCBidXQgbm90IGluIFZN LiBTaW5jZSBpdCdzCj4+ID4gPiA+PiBhIHNlcnZlciBjaGlwc2V0LCBwcm9iYWJseSBubyBvbmUg Y2FyZXMgbXVjaCBhYm91dCBkaXNwbGF5IHBlcmZvcm1hbmNlLgo+PiA+ID4gPj4gU28gdGhhdCBz ZWVtZWQgbGlrZSBhIGdvb2QgdHJhZGUtb2ZmIGZvciByZS11c2luZyBzaGFyZWQgY29kZS4KPj4g PiA+ID4+Cj4+ID4gPiA+PiBQYXJ0IG9mIHRoZSBwYXRjaCBzZXQgaXMgdGhhdCB0aGUgZ2VuZXJp YyBmYiBlbXVsYXRpb24gbm93IG1hcHMgYW5kCj4+ID4gPiA+PiB1bm1hcHMgdGhlIGZiZGV2IEJP IHdoZW4gdXBkYXRpbmcgdGhlIHNjcmVlbi4gSSBndWVzcyB0aGF0J3MgdGhlIGNhdXNlCj4+ID4g PiA+PiBvZiB0aGUgcGVyZm9ybWFuY2UgcmVncmVzc2lvbi4gQW5kIGl0IHNob3VsZCBiZSB2aXNp YmxlIHdpdGggb3RoZXIKPj4gPiA+ID4+IGRyaXZlcnMgYXMgd2VsbCBpZiB0aGV5IHVzZSBhIHNo YWRvdyBGQiBmb3IgZmJkZXYgZW11bGF0aW9uLgo+PiA+ID4gPgo+PiA+ID4gPiBGb3IgZmJjb24g d2Ugc2hvdWxkIG5lZWQgdG8gZG8gYW55IG1hcHMvdW5hbXBzIGF0IGFsbCwgdGhpcyBpcyBmb3Ig dGhlCj4+ID4gPiA+IGZiZGV2IG1tYXAgc3VwcG9ydCBvbmx5LiBJZiB0aGUgdGVzdGNhc2UgbWVu dGlvbmVkIGhlcmUgdGVzdHMgZmJkZXYKPj4gPiA+ID4gbW1hcCBoYW5kbGluZyBpdCdzIHByZXR0 eSBiYWRseSBtaXNuYW1lZCA6LSkgQW5kIGFzIGxvbmcgYXMgeW91IGRvbid0Cj4+ID4gPiA+IGhh dmUgYW4gZmJkZXYgbW1hcCB0aGVyZSBzaG91bGRuJ3QgYmUgYW55IGltcGFjdCBhdCBhbGwuCj4+ ID4gPgo+PiA+ID4gVGhlIGFzdCBhbmQgbWdhZzIwMCBoYXZlIG9ubHkgYSBmZXcgTWlCIG9mIFZS QU0sIHNvIHdlIGhhdmUgdG8gZ2V0IHRoZQo+PiA+ID4gZmJkZXYgQk8gb3V0IGlmIGl0J3Mgbm90 IGJlaW5nIGRpc3BsYXllZC4gSWYgbm90IGJlaW5nIG1hcHBlZCwgaXQgY2FuIGJlCj4+ID4gPiBl dmljdGVkIGFuZCBtYWtlIHJvb20gZm9yIFgsIGV0Yy4KPj4gPiA+Cj4+ID4gPiBUbyBtYWtlIHRo aXMgd29yaywgdGhlIEJPJ3MgbWVtb3J5IGlzIG1hcHBlZCBhbmQgdW5tYXBwZWQgaW4KPj4gPiA+ IGRybV9mYl9oZWxwZXJfZGlydHlfd29yaygpIGJlZm9yZSBiZWluZyB1cGRhdGVkIGZyb20gdGhl IHNoYWRvdyBGQi4gWzFdCj4+ID4gPiBUaGF0IGZiZGV2IG1hcHBpbmcgaXMgZXN0YWJsaXNoZWQg b24gZWFjaCBzY3JlZW4gdXBkYXRlLCBtb3JlIG9yIGxlc3MuCj4+ID4gPiBGcm9tIG15ICh5ZXQg dW52ZXJpZmllZCkgdW5kZXJzdGFuZGluZywgdGhpcyBjYXVzZXMgdGhlIHBlcmZvcm1hbmNlCj4+ ID4gPiByZWdyZXNzaW9uIGluIHRoZSBWTSBjb2RlLgo+PiA+ID4KPj4gPiA+IFRoZSBvcmlnaW5h bCBjb2RlIGluIG1nYWcyMDAgdXNlZCB0byBrbWFwIHRoZSBmYmRldiBCTyB3aGlsZSBpdCdzIGJl aW5nCj4+ID4gPiBkaXNwbGF5ZWQ7IFsyXSBhbmQgdGhlIGRyYXdpbmcgY29kZSBvbmx5IG1hcHBl ZCBpdCB3aGVuIG5lY2Vzc2FyeSAoaS5lLiwKPj4gPiA+IG5vdCBiZWluZyBkaXNwbGF5KS4gWzNd Cj4+ID4KPj4gPiBIbSB5ZWFoLCB0aGlzIHZtYXAvdnVubWFwIGlzIGdvaW5nIHRvIGJlIHByZXR0 eSBiYWQuIFdlIGluZGVlZCBzaG91bGQKPj4gPiBjYWNoZSB0aGlzLgo+PiA+Cj4+ID4gPiBJIHRo aW5rIHRoaXMgY291bGQgYmUgYWRkZWQgZm9yIFZSQU0gaGVscGVycyBhcyB3ZWxsLCBidXQgaXQn cyBzdGlsbCBhCj4+ID4gPiB3b3JrYXJvdW5kIGFuZCBub24tVlJBTSBkcml2ZXJzIG1pZ2h0IGFs c28gcnVuIGludG8gc3VjaCBhIHBlcmZvcm1hbmNlCj4+ID4gPiByZWdyZXNzaW9uIGlmIHRoZXkg dXNlIHRoZSBmYmRldidzIHNoYWRvdyBmYi4KPj4gPgo+PiA+IFllYWggYWdyZWVkLCBmYmRldiBl bXVsYXRpb24gc2hvdWxkIHRyeSB0byBjYWNoZSB0aGUgdm1hcC4KPj4gPgo+PiA+ID4gTm9yYWxm IG1lbnRpb25lZCB0aGF0IHRoZXJlIGFyZSBwbGFucyBmb3Igb3RoZXIgRFJNIGNsaWVudHMgYmVz aWRlcyB0aGUKPj4gPiA+IGNvbnNvbGUuIFRoZXkgd291bGQgYXMgd2VsbCBydW4gaW50byBzaW1p bGFyIHByb2JsZW1zLgo+PiA+ID4KPj4gPiA+ID4+IFRoZSB0aGluZyBpcyB0aGF0IHdlJ2QgbmVl ZCBhbm90aGVyIGdlbmVyaWMgZmJkZXYgZW11bGF0aW9uIGZvciBhc3QgYW5kCj4+ID4gPiA+PiBt Z2FnMjAwIHRoYXQgaGFuZGxlcyB0aGlzIGlzc3VlIHByb3Blcmx5Lgo+PiA+ID4gPgo+PiA+ID4g PiBZZWFoIEkgZG9udCB0aGluayB3ZSB3YW50IHRvIGp1bXAgdGhlIGd1biBoZXJlLiAgSWYgeW91 IGNhbiB0cnkgdG8KPj4gPiA+ID4gcmVwcm8gbG9jYWxseSBhbmQgcHJvZmlsZSB3aGVyZSB3ZSdy ZSB3YXN0aW5nIGNwdSB0aW1lIEkgaG9wZSB0aGF0Cj4+ID4gPiA+IHNob3VsZCBzY2hlZCBhIGxp Z2h0IHdoYXQncyBnb2luZyB3cm9uZyBoZXJlLgo+PiA+ID4KPj4gPiA+IEkgZG9uJ3QgaGF2ZSBt dWNoIHRpbWUgQVRNIGFuZCBJJ20gbm90IGV2ZW4gb2ZmaWNpYWxseSBhdCB3b3JrIHVudGlsCj4+ ID4gPiBsYXRlIEF1Zy4gSSdkIHNlbmQgeW91IHRoZSByZXZlcnQgYW5kIGludmVzdGlnYXRlIGxh dGVyLiBJIGFncmVlIHRoYXQKPj4gPiA+IHVzaW5nIGdlbmVyaWMgZmJkZXYgZW11bGF0aW9uIHdv dWxkIGJlIHByZWZlcmFibGUuCj4+ID4KPj4gPiBTdGlsbCBub3Qgc3VyZSB0aGF0J3MgdGhlIHJp Z2h0IHRoaW5nIHRvIGRvIHJlYWxseS4gWWVzIGl0J3MgYQo+PiA+IHJlZ3Jlc3Npb24sIGJ1dCB2 bSB0ZXN0Y2FzZXMgc2hvdWxkbiBydW4gYSBzaW5nbGUgbGluZSBvZiBmYmNvbiBvciBkcm0KPj4g PiBjb2RlLiBTbyB3aHkgdGhpcyBpcyBpbXBhY3RlZCBzbyBoZWF2aWx5IGJ5IGEgc2lsbHkgZHJt IGNoYW5nZSBpcyB2ZXJ5Cj4+ID4gY29uZnVzaW5nIHRvIG1lLiBXZSBtaWdodCBiZSBwYXBlcmlu ZyBvdmVyIGEgZGVlcGVyIGFuZCBtdWNoIG1vcmUKPj4gPiBzZXJpb3VzIGlzc3VlIC4uLgo+Pgo+ PiBJdCdzIGEgcmVncmVzc2lvbiwgdGhlIHJpZ2h0IHRoaW5nIGlzIHRvIHJldmVydCBmaXJzdCBh bmQgdGhlbiB3b3JrCj4+IG91dCB0aGUgcmlnaHQgdGhpbmcgdG8gZG8uCj4KPiBTdXJlLCBidXQg SSBoYXZlIG5vIGlkZWEgd2hldGhlciB0aGUgdGVzdGNhc2UgaXMgZG9pbmcgc29tZXRoaW5nCj4g cmVhc29uYWJsZS4gSWYgaXQncyBhY2NpZGVudGFsbHkgdGVzdGluZyB2bSBzY2FsYWJpbGl0eSBv ZiBmYmRldiBhbmQKPiB0aGVyZSdzIG5vIG9uZSBlbHNlIGRvaW5nIHNvbWV0aGluZyB0aGlzIHBv aW50bGVzcywgdGhlbiBpdCdzIG5vdCBhCj4gcmVhbCBidWcuIFBsdXMgSSB0aGluayB3ZSdyZSBz aG9vdGluZyB0aGUgbWVzc2VuZ2VyIGhlcmUuCj4KPj4gSXQncyBsaWtlbHkgdGhlIHRlc3QgcnVu cyBvbiB0aGUgY29uc29sZSBhbmQgcHJpbnRmcyBzdHVmZiBvdXQgd2hpbGUgcnVubmluZy4KPgo+ IEJ1dCB3aHkgZGlkIHdlIG5vdCByZWdyZXNzIHRoZSB3b3JsZCBpZiBhIGZldyBwcmludHMgb24g dGhlIGNvbnNvbGUKPiBoYXZlIHN1Y2ggYSBodWdlIGltcGFjdD8gV2UgZGlkbid0IGdldCBhbiBl bnRpcmUgc3RyZWFtIG9mIG1haWxzIGFib3V0Cj4gYnJlYWtpbmcgc3R1ZmYgLi4uCgpUaGUgcmVn cmVzc2lvbiBzZWVtcyBub3QgcmVsYXRlZCB0byB0aGUgY29tbWl0LiAgQnV0IHdlIGhhdmUgcmV0 ZXN0ZWQKYW5kIGNvbmZpcm1lZCB0aGUgcmVncmVzc2lvbi4gIEhhcmQgdG8gdW5kZXJzdGFuZCB3 aGF0IGhhcHBlbnMuCgpCZXN0IFJlZ2FyZHMsCkh1YW5nLCBZaW5nCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==