[Mesa-dev] [RFC PATCH 8/8] nv50: enable GL_AMD_performance_monitor

2015-06-22 Thread Samuel Pitoiset
This exposes a group of global performance counters that enables GL_AMD_performance_monitor. All piglit tests are okay. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 35 ++ src/gallium/drivers/nouveau/nv50/nv50_screen.c | 1 + src

[Mesa-dev] [RFC PATCH 5/8] nv50: prevent NULL pointer dereference with pipe_query functions

2015-06-22 Thread Samuel Pitoiset
This may happen when nv50_query_create() fails to create a new query. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_query.c b/src/gallium

[Mesa-dev] [RFC PATCH 2/8] nv50: allocate a software object class

2015-06-22 Thread Samuel Pitoiset
This will allow to monitor global performance counters through the command stream of the GPU instead of using ioctls. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 11 +++ src/gallium/drivers/nouveau/nv50/nv50_screen.h | 1 + src/gallium/drivers

[Mesa-dev] [RFC PATCH 3/8] nv50: allocate and map a notifier buffer object for PM

2015-06-22 Thread Samuel Pitoiset
ng in order to prevent stalls when reading queries. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 29 ++ src/gallium/drivers/nouveau/nv50/nv50_screen.h | 6 ++ 2 files changed, 35 insertions(+) diff --git a/src/gallium/drivers/no

[Mesa-dev] [RFC PATCH 7/8] nv50: expose global performance counters to the HUD

2015-06-22 Thread Samuel Pitoiset
Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 41 ++ src/gallium/drivers/nouveau/nv50/nv50_screen.c | 1 + src/gallium/drivers/nouveau/nv50/nv50_screen.h | 3 ++ 3 files changed, 45 insertions(+) diff --git a/src/gallium/drivers

[Mesa-dev] [RFC PATCH 6/8] nv50: add support for compute/graphics global performance counters

2015-06-22 Thread Samuel Pitoiset
e improved later. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 1057 +++- src/gallium/drivers/nouveau/nv50/nv50_screen.h | 35 + 2 files changed, 1087 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_

[Mesa-dev] [RFC PATCH 0/8] nv50: expose global performance counters

2015-06-22 Thread Samuel Pitoiset
An other series which exposes global performance counters for Fermi and Kepler will be submitted once I have got enough reviews for this one. Feel free to make a review. Thanks, Samuel. Samuel Pitoiset (8): nouveau: implement the nvif hardware performance counters interface nv50: allocate

[Mesa-dev] [RFC PATCH 4/8] nv50: configure the ring buffer for reading back PM counters

2015-06-22 Thread Samuel Pitoiset
To write data at the right offset, the kernel has to know some parameters of this ring buffer, like the number of domains and the maximum number of queries. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 7 +++ 1 file changed, 7 insertions(+) diff --git

[Mesa-dev] [RFC PATCH 1/8] nouveau: implement the nvif hardware performance counters interface

2015-06-22 Thread Samuel Pitoiset
This commit implements the base interface for hardware performance counters that will be shared between nv50 and nvc0 drivers. TODO: Bump libdrm version of mesa when nvif will be merged. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/Makefile.sources | 2 + src/gallium

Re: [Mesa-dev] [Nouveau] [RFC PATCH 5/8] nv50: prevent NULL pointer dereference with pipe_query functions

2015-06-22 Thread Samuel Pitoiset
53 PM, Samuel Pitoiset wrote: This may happen when nv50_query_create() fails to create a new query. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/nouveau

Re: [Mesa-dev] [Nouveau] [RFC PATCH 5/8] nv50: prevent NULL pointer dereference with pipe_query functions

2015-06-23 Thread Samuel Pitoiset
On 06/23/2015 08:57 AM, Michel Dänzer wrote: On 23.06.2015 06:02, Samuel Pitoiset wrote: On 06/22/2015 10:52 PM, Ilia Mirkin wrote: If query_create fails, why would any of these functions get called? Because the HUD doesn't check if query_create() fails and it calls other pipe_

[Mesa-dev] [PATCH] gallium/hud: prevent NULL pointer dereference with pipe_query functions

2015-06-24 Thread Samuel Pitoiset
The HUD doesn't check if query_create() fails and it calls other pipe_query functions with NULL pointer instead of a valid query object. Signed-off-by: Samuel Pitoiset --- src/gallium/auxiliary/hud/hud_driver_query.c | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-)

Re: [Mesa-dev] [PATCH] gallium/hud: prevent NULL pointer dereference with pipe_query functions

2015-06-25 Thread Samuel Pitoiset
e a driver will only fail one time to create a query? Do we need to remove the pane? Not sure. This is going to be hard to say, especially because nouveau drivers could fail if no hardware counters are available. Marek On Wed, Jun 24, 2015 at 9:26 PM, Samuel Pitoiset wrote: The HUD d

Re: [Mesa-dev] [Nouveau] [RFC PATCH 3/8] nv50: allocate and map a notifier buffer object for PM

