Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-08 Thread Marek Olšák
Alright so I think this is almost ready to go. My repository contains
an update from today (mainly adding Brian's svga fixes and some fixes
for Nine).

These are projects I haven't heard anything from since I last mentioned them:
- etnaviv
- freedreno
- virgl
- nine

I suppose they would be OK with doing the testing in master. My
current plan is to push this on Tuesday evening unless I get more
feedback.

Marek



On Sat, Apr 29, 2017 at 1:12 AM, Marek Olšák  wrote:
> Hi,
>
> This series shrinks various gallium structures and removes
> set_index_buffer in order to decrease CPU overhead.
>
>
> PART 1: Performance results
>
> All testing below was done with radeonsi, and I used the drawoverhead
> microbenchmark from mesa/demos ported to piglit and using GL 3.0
> Compat and GL 3.2 Core (same GL states in both contexts).
>
> 1) Performance difference for the removal of set_index_buffer only:
>
>   Compat: DrawElements: 5.1 -> 5.3 million draws/second
>   Core:   DrawElements: 5.1 -> 5.5 million draws/second
>
> The result is better for the core profile where u_vbuf is disabled.
>
>
> 2) Performance difference with all 4 patches (Core profile only)
>
>DrawArrays: 8.3 -> 8.5 million draws/second
>DrawElements: 5.2 -> 5.8 million draws/second
>
>
> 3) Performance difference with threaded Gallium (Core profile only):
>
>DrawElements: 5.9 -> 7.1 million draws/second
>
> Threaded Gallium is still work in progress and might require
> a non-trivial amount of driver work.
>
>
> PART 2: Call for testing
>
> These drivers have been tested:
> - ddebug
> - llvmpipe
> - r300 (also with SWTCL)
> - r600
> - radeonsi
> - softpipe
> - trace
>
> These drivers need testing:
> - etnaviv
> - freedreno
> - nv30
> - nv50
> - nvc0
> - svga
> - swr
> - vc4
> - virgl
>
> The following state trackers might need testing:
> - nine
>
> You can get the patches by fetching:
>   git://people.freedesktop.org/~mareko/mesa gallium-cleanup
>
> I'd like to ask to you for testing drivers that I couldn't test.
> Please let me know when you're done testing and if things are good.
> After that, I'll push everything assuming the code review goes well.
> You can also ignore this if you don't mind fixing your driver in
> the master branch later.
>
> Thanks,
>
> Marek
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-04 Thread Brian Paul

On 05/03/2017 10:37 PM, Brian Paul wrote:

On 05/01/2017 10:03 AM, Brian Paul wrote:

On 05/01/2017 08:32 AM, Brian Paul wrote:

On 04/28/2017 05:12 PM, Marek Olšák wrote:

Hi,

This series shrinks various gallium structures and removes
set_index_buffer in order to decrease CPU overhead.


PART 1: Performance results

All testing below was done with radeonsi, and I used the drawoverhead
microbenchmark from mesa/demos ported to piglit and using GL 3.0
Compat and GL 3.2 Core (same GL states in both contexts).

1) Performance difference for the removal of set_index_buffer only:

   Compat: DrawElements: 5.1 -> 5.3 million draws/second
   Core:   DrawElements: 5.1 -> 5.5 million draws/second

The result is better for the core profile where u_vbuf is disabled.


2) Performance difference with all 4 patches (Core profile only)

DrawArrays: 8.3 -> 8.5 million draws/second
DrawElements: 5.2 -> 5.8 million draws/second


3) Performance difference with threaded Gallium (Core profile only):

DrawElements: 5.9 -> 7.1 million draws/second

Threaded Gallium is still work in progress and might require
a non-trivial amount of driver work.


PART 2: Call for testing

These drivers have been tested:
- ddebug
- llvmpipe
- r300 (also with SWTCL)
- r600
- radeonsi
- softpipe
- trace

These drivers need testing:
- etnaviv
- freedreno
- nv30
- nv50
- nvc0
- svga
- swr
- vc4
- virgl

The following state trackers might need testing:
- nine

You can get the patches by fetching:
   git://people.freedesktop.org/~mareko/mesa gallium-cleanup

