__i915_spin_request() sucks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

So a few months ago I got an XPS13 laptop, the one with the high res screen. GUI performance was never really that great, I attributed it to coming from a more powerful laptop, and the i915 driving a lot of pixels. But yesterday I browsed from my wife's macbook, and was blown away. Wow, scrolling in chrome SUCKS on the xps13. Not just scrolling, basically anything in chrome. Molasses. So I got sick of it, fired up a quick perf record, did a bunch of stuff in chrome. No super smoking guns, but one thing did stick out - the path leading to __i915_spin_request().

So today, I figured I'd try just killing that spin. If it fails, we'll punt to normal completions, so easy change. And wow, MASSIVE difference. I can now scroll in chrome and not rage! It's like the laptop is 10x faster now.

Ran git blame, and found:

commit 2def4ad99befa25775dd2f714fdd4d92faec6e34
Author: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
Date:   Tue Apr 7 16:20:41 2015 +0100

    drm/i915: Optimistically spin for the request completion

and read the commit message. Doesn't sound that impressive. Especially not for something that screws up interactive performance by a LOT.

What's the deal? Revert?

--
Jens Axboe

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux