Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Chris Wilson
On Thu, Mar 19, 2015 at 09:36:14AM +, Tvrtko Ursulin wrote: Oh right, I got it, but not sure I like it that much. I don't think batch pool implementation is well enough decoupled from the users. batch pool Splitting it this way actually improves decoupling. Well in a way at least where

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Tvrtko Ursulin
On 03/18/2015 05:33 PM, Tvrtko Ursulin wrote: On 03/18/2015 05:27 PM, Chris Wilson wrote: On Wed, Mar 18, 2015 at 04:51:58PM +, Tvrtko Ursulin wrote: On 03/09/2015 09:55 AM, Chris Wilson wrote: diff --git a/drivers/gpu/drm/i915/i915_gem_batch_pool.c

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Tvrtko Ursulin
On 03/19/2015 10:06 AM, Chris Wilson wrote: On Thu, Mar 19, 2015 at 09:36:14AM +, Tvrtko Ursulin wrote: Oh right, I got it, but not sure I like it that much. I don't think batch pool implementation is well enough decoupled from the users. batch pool Splitting it this way actually improves

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Chris Wilson
On Thu, Mar 19, 2015 at 11:39:16AM +, Tvrtko Ursulin wrote: On 03/19/2015 10:06 AM, Chris Wilson wrote: On Thu, Mar 19, 2015 at 09:36:14AM +, Tvrtko Ursulin wrote: Well in a way at least where when we talk about LRU ordering, it depends on retiring working properly and that is not

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Tvrtko Ursulin
On 03/19/2015 11:46 AM, Chris Wilson wrote: On Thu, Mar 19, 2015 at 11:39:16AM +, Tvrtko Ursulin wrote: On 03/19/2015 10:06 AM, Chris Wilson wrote: On Thu, Mar 19, 2015 at 09:36:14AM +, Tvrtko Ursulin wrote: Well in a way at least where when we talk about LRU ordering, it depends on

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Chris Wilson
On Thu, Mar 19, 2015 at 11:58:17AM +, Tvrtko Ursulin wrote: How about retire all rings and then the inactive batch search with a global pool becomes only O(num_rings) at worst? Might be worth saving memory resource (multiple pools) vs. trivial traversal like that? There isn't a memory

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Tvrtko Ursulin
On 03/19/2015 12:04 PM, Chris Wilson wrote: On Thu, Mar 19, 2015 at 11:58:17AM +, Tvrtko Ursulin wrote: How about retire all rings and then the inactive batch search with a global pool becomes only O(num_rings) at worst? Might be worth saving memory resource (multiple pools) vs. trivial

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-19 Thread Chris Wilson
On Thu, Mar 19, 2015 at 02:01:37PM +, Tvrtko Ursulin wrote: On 03/19/2015 12:04 PM, Chris Wilson wrote: On Thu, Mar 19, 2015 at 11:58:17AM +, Tvrtko Ursulin wrote: How about retire all rings and then the inactive batch search with a global pool becomes only O(num_rings) at worst?

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-18 Thread Tvrtko Ursulin
On 03/09/2015 09:55 AM, Chris Wilson wrote: I woke up one morning and found 50k objects sitting in the batch pool and every search seemed to iterate the entire list... Painting the screen in oils would provide a more fluid display. One issue with the current design is that we only check for

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-18 Thread Chris Wilson
On Wed, Mar 18, 2015 at 04:51:58PM +, Tvrtko Ursulin wrote: On 03/09/2015 09:55 AM, Chris Wilson wrote: I woke up one morning and found 50k objects sitting in the batch pool and every search seemed to iterate the entire list... Painting the screen in oils would provide a more fluid

Re: [Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-18 Thread Tvrtko Ursulin
On 03/18/2015 05:27 PM, Chris Wilson wrote: On Wed, Mar 18, 2015 at 04:51:58PM +, Tvrtko Ursulin wrote: On 03/09/2015 09:55 AM, Chris Wilson wrote: diff --git a/drivers/gpu/drm/i915/i915_gem_batch_pool.c b/drivers/gpu/drm/i915/i915_gem_batch_pool.c index 21f3356cc0ab..1287abf55b84 100644

[Intel-gfx] [PATCH 3/6] drm/i915: Split the batch pool by engine

2015-03-09 Thread Chris Wilson
I woke up one morning and found 50k objects sitting in the batch pool and every search seemed to iterate the entire list... Painting the screen in oils would provide a more fluid display. One issue with the current design is that we only check for retirements on the current ring when preparing to