I'd like to ask to you for testing drivers that I couldn't test.
Please let me know when you're done testing and if things are good.
After that, I'll push everything assuming the code review goes well.
You can also ignore this if you don't mind fixing your driver in
the master branch later.


With our VMware driver there's a whole bunch of clipflat failures.  I'll
try to see if it's something simple, otherwise, it may take a day or two
to look closer.


I think the attached patch fixes things (it should be merged with 3/4).
  I need to do another full piglit run, at least...


I see two more regressions from master:

spec/nv_primitive_restart/primitive-restart-vbo_combined_vertex_and_index

and

spec/!opengl 3.1/primitive-restart-xfb flush: pass fail

I spent a little time debugging without success.  I'm not sure when I'll
have time to resume.  I guess you can push the changes anyway and I'll
try to patch things up later.


OK, I think I found the problem.  The following patch fixes the two 
regressions:


diff --git a/src/gallium/auxiliary/util/u_prim_restart.c 
b/src/gallium/auxiliary/util/u_prim_restart.c

index b7675fa..9ff93a7 100644
--- a/src/gallium/auxiliary/util/u_prim_restart.c
+++ b/src/gallium/auxiliary/util/u_prim_restart.c
@@ -227,7 +227,7 @@ util_draw_vbo_without_prim_restart(struct 
pipe_context *context,

   } \
}

-   start = info->start;
+   start = 0;
count = 0;
switch (info->index_size) {
case 1:

I believe this is a long-standing bug in this function which just 
happened to get exposed by the index buffer change.  Previously, 
info->start was zero but the index buffer offset was non-zero.  Now, 
info->start is non-zero because the index buffer offset has gone away.


So on the first iteration of the scanning loop, we compute info->start + 
start to get the first sub-primitive location.  That wound up being 
2*info->start which is clearly wrong.


I'll do another full piglit run, but hopefully this should be the last 
change needed.


-Brian

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-03 Thread Brian Paul

On 05/01/2017 10:03 AM, Brian Paul wrote:

On 05/01/2017 08:32 AM, Brian Paul wrote:

On 04/28/2017 05:12 PM, Marek Olšák wrote:

Hi,

This series shrinks various gallium structures and removes
set_index_buffer in order to decrease CPU overhead.


PART 1: Performance results

All testing below was done with radeonsi, and I used the drawoverhead
microbenchmark from mesa/demos ported to piglit and using GL 3.0
Compat and GL 3.2 Core (same GL states in both contexts).

1) Performance difference for the removal of set_index_buffer only:

   Compat: DrawElements: 5.1 -> 5.3 million draws/second
   Core:   DrawElements: 5.1 -> 5.5 million draws/second

The result is better for the core profile where u_vbuf is disabled.


2) Performance difference with all 4 patches (Core profile only)

DrawArrays: 8.3 -> 8.5 million draws/second
DrawElements: 5.2 -> 5.8 million draws/second


3) Performance difference with threaded Gallium (Core profile only):

DrawElements: 5.9 -> 7.1 million draws/second

Threaded Gallium is still work in progress and might require
a non-trivial amount of driver work.


PART 2: Call for testing

These drivers have been tested:
- ddebug
- llvmpipe
- r300 (also with SWTCL)
- r600
- radeonsi
- softpipe
- trace

These drivers need testing:
- etnaviv
- freedreno
- nv30
- nv50
- nvc0
- svga
- swr
- vc4
- virgl

The following state trackers might need testing:
- nine

You can get the patches by fetching:
   git://people.freedesktop.org/~mareko/mesa gallium-cleanup

I'd like to ask to you for testing drivers that I couldn't test.
Please let me know when you're done testing and if things are good.
After that, I'll push everything assuming the code review goes well.
You can also ignore this if you don't mind fixing your driver in
the master branch later.


With our VMware driver there's a whole bunch of clipflat failures.  I'll
try to see if it's something simple, otherwise, it may take a day or two
to look closer.


I think the attached patch fixes things (it should be merged with 3/4).
  I need to do another full piglit run, at least...


I see two more regressions from master:

spec/nv_primitive_restart/primitive-restart-vbo_combined_vertex_and_index

and

spec/!opengl 3.1/primitive-restart-xfb flush: pass fail