2015-06-28 Thread Samuel Pitoiset
On 06/26/2015 01:02 AM, Ilia Mirkin wrote: On Mon, Jun 22, 2015 at 4:53 PM, Samuel Pitoiset wrote: This notifier buffer object will be used to read back global performance counters results written by the kernel. For each domain, we will store the handle of the perfdom object, an array of 4

Re: [Mesa-dev] [Nouveau] [RFC PATCH 4/8] nv50: configure the ring buffer for reading back PM counters

2015-06-28 Thread Samuel Pitoiset
es, this sounds good to me. On Mon, Jun 22, 2015 at 4:53 PM, Samuel Pitoiset wrote: To write data at the right offset, the kernel has to know some parameters of this ring buffer, like the number of domains and the maximum number of queries. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers

Re: [Mesa-dev] [Nouveau] [RFC PATCH 6/8] nv50: add support for compute/graphics global performance counters

2015-06-28 Thread Samuel Pitoiset
On 06/26/2015 01:09 AM, Ilia Mirkin wrote: What's with the \%'s everywhere? Maybe "percent" will be better ? On Mon, Jun 22, 2015 at 4:53 PM, Samuel Pitoiset wrote: This commit adds support for both compute and graphics global performance counters which have been rev

[Mesa-dev] [PATCH v2 0/7] nv50: expose global performance counters

2015-06-30 Thread Samuel Pitoiset
An other series which exposes global performance counters for Fermi and Kepler will be submitted once I have got enough reviews for this one. Feel free to make a review. Thanks, Samuel. Samuel Pitoiset (7): nouveau: implement the nvif hardware performance counters interface nv50: allocate

[Mesa-dev] [PATCH v2 2/7] nv50: allocate a software object class

2015-06-30 Thread Samuel Pitoiset
This will allow to monitor global performance counters through the command stream of the GPU instead of using ioctls. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 11 +++ src/gallium/drivers/nouveau/nv50/nv50_screen.h | 1 + src/gallium/drivers

[Mesa-dev] [PATCH v2 4/7] nv50: configure the ring buffer for reading back PM counters

2015-06-30 Thread Samuel Pitoiset
To write data at the right offset, the kernel has to know some parameters of this ring buffer, like the number of domains and the maximum number of queries. Changes since v2: - only configure the ring buffer if the notifier BO is allocated - only use one BEGIN_NV04() Signed-off-by: Samuel

[Mesa-dev] [PATCH v2 6/7] nv50: expose global performance counters to the HUD

2015-06-30 Thread Samuel Pitoiset
Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 41 ++ src/gallium/drivers/nouveau/nv50/nv50_screen.c | 1 + src/gallium/drivers/nouveau/nv50/nv50_screen.h | 3 ++ 3 files changed, 45 insertions(+) diff --git a/src/gallium/drivers

[Mesa-dev] [PATCH v2 3/7] nv50: allocate and map a notifier buffer object for PM

2015-06-30 Thread Samuel Pitoiset
ng in order to prevent stalls when reading queries. Changes since v2: - check return value of nouveau_bo_map() - add a libdrm version check around creating the notifier BO Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 32 ++ src/ga

[Mesa-dev] [PATCH v2 1/7] nouveau: implement the nvif hardware performance counters interface