I spent a little time debugging without success.  I'm not sure when I'll 
have time to resume.  I guess you can push the changes anyway and I'll 
try to patch things up later.


-Brian

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-03 Thread Cherniak, Bruce

> On May 2, 2017, at 5:33 PM, Marek Olšák  wrote:
> 
> On Wed, May 3, 2017 at 12:18 AM, Cherniak, Bruce
>  wrote:
>> 
>> On May 2, 2017, at 4:11 PM, Cherniak, Bruce 
>> wrote:
>> 
>> 
>> On May 2, 2017, at 3:41 PM, Cherniak, Bruce 
>> wrote:
>> 
>> PART 2: Call for testing
>> 
>> These drivers have been tested:
>> - ddebug
>> - llvmpipe
>> - r300 (also with SWTCL)
>> - r600
>> - radeonsi
>> - softpipe
>> - trace
>> 
>> These drivers need testing:
>> - etnaviv
>> - freedreno
>> - nv30
>> - nv50
>> - nvc0
>> - svga
>> - swr
>> - vc4
>> - virgl
>> 
>> 
>> Tested on swr.  No piglit regressions.
>> 
>> 
>> Alt-fact, I spoke too soon.  Seeing a couple of crashes in
>> gl-2.0-vertexattribpointer tests.  Tracking down now.
>> 
>> 
>> All clear.
>> 
>> Using your repo with branch “gallium-cleanup” I was seeing some crashes that
>> we had fixed some time back.
>> Not sure what’s going on there.  But, our proxy doesn’t pass “git” protocol,
>> so I had a hard time pulling that
>> repo.  Could very well have created a “franken-mess”(tm).
>> 
>> Using what patchwork calls your “rev 1” series applied to tip, all works
>> fine.
>> (What it calls “rev 2” isn’t really viable.)

I found my confusion.  I compared results from gallium-cleanup versus master.
We made some fixes that are in master, but not yet in your gallium-cleanup 
branch.

One thing that concerns me is the change you needed to make to swr_draw.cpp
swr_update_derived().

/* Set vertex & index buffers */
/* (using draw info if called by swr_draw_vbo) */

-   if (ctx->dirty & SWR_NEW_VERTEX) {
+   /* TODO: This is always true, because the index buffer comes from
+* pipe_draw_info.
+*/
+   if (1 || ctx->dirty & SWR_NEW_VERTEX) {

This is going to cause revalidation of vertex/index buffers every draw & clear, 
even
for the case of vbo and non-indexed draws.  I can see this affecting 
performance.

Not something we expect you to address in this patch, however.  We’ll get 
around to it.

Thanks,
Bruce
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-02 Thread Marek Olšák
On Wed, May 3, 2017 at 12:18 AM, Cherniak, Bruce
 wrote:
>
> On May 2, 2017, at 4:11 PM, Cherniak, Bruce 
> wrote:
>
>
> On May 2, 2017, at 3:41 PM, Cherniak, Bruce 
> wrote:
>
> PART 2: Call for testing
>
> These drivers have been tested:
> - ddebug
> - llvmpipe
> - r300 (also with SWTCL)
> - r600
> - radeonsi
> - softpipe
> - trace
>
> These drivers need testing:
> - etnaviv
> - freedreno
> - nv30
> - nv50
> - nvc0
> - svga
> - swr
> - vc4
> - virgl
>
>
> Tested on swr.  No piglit regressions.
>
>
> Alt-fact, I spoke too soon.  Seeing a couple of crashes in
> gl-2.0-vertexattribpointer tests.  Tracking down now.
>
>
> All clear.
>
> Using your repo with branch “gallium-cleanup” I was seeing some crashes that
> we had fixed some time back.
> Not sure what’s going on there.  But, our proxy doesn’t pass “git” protocol,
> so I had a hard time pulling that
> repo.  Could very well have created a “franken-mess”(tm).
>
> Using what patchwork calls your “rev 1” series applied to tip, all works
> fine.
> (What it calls “rev 2” isn’t really viable.)
>
> Question: Is it possible to pull “people.freedesktop.org” repos using
> something other than “git” protocol?
> I wasn’t able to get it to work with https or http.

You can also replace "git" with "ssh" if you have an FDO account.

Marek
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-02 Thread Cherniak, Bruce

On May 2, 2017, at 4:11 PM, Cherniak, Bruce 
> wrote:


On May 2, 2017, at 3:41 PM, Cherniak, Bruce 
> wrote:

PART 2: Call for testing

These drivers have been tested:
- ddebug
- llvmpipe
- r300 (also with SWTCL)
- r600
- radeonsi
- softpipe
- trace

These drivers need testing:
- etnaviv
- freedreno
- nv30
- nv50
- nvc0
- svga
- swr
- vc4
- virgl

Tested on swr.  No piglit regressions.

Alt-fact, I spoke too soon.  Seeing a couple of crashes in 
gl-2.0-vertexattribpointer tests.  Tracking down now.

All clear.

Using your repo with branch “gallium-cleanup” I was seeing some crashes that we 
had fixed some time back.
Not sure what’s going on there.  But, our proxy doesn’t pass “git” protocol, so 
I had a hard time pulling that
repo.  Could very well have created a “franken-mess”(tm).

Using what patchwork calls your “rev 1” series applied to tip, all works fine.
(What it calls “rev 2” isn’t really viable.)

Question: Is it possible to pull 
“people.freedesktop.org” repos using something 
other than “git” protocol?
I wasn’t able to get it to work with https or http.

Bruce
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-02 Thread Cherniak, Bruce

> On May 2, 2017, at 3:41 PM, Cherniak, Bruce  wrote:
> 
>> PART 2: Call for testing
>> 
>> These drivers have been tested:
>> - ddebug
>> - llvmpipe
>> - r300 (also with SWTCL)
>> - r600
>> - radeonsi
>> - softpipe
>> - trace
>> 
>> These drivers need testing:
>> - etnaviv
>> - freedreno
>> - nv30
>> - nv50
>> - nvc0
>> - svga
>> - swr
>> - vc4
>> - virgl
> 
> Tested on swr.  No piglit regressions.

Alt-fact, I spoke too soon.  Seeing a couple of crashes in 
gl-2.0-vertexattribpointer tests.  Tracking down now.
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-02 Thread Cherniak, Bruce
> PART 2: Call for testing
> 
> These drivers have been tested:
> - ddebug
> - llvmpipe
> - r300 (also with SWTCL)
> - r600
> - radeonsi
> - softpipe
> - trace
> 
> These drivers need testing:
> - etnaviv
> - freedreno
> - nv30
> - nv50
> - nvc0
> - svga
> - swr
> - vc4
> - virgl

Tested on swr.  No piglit regressions.

Bruce

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-02 Thread Eric Anholt
Marek Olšák  writes:
> PART 2: Call for testing
>
> These drivers have been tested:
> - ddebug
> - llvmpipe
> - r300 (also with SWTCL)
> - r600
> - radeonsi
> - softpipe
> - trace
>
> These drivers need testing:
> - etnaviv
> - freedreno
> - nv30
> - nv50
> - nvc0
> - svga
> - swr
> - vc4
> - virgl

Tested commit 05c4ed1f7f89532bfd2f179e3b720692e08c3b86 from your tree on
vc4 -- seems to have fixed
oes_draw_elements_base_vertex-multidrawelements and not regressed
anything in piglit.


signature.asc
Description: PGP signature
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-01 Thread Brian Paul

On 05/01/2017 08:32 AM, Brian Paul wrote:

On 04/28/2017 05:12 PM, Marek Olšák wrote:

Hi,

This series shrinks various gallium structures and removes
set_index_buffer in order to decrease CPU overhead.


PART 1: Performance results

All testing below was done with radeonsi, and I used the drawoverhead
microbenchmark from mesa/demos ported to piglit and using GL 3.0
Compat and GL 3.2 Core (same GL states in both contexts).

1) Performance difference for the removal of set_index_buffer only:

   Compat: DrawElements: 5.1 -> 5.3 million draws/second
   Core:   DrawElements: 5.1 -> 5.5 million draws/second

The result is better for the core profile where u_vbuf is disabled.


2) Performance difference with all 4 patches (Core profile only)