2015-06-30 Thread Samuel Pitoiset
@@ +/* + * Copyright 2015 Samuel Pitoiset + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rig

[Mesa-dev] [PATCH v2 7/7] nv50: enable GL_AMD_performance_monitor

2015-06-30 Thread Samuel Pitoiset
This exposes a group of global performance counters that enables GL_AMD_performance_monitor. All piglit tests are okay. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 35 ++ src/gallium/drivers/nouveau/nv50/nv50_screen.c | 1 + src

[Mesa-dev] [PATCH v2 5/7] nv50: add support for compute/graphics global performance counters

2015-06-30 Thread Samuel Pitoiset
e improved later. Changes since v2: - replace \% by percentage - remove one extra call to PUSH_SPACE - use nouveau_fence instead of my hand-made fence mechanism Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 1066 +++- src/gallium/drive

[Mesa-dev] [PATCH] nvc0: fix wrong use of BLIT_SRC_Y_INT for 2D texture copy

2015-07-06 Thread Samuel Pitoiset
According to nv50, this should be src->ms_y instead of src->ms_x. This code is here since 2012, so it's probably a typo error which has never been detected since a long time. I didn't do a full piglit run to check if it fixes some other weird issues. Signed-off-by: Samuel Pi

[Mesa-dev] [PATCH] nv50: fix a SIGSEGV with piglit bin/gl-3.1-vao-broken-attrib

2015-07-06 Thread Samuel Pitoiset
Before validating vertex arrays we need to check if a VBO is present. Checking if vb->buffer is not NULL fixes the issue. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_vbo.c | 5 + 1 file changed, 5 insertions(+) diff --git a/src/gallium/drivers/nouveau/n

Re: [Mesa-dev] [PATCH] nvc0: fix geometry program revalidation of clipping params

2015-07-13 Thread Samuel Pitoiset
_ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > -- Best regards, Samuel Pitoiset. ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH 2/2] nv50: turn samples counts off during blit

2015-07-13 Thread Samuel Pitoiset
Fixes the following piglit test: occlusion_query_meta_no_fragments Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_surface.c | 11 +++ 1 file changed, 11 insertions(+) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_surface.c b/src/gallium/drivers/nouveau

[Mesa-dev] [PATCH 1/2] nv50: add nesting support for occlusion queries

2015-07-13 Thread Samuel Pitoiset
This is loosely based on nvc0. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 27 -- src/gallium/drivers/nouveau/nv50/nv50_screen.h | 2 ++ 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/gallium/drivers/nouveau

[Mesa-dev] [PATCH] nv50: limit the maximum number of samplers to 16

2015-07-13 Thread Samuel Pitoiset
NV50_3D_BIND_TSC only allows to bind 16 samplers, and since we don't want to do anything with NV50_3D_BIND_TSC2, just limit the maximum number of samplers to 16 like for nvc0. This fixes dmesg fails with the following piglit test: max-samplers But the test still fails. Signed-off-by: S

[Mesa-dev] [PATCH 1/2] nv50: add nesting support for occlusion queries

2015-07-13 Thread Samuel Pitoiset
This is loosely based on nvc0. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 29 -- src/gallium/drivers/nouveau/nv50/nv50_screen.h | 2 ++ 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/src/gallium/drivers/nouveau

[Mesa-dev] [PATCH 2/2] nv50/nvc0: force cache flush for constbufs

2015-07-14 Thread Samuel Pitoiset
This fixes the following piglit test: ext_transform_feedback-immediate-reuse-uniform-buffer I didn't test on nvc0 but this should work as expected. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_shader_state.c | 2 ++ src/gallium/drivers/nouveau

[Mesa-dev] [PATCH 1/2] nouveau: always align buffers to 0x100

2015-07-14 Thread Samuel Pitoiset
: ext_transform_feedback-immediate-reuse-uniform-buffer -auto -fbo Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nouveau_buffer.c | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/gallium/drivers/nouveau/nouveau_buffer.c b/src/gallium/drivers/nouveau

[Mesa-dev] [PATCH] nvc0: add a missing parameter to nvc0_set_shader_images()

2015-07-16 Thread Samuel Pitoiset
This fixes a compilation warning introduced in commit 05a12c5 (gallium: add interface for writable shader images). While we are at it, fix indentation and rename parameters according to the gallium interface. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_state.c | 6

Re: [Mesa-dev] [Nouveau] [PATCH] nv50: adjust min/max lod by base level on G80

2015-07-20 Thread Samuel Pitoiset
Reviewed-by: Samuel Pitoiset On 07/20/2015 09:26 AM, Ilia Mirkin wrote: Make the assumption that there's a 1:1 TIC <-> TSC connection, and increase min/max lod by the relevant texture's base level. Also if there's no mipfilter, we have to enable it while forcing min/max

[Mesa-dev] [PATCH] nv50: force cache flush for Uniform Buffer Objects

2015-07-21 Thread Samuel Pitoiset
This fixes the following piglit test: ext_transform_feedback-immediate-reuse-uniform-buffer Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_shader_state.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_shader_state.c b/src

[Mesa-dev] [PATCH] nvc0: force cache flush when binding a new ubo

2015-07-21 Thread Samuel Pitoiset
This fixes the following piglit test: ext_transform_feedback-immediate-reuse-uniform-buffer Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c b

Re: [Mesa-dev] [PATCH v2 1/7] nouveau: implement the nvif hardware performance counters interface

2015-07-23 Thread Samuel Pitoiset
On 07/22/2015 10:29 PM, Martin Peres wrote: On 01/07/15 01:01, Samuel Pitoiset wrote: This commit implements the base interface for hardware performance counters that will be shared between nv50 and nvc0 drivers. TODO: Bump libdrm version of mesa when nvif will be merged. Changes since v2

Re: [Mesa-dev] [PATCH v2 2/7] nv50: allocate a software object class

2015-07-23 Thread Samuel Pitoiset
On 07/22/2015 10:35 PM, Martin Peres wrote: On 01/07/15 01:01, Samuel Pitoiset wrote: This will allow to monitor global performance counters through the command stream of the GPU instead of using ioctls. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_screen.c

Re: [Mesa-dev] [PATCH v2 4/7] nv50: configure the ring buffer for reading back PM counters

2015-07-23 Thread Samuel Pitoiset
On 07/22/2015 10:54 PM, Martin Peres wrote: On 01/07/15 01:01, Samuel Pitoiset wrote: To write data at the right offset, the kernel has to know some parameters of this ring buffer, like the number of domains and the maximum number of queries. Changes since v2: - only configure the ring

Re: [Mesa-dev] [PATCH v2 5/7] nv50: add support for compute/graphics global performance counters

2015-07-23 Thread Samuel Pitoiset
On 07/23/2015 12:05 AM, Martin Peres wrote: On 01/07/15 01:01, Samuel Pitoiset wrote: This commit adds support for both compute and graphics global performance counters which have been reverse engineered with CUPTI (Linux) and PerfKit (Windows). Currently, only one query type can be

Re: [Mesa-dev] [PATCH v2 7/7] nv50: enable GL_AMD_performance_monitor

2015-07-23 Thread Samuel Pitoiset
On 07/23/2015 12:14 AM, Martin Peres wrote: On 01/07/15 01:01, Samuel Pitoiset wrote: This exposes a group of global performance counters that enables GL_AMD_performance_monitor. All piglit tests are okay. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c

Re: [Mesa-dev] [Nouveau] [PATCH] nv50, nvc0: don't base decisions on available pushbuf space

2015-10-10 Thread Samuel Pitoiset
On 10/10/2015 09:58 PM, Ilia Mirkin wrote: On Sat, Oct 10, 2015 at 3:55 PM, Samuel Pitoiset wrote: On 10/10/2015 09:42 PM, Ilia Mirkin wrote: On Sat, Oct 10, 2015 at 3:41 PM, Samuel Pitoiset wrote: This patch looks fine except that it should be a bit more normalized. I mean, sometimes

Re: [Mesa-dev] [Nouveau] [PATCH] nv50, nvc0: don't base decisions on available pushbuf space

2015-10-10 Thread Samuel Pitoiset
On 10/10/2015 10:17 PM, Ilia Mirkin wrote: On Sat, Oct 10, 2015 at 4:21 PM, Samuel Pitoiset wrote: On 10/10/2015 09:58 PM, Ilia Mirkin wrote: On Sat, Oct 10, 2015 at 3:55 PM, Samuel Pitoiset wrote: On 10/10/2015 09:42 PM, Ilia Mirkin wrote: On Sat, Oct 10, 2015 at 3:41 PM, Samuel

Re: [Mesa-dev] [Nouveau] [PATCH] nv50, nvc0: don't base decisions on available pushbuf space

2015-10-11 Thread Samuel Pitoiset
I did a full piglit run on Fermi. There are no regressions and you fixed texelFetch tests and other ones which failed with that assert. I'm lazy to do it on Tesla, so: Reviewed-by: Samuel Pitoiset Thanks! On 10/10/2015 11:09 AM, Ilia Mirkin wrote: We still have to push everythin

[Mesa-dev] [PATCH 06/16] nvc0: allow to use 8 MP counters on Fermi

2015-10-16 Thread Samuel Pitoiset
On Fermi, we have one domain of 8 MP counters while we have two domains of 4 MP counters on Kepler. Signed-off-by: Samuel Pitoiset --- .../drivers/nouveau/nvc0/nvc0_query_hw_sm.c| 30 +- .../drivers/nouveau/nvc0/nvc0_query_hw_sm.h| 2 +- 2 files changed, 13

[Mesa-dev] [PATCH 02/16] nvc0: split out begin_query() hook used by MP counters

2015-10-16 Thread Samuel Pitoiset
The way we configure MP performance counters is going to pretty different between Fermi and Kepler. Having two separate functions is much better. Signed-off-by: Samuel Pitoiset --- .../drivers/nouveau/nvc0/nvc0_query_hw_sm.c| 108 - 1 file changed, 84 insertions

[Mesa-dev] [PATCH 05/16] nvc0: fix sequence field init for MP counters on Fermi

2015-10-16 Thread Samuel Pitoiset
Sequence fields are located at MP[i] + 0x20 in the buffer object. This is used to check if result is available for MP[i]. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gallium

[Mesa-dev] [PATCH 07/16] nvc0: fix queries which use multiple MP counters on Fermi

2015-10-16 Thread Samuel Pitoiset
-by: Samuel Pitoiset --- .../drivers/nouveau/nvc0/nvc0_query_hw_sm.c| 128 + 1 file changed, 81 insertions(+), 47 deletions(-) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c index 2060662..99e9073

[Mesa-dev] [PATCH 01/16] nvc0: remove useless call to query_get_cfg() in nvc0_hw_sm_query_end()

2015-10-16 Thread Samuel Pitoiset
Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c index 3bdb90a..8e2239f 100644

[Mesa-dev] [PATCH 04/16] nvc0: correctly enable the MP counters' multiplexer on Fermi

2015-10-16 Thread Samuel Pitoiset
Writing 0x408000 to 0x419e00 (like on Kepler) has no effect on Fermi because we only have one domain of 8 counters. Instead, we have to write 0x8000. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c | 5 + 1 file changed, 1 insertion(+), 4 deletions

[Mesa-dev] [PATCH 03/16] nvc0: rip off the kepler MP-enabling logic from the Fermi codepath

2015-10-16 Thread Samuel Pitoiset
Writing 0x1fcb to 0x419eac is definitely not related to MP counters and has no effect on Fermi (although this enables MP counters on Kepler). Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c | 8 +--- 1 file changed, 1 insertion(+), 7 deletions(-) diff

[Mesa-dev] [PATCH 00/16] nvc0: improve MP counters support on Fermi

2015-10-16 Thread Samuel Pitoiset
sions with piglit. I'll submit an other series in the next few days which adds some performance monitoring metrics on Fermi and I'll double check MP counters on Kepler. Thanks. Samuel Pitoiset (16): nvc0: remove useless call to query_get_cfg() in nvc0_hw_sm_query_end() nvc0: split ou

[Mesa-dev] [PATCH 12/16] nvc0: allow only one active query for the MP counters group

2015-10-16 Thread Samuel Pitoiset
ly used by AMD_performance_monitor. Like for Kepler, this limits the maximum number of active queries to 1 on Fermi. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query.c | 20 +--- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/gallium/drivers/no

[Mesa-dev] [PATCH 16/16] nvc0: add a note about MP counters on GF100/GF110

2015-10-16 Thread Samuel Pitoiset
MP counters on GF100/GF110 (compute capability 2.0) are buggy because there is a context-switch problem that we need to fix. Results might be wrong sometimes, be careful! Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c | 5 + 1 file changed, 5

[Mesa-dev] [PATCH 15/16] nvc0: add MP counters variants for GF100/GF110

2015-10-16 Thread Samuel Pitoiset
GF100 and GF110 chipsets are compute capability 2.0, while the other Fermi chipsets are compute capability 2.1. That's why, some MP counters are different between these chipsets and we need to handle variants. Signed-off-by: Samuel Pitoiet --- .../drivers/nouveau/nvc0/nvc0_query_hw_sm.c|

[Mesa-dev] [PATCH 11/16] nvc0: read MP counters of all GPCs on Fermi

2015-10-16 Thread Samuel Pitoiset
performance counters of all TPCs. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c index

[Mesa-dev] [PATCH 08/16] nvc0: fix monitoring multiple MP counters queries on Fermi

2015-10-16 Thread Samuel Pitoiset
For strange reasons, the signal id depends on the slot selected on Fermi but not on Kepler. Fortunately, the signal ids are just offseted by the slot id! Signed-off-by: Samuel Pitoiset --- .../drivers/nouveau/nvc0/nvc0_query_hw_sm.c| 147 +++-- 1 file changed, 79

[Mesa-dev] [PATCH 13/16] nvc0: enable compute support by default on Fermi

2015-10-16 Thread Samuel Pitoiset
Compute support was not enabled by default because weird effects on 3D state happened, but I can't reproduce them anymore. This also enables MP performance counters by default on Fermi. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query.c | 3 +-- src/ga

[Mesa-dev] [PATCH 09/16] nvc0: fix unaligned mem access when reading MP counters on Fermi

2015-10-16 Thread Samuel Pitoiset
Memory access have to be aligned to 128-bits. Note that this doesn't happen when the card only has TPC. This patch fixes the following dmesg fail: gr: GPC0/TPC1/MP trap: global 0004 [MULTIPLE_WARP_ERRORS] warp 000f [UNALIGNED_MEM_ACCESS] Signed-off-by: Samuel Pitoiset --- src/ga

[Mesa-dev] [PATCH 10/16] nvc0: store the number of GPCs to nvc0_screen

2015-10-16 Thread Samuel Pitoiset
over all GPCs. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 1 + src/gallium/drivers/nouveau/nvc0/nvc0_screen.h | 1 + 2 files changed, 2 insertions(+) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c b/src/gallium/drivers/nouveau/nvc0

[Mesa-dev] [PATCH 14/16] nvc0: move SW/HW queries info to their respective files

2015-10-16 Thread Samuel Pitoiset
This will help for handling HW SM queries variants on Fermi. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query.c | 185 + src/gallium/drivers/nouveau/nvc0/nvc0_query_hw.c | 14 ++ src/gallium/drivers/nouveau/nvc0/nvc0_query_hw.h | 3

Re: [Mesa-dev] [PATCH 10/16] nvc0: store the number of GPCs to nvc0_screen

2015-10-16 Thread Samuel Pitoiset
On 10/16/2015 07:24 PM, Ilia Mirkin wrote: On Fri, Oct 16, 2015 at 1:22 PM, Samuel Pitoiset wrote: NOUVEAU_GETPARAM_GRAPH_UNITS param returns the number of GPCs, the total number of TPCs and the number of ROP units. Note that when the DRM version is too old the default number of GPCs is

Re: [Mesa-dev] [PATCH 07/16] nvc0: fix queries which use multiple MP counters on Fermi

2015-10-16 Thread Samuel Pitoiset
he second one. Now, I check if the slot is free before pushing the configuration through the pushbuf. On Fri, Oct 16, 2015 at 1:22 PM, Samuel Pitoiset wrote: Queries which use more than one MP counters was misconfigured and computing the final result was also wrong because sources n

Re: [Mesa-dev] [PATCH 16/16] nvc0: add a note about MP counters on GF100/GF110

2015-10-16 Thread Samuel Pitoiset
amuel Pitoiset wrote: MP counters on GF100/GF110 (compute capability 2.0) are buggy because there is a context-switch problem that we need to fix. Results might be wrong sometimes, be careful! Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_sm.c | 5 + 1

[Mesa-dev] [PATCH] nvc0: add support for performance monitoring metrics on Fermi

2015-10-16 Thread Samuel Pitoiset
As explained in the CUDA toolkit documentation, "a metric is a characteristic of an application that is calculated from one or more event values." Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/Makefile.sources | 2 + src/gallium/drivers/nouveau/nvc0/nvc0_

Re: [Mesa-dev] [PATCH] nvc0: add support for performance monitoring metrics on Fermi

2015-10-16 Thread Samuel Pitoiset
On 10/16/2015 11:22 PM, Ilia Mirkin wrote: On Fri, Oct 16, 2015 at 5:29 PM, Samuel Pitoiset wrote: As explained in the CUDA toolkit documentation, "a metric is a characteristic of an application that is calculated from one or more event values." Signed-off-by: Samuel Pitoiset

Re: [Mesa-dev] [PATCH] nvc0: add support for performance monitoring metrics on Fermi

2015-10-16 Thread Samuel Pitoiset
On 10/16/2015 11:57 PM, Ilia Mirkin wrote: On Fri, Oct 16, 2015 at 5:35 PM, Samuel Pitoiset wrote: On 10/16/2015 11:22 PM, Ilia Mirkin wrote: On Fri, Oct 16, 2015 at 5:29 PM, Samuel Pitoiset wrote: As explained in the CUDA toolkit documentation, "a metric is a characteristic

[Mesa-dev] [PATCH] nvc0: do not bind input params at compute state init on Fermi

2015-10-17 Thread Samuel Pitoiset
port by default on Fermi) Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_compute.c | 8 1 file changed, 8 deletions(-) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_compute.c b/src/gallium/drivers/nouveau/nvc0/nvc0_compute.c index 96d753c..e33af04 100644 --

Re: [Mesa-dev] [PATCH] nvc0: do not bind input params at compute state init on Fermi

2015-10-18 Thread Samuel Pitoiset
e for now, this is Reviewed-by: Ilia Mirkin Thanks. On Sat, Oct 17, 2015 at 12:19 PM, Samuel Pitoiset wrote: It looks like binding a constant buffer on compute overwrites the 3D state. To avoid that, we already re-bind all the 3D constant buffers after launching a compute grid but this i

Re: [Mesa-dev] [PATCH 13/16] nvc0: enable compute support by default on Fermi

2015-10-18 Thread Samuel Pitoiset
Fri, 2015-10-16 at 19:22 +0200, Samuel Pitoiset wrote: Compute support was not enabled by default because weird effects on 3D state happened, but I can't reproduce them anymore. This also enables MP performance counters by default on Fermi. Signed-off-by: Samuel Pitoiset --- src/ga

[Mesa-dev] [PATCH 2/4] nv50: move nva0_so_target_save_offset() to its correct location

2015-10-18 Thread Samuel Pitoiset
Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query.c | 18 -- src/gallium/drivers/nouveau/nv50/nv50_query.h | 3 --- src/gallium/drivers/nouveau/nv50/nv50_state.c | 18 ++ 3 files changed, 18 insertions(+), 21 deletions(-) diff --git

[Mesa-dev] [PATCH 0/4] nv50: move HW queries to nv50_query_hw.c/h

2015-10-18 Thread Samuel Pitoiset
Hi there, As for nvc0, this series moves HW queries to improve readability of this area of the driver and to prepare the way for both MP counters and global perf counters. There are no regressions with piglit. Feel free to review, Thanks. Samuel Pitoiset (4): nv50: add a header file for

[Mesa-dev] [PATCH 1/4] nv50: add a header file for nv50_query

2015-10-18 Thread Samuel Pitoiset
Like for nvc0, this will allow to split different types of queries and to prepare the way for both global performance counters and MP counters. While we are at it, make use of nv50_query struct instead of pipe_query. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau

[Mesa-dev] [PATCH 4/4] nv50: do not create an invalid HW query type

2015-10-18 Thread Samuel Pitoiset
While we are at it, store the rotate offset for occlusion queries to nv50_hw_query like on nvc0. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nv50/nv50_query_hw.c | 45 +--- src/gallium/drivers/nouveau/nv50/nv50_query_hw.h | 3 +- 2 files changed, 35

[Mesa-dev] [PATCH 3/4] nv50: move HW queries to nv50_query_hw.c/h files

2015-10-18 Thread Samuel Pitoiset
Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/Makefile.sources | 2 + src/gallium/drivers/nouveau/nv50/nv50_query.c | 354 ++- src/gallium/drivers/nouveau/nv50/nv50_query.h | 26 +- src/gallium/drivers/nouveau/nv50/nv50_query_hw.c | 389

Re: [Mesa-dev] [PATCH 1/4] nv50: add a header file for nv50_query

2015-10-19 Thread Samuel Pitoiset
On 10/19/2015 10:43 AM, Pierre Moreau wrote: Hi Samuel, (some comments further down) On 11:30 PM - Oct 18 2015, Samuel Pitoiset wrote: Like for nvc0, this will allow to split different types of queries and to prepare the way for both global performance counters and MP counters. While we

Re: [Mesa-dev] [PATCH 4/4] nv50: do not create an invalid HW query type

2015-10-19 Thread Samuel Pitoiset
On 10/19/2015 11:01 AM, Pierre Moreau wrote: Hi Samuel, (some comments below) On 11:36 PM - Oct 18 2015, Samuel Pitoiset wrote: While we are at it, store the rotate offset for occlusion queries to nv50_hw_query like on nvc0. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau

Re: [Mesa-dev] [PATCH 4/4] nv50: do not create an invalid HW query type

2015-10-19 Thread Samuel Pitoiset
On 10/19/2015 12:43 PM, Pierre Moreau wrote: On 11:06 AM - Oct 19 2015, Samuel Pitoiset wrote: On 10/19/2015 11:01 AM, Pierre Moreau wrote: Hi Samuel, (some comments below) On 11:36 PM - Oct 18 2015, Samuel Pitoiset wrote: While we are at it, store the rotate offset for occlusion queries

Re: [Mesa-dev] [PATCH v2 1/7] nvc0: fix crash when nv50_miptree_from_handle fails

2015-10-25 Thread Samuel Pitoiset
ks for your answer. Do you need someone to push this patch? Cheers Julien On 20 October 2015 at 18:04, samuel.pitoiset mailto:samuel.pitoi...@gmail.com>> wrote: Is there a particular situation where nv50_miptree_from_handle() fails? And did you check nv50? Anyway, this patc

Re: [Mesa-dev] [PATCH] nouveau: fix double free when screen_create fails

2015-10-25 Thread Samuel Pitoiset
On 10/22/2015 01:16 AM, Julien Isorce wrote: The real fix is in nouveau_drm_winsys.c by setting dev to 0. Which means dev's ownership has been passed to previous call. Other changes are there to be consistent with what the screen_create functions already do on errors. This actually happens be

[Mesa-dev] [PATCH v2 4/4] nv50: do not create an invalid HW query type

2015-10-28 Thread Samuel Pitoiset
While we are at it, store the rotate offset for occlusion queries to nv50_hw_query like on nvc0. Changes since v2: - remove useless 'space' variable Signed-off-by: Samuel Pitoiset Reviewed-by: Pierre Moreau --- src/gallium/drivers/nouveau/nv50/nv50_query

[Mesa-dev] [PATCH v2 3/4] nv50: move HW queries to nv50_query_hw.c/h files

2015-10-28 Thread Samuel Pitoiset
Changes since v2: - remove unused 'nv50_hw_query_funcs' struct Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/Makefile.sources | 2 + src/gallium/drivers/nouveau/nv50/nv50_query.c | 354 ++- src/gallium/drivers/nouveau/nv50/nv50_query.h

[Mesa-dev] [PATCH] nvc0: expose a group of performance metrics on Fermi

2015-10-28 Thread Samuel Pitoiset
This allows to monitor those performance metrics through GL_AMD_performance_monitor. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_query.c | 14 +- src/gallium/drivers/nouveau/nvc0/nvc0_query.h | 3 ++- src/gallium/drivers/nouveau/nvc0

Re: [Mesa-dev] [PATCH v2 1/7] nvc0: fix crash when nv50_miptree_from_handle fails

2015-10-28 Thread Samuel Pitoiset
On 10/26/2015 01:44 PM, Julien Isorce wrote: On 25 October 2015 at 21:38, Samuel Pitoiset mailto:samuel.pitoi...@gmail.com>> wrote: Do you need someone to push this patch? Yes please Pushed. ___ mesa-dev mailing list me

Re: [Mesa-dev] [PATCH] nouveau: fix double free when screen_create fails

2015-10-29 Thread Samuel Pitoiset
On 10/27/2015 02:01 PM, samuel.pitoiset wrote: On 27/10/2015 12:52, Emil Velikov wrote: On 27 October 2015 at 10:50, samuel.pitoiset wrote: On 27/10/2015 11:37, Emil Velikov wrote: On 22 October 2015 at 00:16, Julien Isorce wrote: The real fix is in nouveau_drm_winsys.c by setting dev t

[Mesa-dev] [PATCH 2/2] nvc0: add missing compute parameters required by clover

2015-11-03 Thread Samuel Pitoiset
This fixes crashes with some piglit OpenCL tests. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c b/src/gallium/drivers/nouveau/nvc0

[Mesa-dev] [PATCH 1/2] nvc0: handle NULL pointer in nvc0_get_compute_param()

2015-11-03 Thread Samuel Pitoiset
To get the size (in bytes) of a compute parameter, clover first calls get_compute_param() with a NULL data pointer. The RET() macro is based on nv50. Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 45 -- 1 file changed, 21 insertions

Re: [Mesa-dev] [PATCH 1/2] nvc0: handle NULL pointer in nvc0_get_compute_param()

2015-11-03 Thread Samuel Pitoiset
On 11/03/2015 07:26 PM, Ilia Mirkin wrote: On Tue, Nov 3, 2015 at 1:35 PM, Samuel Pitoiset wrote: To get the size (in bytes) of a compute parameter, clover first calls get_compute_param() with a NULL data pointer. The RET() macro is based on nv50. Signed-off-by: Samuel Pitoiset --- src

[Mesa-dev] [PATCH v2 2/2] nvc0: add missing compute parameters required by clover

2015-11-03 Thread Samuel Pitoiset
This fixes crashes with some piglit OpenCL tests. Changes since v2: - get rid of ul suffixes when they are unnecessary Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/gallium

[Mesa-dev] [PATCH v2 1/2] nvc0: handle NULL pointer in nvc0_get_compute_param()

2015-11-03 Thread Samuel Pitoiset
To get the size (in bytes) of a compute parameter, clover first calls get_compute_param() with a NULL data pointer. The RET() macro is based on nv50. Changes since v2: - get rid of ul suffixes when they are unnecessary Signed-off-by: Samuel Pitoiset --- src/gallium/drivers/nouveau/nvc0

Re: [Mesa-dev] [PATCH] gallium/hud: document GALLIUM_HUD_PERIOD in envvars.html.

2015-11-04 Thread Samuel Pitoiset
Reviewed-by: Samuel Pitoiset On 11/04/2015 06:24 AM, Jimmy Berry wrote: --- docs/envvars.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/envvars.html b/docs/envvars.html index bdfe999..173c941 100644 --- a/docs/envvars.html +++ b/docs/envvars.html @@ -179,6 +179,8 @@ Mesa

Re: [Mesa-dev] [PATCH v2] gallium/hud: control visibility at startup and runtime.

2015-11-04 Thread Samuel Pitoiset
Hi Jimmy, Some comments below. On 11/04/2015 06:17 AM, Jimmy Berry wrote: - env GALLIUM_HUD_VISIBLE: control default visibility - env GALLIUM_HUD_SIGNAL_TOGGLE: toggle visibility via signal --- Thanks for the feedback. I believe all the suggested changes have been implemented. One note, all t

[Mesa-dev] [PATCH] nvc0: enable compute support on Fermi

2015-11-05 Thread Samuel Pitoiset
Altough the compute support is still not complete because textures and surfaces need to be implemented, it allows to launch very simple compute kernel like one which reads reading MP performance counters. This turns on PIPE_CAP_COMPUTE and PIPE_SHADER_COMPUTE. Signed-off-by: Samuel Pitoiset

Re: [Mesa-dev] [PATCH] nvc0: enable compute support on Fermi

2015-11-05 Thread Samuel Pitoiset
On 11/06/2015 12:43 AM, Ilia Mirkin wrote: On Thu, Nov 5, 2015 at 6:41 PM, Samuel Pitoiset wrote: Altough the compute support is still not complete because textures and surfaces need to be implemented, it allows to launch very simple compute kernel like one which reads reading MP performance

Re: [Mesa-dev] [PATCH] nvc0: enable compute support on Fermi

2015-11-06 Thread Samuel Pitoiset
On 11/06/2015 11:23 AM, Hans de Goede wrote: Hi, On 06-11-15 00:51, Samuel Pitoiset wrote: On 11/06/2015 12:43 AM, Ilia Mirkin wrote: On Thu, Nov 5, 2015 at 6:41 PM, Samuel Pitoiset wrote: Altough the compute support is still not complete because textures and surfaces need to be

Re: [Mesa-dev] [PATCH 3/3] nvc0: add ARB_clear_texture support

2015-11-09 Thread Samuel Pitoiset
On 11/09/2015 07:40 PM, Ilia Mirkin wrote: Signed-off-by: Ilia Mirkin --- docs/GL3.txt| 2 +- docs/relnotes/11.1.0.html | 1 + src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 2 +- src/gallium/drivers/nouveau/nvc0/nvc0_surface

Re: [Mesa-dev] [PATCH 3/3] nvc0: add ARB_clear_texture support

2015-11-09 Thread Samuel Pitoiset
On 11/09/2015 09:03 PM, Ilia Mirkin wrote: On Mon, Nov 9, 2015 at 2:58 PM, Samuel Pitoiset wrote: On 11/09/2015 07:40 PM, Ilia Mirkin wrote: Signed-off-by: Ilia Mirkin --- docs/GL3.txt| 2 +- docs/relnotes/11.1.0.html | 1

Re: [Mesa-dev] [PATCH 3/3] nvc0: add ARB_clear_texture support

2015-11-09 Thread Samuel Pitoiset
On 11/09/2015 09:14 PM, Ilia Mirkin wrote: On Mon, Nov 9, 2015 at 3:13 PM, Samuel Pitoiset wrote: On 11/09/2015 09:03 PM, Ilia Mirkin wrote: On Mon, Nov 9, 2015 at 2:58 PM, Samuel Pitoiset wrote: On 11/09/2015 07:40 PM, Ilia Mirkin wrote: Signed-off-by: Ilia Mirkin --- docs

Re: [Mesa-dev] [PATCH] nouveau: fix double free when screen_create fails

2015-11-12 Thread Samuel Pitoiset
Hi Emil, On 11/10/2015 04:35 PM, Emil Velikov wrote: Hi Samuel, Sorry about this I thought I already replied :-\ On 29 October 2015 at 22:22, Samuel Pitoiset wrote: On 10/27/2015 02:01 PM, samuel.pitoiset wrote: On 27/10/2015 12:52, Emil Velikov wrote: On 27 October 2015 at 10:50

  1   2   3   4   5   6   7   8   9   10   >