DrawArrays: 8.3 -> 8.5 million draws/second
DrawElements: 5.2 -> 5.8 million draws/second


3) Performance difference with threaded Gallium (Core profile only):

DrawElements: 5.9 -> 7.1 million draws/second

Threaded Gallium is still work in progress and might require
a non-trivial amount of driver work.


PART 2: Call for testing

These drivers have been tested:
- ddebug
- llvmpipe
- r300 (also with SWTCL)
- r600
- radeonsi
- softpipe
- trace

These drivers need testing:
- etnaviv
- freedreno
- nv30
- nv50
- nvc0
- svga
- swr
- vc4
- virgl

The following state trackers might need testing:
- nine

You can get the patches by fetching:
   git://people.freedesktop.org/~mareko/mesa gallium-cleanup

I'd like to ask to you for testing drivers that I couldn't test.
Please let me know when you're done testing and if things are good.
After that, I'll push everything assuming the code review goes well.
You can also ignore this if you don't mind fixing your driver in
the master branch later.


With our VMware driver there's a whole bunch of clipflat failures.  I'll
try to see if it's something simple, otherwise, it may take a day or two
to look closer.


I think the attached patch fixes things (it should be merged with 3/4). 
 I need to do another full piglit run, at least...


-Brian


diff --git a/src/gallium/drivers/svga/svga_pipe_draw.c b/src/gallium/drivers/svga/svga_pipe_draw.c
index 0eb54a5..fea9da1 100644
--- a/src/gallium/drivers/svga/svga_pipe_draw.c
+++ b/src/gallium/drivers/svga/svga_pipe_draw.c
@@ -259,7 +259,7 @@ svga_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info)
 
   /* Avoid leaking the previous hwtnl bias to swtnl */
   svga_hwtnl_set_index_bias( svga->hwtnl, 0 );
-  ret = svga_swtnl_draw_vbo( svga, info, indexbuf );
+  ret = svga_swtnl_draw_vbo(svga, info, indexbuf, index_offset);
}
else {
   if (info->index_size && indexbuf) {
diff --git a/src/gallium/drivers/svga/svga_swtnl.h b/src/gallium/drivers/svga/svga_swtnl.h
index 1c66ab6..0661b71 100644
--- a/src/gallium/drivers/svga/svga_swtnl.h
+++ b/src/gallium/drivers/svga/svga_swtnl.h
@@ -40,7 +40,8 @@ void svga_destroy_swtnl( struct svga_context *svga );
 enum pipe_error
 svga_swtnl_draw_vbo(struct svga_context *svga,
 const struct pipe_draw_info *info,
-struct pipe_resource *indexbuf);
+struct pipe_resource *indexbuf,
+unsigned index_offset);
 
 
 #endif
diff --git a/src/gallium/drivers/svga/svga_swtnl_draw.c b/src/gallium/drivers/svga/svga_swtnl_draw.c
index 1898fa2..8dcfac8 100644
--- a/src/gallium/drivers/svga/svga_swtnl_draw.c
+++ b/src/gallium/drivers/svga/svga_swtnl_draw.c
@@ -39,7 +39,8 @@
 enum pipe_error
 svga_swtnl_draw_vbo(struct svga_context *svga,
 const struct pipe_draw_info *info,
-struct pipe_resource *indexbuf)
+struct pipe_resource *indexbuf,
+unsigned index_offset)
 {
struct pipe_transfer *vb_transfer[PIPE_MAX_ATTRIBS] = { 0 };
struct pipe_transfer *ib_transfer = NULL;
@@ -88,6 +89,7 @@ svga_swtnl_draw_vbo(struct svga_context *svga,
   map = pipe_buffer_map(>pipe, indexbuf,
 PIPE_TRANSFER_READ,
 _transfer);
+  map = (ubyte *) map + index_offset;
   draw_set_indexes(draw,
(const ubyte *) map,
info->index_size, ~0);
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-05-01 Thread Brian Paul

On 04/28/2017 05:12 PM, Marek Olšák wrote:

Hi,

This series shrinks various gallium structures and removes
set_index_buffer in order to decrease CPU overhead.


PART 1: Performance results

All testing below was done with radeonsi, and I used the drawoverhead
microbenchmark from mesa/demos ported to piglit and using GL 3.0
Compat and GL 3.2 Core (same GL states in both contexts).

1) Performance difference for the removal of set_index_buffer only:

   Compat: DrawElements: 5.1 -> 5.3 million draws/second
   Core:   DrawElements: 5.1 -> 5.5 million draws/second

The result is better for the core profile where u_vbuf is disabled.


2) Performance difference with all 4 patches (Core profile only)

DrawArrays: 8.3 -> 8.5 million draws/second
DrawElements: 5.2 -> 5.8 million draws/second


3) Performance difference with threaded Gallium (Core profile only):

DrawElements: 5.9 -> 7.1 million draws/second

Threaded Gallium is still work in progress and might require
a non-trivial amount of driver work.


PART 2: Call for testing

These drivers have been tested:
- ddebug
- llvmpipe
- r300 (also with SWTCL)
- r600
- radeonsi
- softpipe
- trace

These drivers need testing:
- etnaviv
- freedreno
- nv30
- nv50
- nvc0
- svga
- swr
- vc4
- virgl

The following state trackers might need testing:
- nine

You can get the patches by fetching:
   git://people.freedesktop.org/~mareko/mesa gallium-cleanup

I'd like to ask to you for testing drivers that I couldn't test.
Please let me know when you're done testing and if things are good.
After that, I'll push everything assuming the code review goes well.
You can also ignore this if you don't mind fixing your driver in
the master branch later.


With our VMware driver there's a whole bunch of clipflat failures.  I'll 
try to see if it's something simple, otherwise, it may take a day or two 
to look closer.


-Brian

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-04-29 Thread Ilia Mirkin
On Fri, Apr 28, 2017 at 7:12 PM, Marek Olšák  wrote:
> These drivers need testing:
> - nv30
> - nv50
> - nvc0

I'm going to try to test these by Wednesday May 3. If you don't hear
from me (or anyone else regarding these drivers), don't wait.

Cheers,

  -ilia
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-04-29 Thread Edmondo Tommasina
Hi Marek

I've also tested this series with nine and STALKER: CoC. Sadly it segfaults.

Bisected to this patch: "gallium: remove pipe_index_buffer and set_index_buffer"

edmondo


On Sat, Apr 29, 2017 at 1:12 AM, Marek Olšák  wrote:
> Hi,
>
> This series shrinks various gallium structures and removes
> set_index_buffer in order to decrease CPU overhead.
>
>
> PART 1: Performance results
>
> All testing below was done with radeonsi, and I used the drawoverhead
> microbenchmark from mesa/demos ported to piglit and using GL 3.0
> Compat and GL 3.2 Core (same GL states in both contexts).
>
> 1) Performance difference for the removal of set_index_buffer only:
>
>   Compat: DrawElements: 5.1 -> 5.3 million draws/second
>   Core:   DrawElements: 5.1 -> 5.5 million draws/second
>
> The result is better for the core profile where u_vbuf is disabled.
>
>
> 2) Performance difference with all 4 patches (Core profile only)
>
>DrawArrays: 8.3 -> 8.5 million draws/second
>DrawElements: 5.2 -> 5.8 million draws/second
>
>
> 3) Performance difference with threaded Gallium (Core profile only):
>
>DrawElements: 5.9 -> 7.1 million draws/second
>
> Threaded Gallium is still work in progress and might require
> a non-trivial amount of driver work.
>
>
> PART 2: Call for testing
>
> These drivers have been tested:
> - ddebug
> - llvmpipe
> - r300 (also with SWTCL)
> - r600
> - radeonsi
> - softpipe
> - trace
>
> These drivers need testing:
> - etnaviv
> - freedreno
> - nv30
> - nv50
> - nvc0
> - svga
> - swr
> - vc4
> - virgl
>
> The following state trackers might need testing:
> - nine
>
> You can get the patches by fetching:
>   git://people.freedesktop.org/~mareko/mesa gallium-cleanup
>
> I'd like to ask to you for testing drivers that I couldn't test.
> Please let me know when you're done testing and if things are good.
> After that, I'll push everything assuming the code review goes well.
> You can also ignore this if you don't mind fixing your driver in
> the master branch later.
>
> Thanks,
>
> Marek
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-04-29 Thread Mike Lothian
Hi

I've just tested this with Nine. It causes a weird white strobing effect -
I think there are other graphical glitches too but it's hard to tell

I was testing the blizzard app http://eu.battle.net/en/app/ the same also
happens when World of Warcraft is launched

This doesn't happen if I use CSMT rather than Nine

Cheers

Mike

On Sat, 29 Apr 2017 at 00:12 Marek Olšák  wrote:

> Hi,
>
> This series shrinks various gallium structures and removes
> set_index_buffer in order to decrease CPU overhead.
>
>
> PART 1: Performance results
>
> All testing below was done with radeonsi, and I used the drawoverhead
> microbenchmark from mesa/demos ported to piglit and using GL 3.0
> Compat and GL 3.2 Core (same GL states in both contexts).
>
> 1) Performance difference for the removal of set_index_buffer only:
>
>   Compat: DrawElements: 5.1 -> 5.3 million draws/second
>   Core:   DrawElements: 5.1 -> 5.5 million draws/second
>
> The result is better for the core profile where u_vbuf is disabled.
>
>
> 2) Performance difference with all 4 patches (Core profile only)
>
>DrawArrays: 8.3 -> 8.5 million draws/second
>DrawElements: 5.2 -> 5.8 million draws/second
>
>
> 3) Performance difference with threaded Gallium (Core profile only):
>
>DrawElements: 5.9 -> 7.1 million draws/second
>
> Threaded Gallium is still work in progress and might require
> a non-trivial amount of driver work.
>
>
> PART 2: Call for testing
>
> These drivers have been tested:
> - ddebug
> - llvmpipe
> - r300 (also with SWTCL)
> - r600
> - radeonsi
> - softpipe
> - trace
>
> These drivers need testing:
> - etnaviv
> - freedreno
> - nv30
> - nv50
> - nvc0
> - svga
> - swr
> - vc4
> - virgl
>
> The following state trackers might need testing:
> - nine
>
> You can get the patches by fetching:
>   git://people.freedesktop.org/~mareko/mesa gallium-cleanup
>
> I'd like to ask to you for testing drivers that I couldn't test.
> Please let me know when you're done testing and if things are good.
> After that, I'll push everything assuming the code review goes well.
> You can also ignore this if you don't mind fixing your driver in
> the master branch later.
>
> Thanks,
>
> Marek
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [PATCH 0/4] Call for testing: Gallium set_index_buffer removal etc.

2017-04-28 Thread Marek Olšák
Hi,

This series shrinks various gallium structures and removes
set_index_buffer in order to decrease CPU overhead.


PART 1: Performance results

All testing below was done with radeonsi, and I used the drawoverhead
microbenchmark from mesa/demos ported to piglit and using GL 3.0
Compat and GL 3.2 Core (same GL states in both contexts).

1) Performance difference for the removal of set_index_buffer only:

  Compat: DrawElements: 5.1 -> 5.3 million draws/second
  Core:   DrawElements: 5.1 -> 5.5 million draws/second

The result is better for the core profile where u_vbuf is disabled.


2) Performance difference with all 4 patches (Core profile only)

   DrawArrays: 8.3 -> 8.5 million draws/second
   DrawElements: 5.2 -> 5.8 million draws/second


3) Performance difference with threaded Gallium (Core profile only):

   DrawElements: 5.9 -> 7.1 million draws/second

Threaded Gallium is still work in progress and might require
a non-trivial amount of driver work.


PART 2: Call for testing

These drivers have been tested:
- ddebug
- llvmpipe
- r300 (also with SWTCL)
- r600
- radeonsi
- softpipe
- trace

These drivers need testing:
- etnaviv
- freedreno
- nv30
- nv50
- nvc0
- svga
- swr
- vc4
- virgl

The following state trackers might need testing:
- nine

You can get the patches by fetching:
  git://people.freedesktop.org/~mareko/mesa gallium-cleanup

I'd like to ask to you for testing drivers that I couldn't test.
Please let me know when you're done testing and if things are good.
After that, I'll push everything assuming the code review goes well.
You can also ignore this if you don't mind fixing your driver in
the master branch later.

Thanks,

Marek
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev