Re: [Piglit] [PATCH] tests/igt.py: mark segfaulted IGT process as 'crash'

2017-06-14 Thread Martin Peres

Reviewed-by: Martin Peres 

I will push the patch now. It has waited on the list long-enough!

Thanks,
Martin

On 16/05/17 18:08, Tomi Sarvela wrote:

On IGT testing segfaulted processes are lumped together with failed
tests in results. This patch separates the two for correctness: test
doesn't have opportunity to fail if it wasn't even run.

On our testing environment segfaulted IGT tests point to problem on
builder or testhost side, not to the testcase itself.

Signed-off-by: Tomi Sarvela 
---
  tests/igt.py | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/tests/igt.py b/tests/igt.py
index 87b61dc..e6d3963 100644
--- a/tests/igt.py
+++ b/tests/igt.py
@@ -122,6 +122,8 @@ class IGTTest(Test):
  self.result.result = 'skip'
  elif self.result.returncode == 78:
  self.result.result = 'timeout'
+elif self.result.returncode == 139:
+self.result.result = 'crash'
  else:
  self.result.result = 'fail'
  


___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] Appveyor: Add support for python tests in addition to native tests

2017-06-14 Thread Jose Fonseca
I got the missing PATCH 3/4.


Reviewed-by: Jose Fonseca 



From: Dylan Baker 
Sent: Tuesday, June 13, 2017 21:59
To: piglit@lists.freedesktop.org
Cc: Jose Fonseca
Subject: Appveyor: Add support for python tests in addition to native tests

This little series fixes a few bugs, centralizes a few things, and adds python
tests back to appveyor, while maintaining support for native C/C++ compilation.
It does this by converting several sections to powerscript, which I find easier
to read and write than cmd (batch) scripts.

This is available at my github:
https://github.com/dcbaker/piglit wip/appveyor-hybrid

___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH 1/7] appveyro: Remove help invocation from cmake

2017-06-14 Thread Dylan Baker
According to the man page (for 3.8.2):

   --help,-help,-usage,-h,-H,/?
  Print usage information and exit.

  Usage describes the basic command line interface and its options.

And I saw this behavior, without removing the -H option no build direcotry was
created and ninja failed complaining "no such directory build"

Dylan


Quoting Jose Fonseca (2017-06-13 14:28:22)
> -H is not the help option.  Is the source directory.
> 
> 
> See https://stackoverflow.com/questions/31090821/
> what-does-the-h-option-means-for-cmake
> 
> 
> I know that both -B and -H  are undocumented, but I've been using both since
> forever, since I prefer them to passing the source/dir as positional arguments
> in the end.
> 
> Jose
> 
> ━━━
> From: Dylan Baker 
> Sent: Tuesday, June 13, 2017 21:59
> To: piglit@lists.freedesktop.org
> Cc: Jose Fonseca
> Subject: [PATCH 1/7] appveyro: Remove help invocation from cmake
>  
> Signed-off-by: Dylan Baker 
> ---
>  appveyor.yml | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/appveyor.yml b/appveyor.yml
> index 302308599..00b5700c6 100644
> --- a/appveyor.yml
> +++ b/appveyor.yml
> @@ -86,7 +86,7 @@ install:
>  - appveyor DownloadFile 
> https://www.khronos.org/registry/OpenGL/api/GL/glext.h
> -FileName glext\GL\glext.h
>  
>  build_script:
> -- cmake -H. -Bbuild -G "Ninja" -DGLUT_INCLUDE_DIR=%CD%\freeglut\include
> -DGLUT_glut_LIBRARY=%CD%\freeglut\%FREEGLUT_LIB% 
> -DGLEXT_INCLUDE_DIR=%CD%\glext
> +- cmake . -Bbuild -G "Ninja" -DGLUT_INCLUDE_DIR=%CD%\freeglut\include
> -DGLUT_glut_LIBRARY=%CD%\freeglut\%FREEGLUT_LIB% 
> -DGLEXT_INCLUDE_DIR=%CD%\glext
>  - ninja -C build
>  
>  
> --
> 2.13.1
> 


signature.asc
Description: signature
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH 1/7] appveyro: Remove help invocation from cmake

2017-06-14 Thread Jose Fonseca

I see.  Fair enough.

Reviewed-by: Jose Fonseca 

Jose

On 14/06/17 19:01, Dylan Baker wrote:

According to the man page (for 3.8.2):

--help,-help,-usage,-h,-H,/?
   Print usage information and exit.

   Usage describes the basic command line interface and its options.

And I saw this behavior, without removing the -H option no build direcotry was
created and ninja failed complaining "no such directory build"

Dylan


Quoting Jose Fonseca (2017-06-13 14:28:22)

-H is not the help option.  Is the source directory.


See https://stackoverflow.com/questions/31090821/
what-does-the-h-option-means-for-cmake


I know that both -B and -H  are undocumented, but I've been using both since
forever, since I prefer them to passing the source/dir as positional arguments
in the end.

Jose

━━━
From: Dylan Baker 
Sent: Tuesday, June 13, 2017 21:59
To: piglit@lists.freedesktop.org
Cc: Jose Fonseca
Subject: [PATCH 1/7] appveyro: Remove help invocation from cmake
  
Signed-off-by: Dylan Baker 

---
  appveyor.yml | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/appveyor.yml b/appveyor.yml
index 302308599..00b5700c6 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -86,7 +86,7 @@ install:
  - appveyor DownloadFile https://www.khronos.org/registry/OpenGL/api/GL/glext.h
-FileName glext\GL\glext.h
  
  build_script:

-- cmake -H. -Bbuild -G "Ninja" -DGLUT_INCLUDE_DIR=%CD%\freeglut\include
-DGLUT_glut_LIBRARY=%CD%\freeglut\%FREEGLUT_LIB% -DGLEXT_INCLUDE_DIR=%CD%\glext
+- cmake . -Bbuild -G "Ninja" -DGLUT_INCLUDE_DIR=%CD%\freeglut\include
-DGLUT_glut_LIBRARY=%CD%\freeglut\%FREEGLUT_LIB% -DGLEXT_INCLUDE_DIR=%CD%\glext
  - ninja -C build
  
  
--

2.13.1


___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


[Piglit] [PATCH 1/2] drawoverhead: test more state changes, remove the GL_FRAMEBUFFER_SRGB test

2017-06-14 Thread Marek Olšák
From: Marek Olšák 

the sRGB test is unrealistic
---
 tests/perf/drawoverhead.c | 63 +--
 1 file changed, 61 insertions(+), 2 deletions(-)

diff --git a/tests/perf/drawoverhead.c b/tests/perf/drawoverhead.c
index 76aed20..9afd3d0 100644
--- a/tests/perf/drawoverhead.c
+++ b/tests/perf/drawoverhead.c
@@ -341,20 +341,69 @@ draw_state_change(unsigned count)
glEnable(enable_enum);
else
glDisable(enable_enum);
glDrawArrays(GL_TRIANGLES, 0, 3);
}
}
glDisable(enable_enum);
 }
 
 static void
+draw_scissor_change(unsigned count)
+{
+   unsigned i;
+   glEnable(GL_SCISSOR_TEST);
+   if (indexed) {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glScissor(0, 0, piglit_width / 2, piglit_height 
/ 2);
+   else
+   glScissor(0, 0, piglit_width, piglit_height);
+   glDrawElements(GL_TRIANGLES, 3, GL_UNSIGNED_INT, NULL);
+   }
+   } else {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glScissor(0, 0, piglit_width / 2, piglit_height 
/ 2);
+   else
+   glScissor(0, 0, piglit_width, piglit_height);
+   glDrawArrays(GL_TRIANGLES, 0, 3);
+   }
+   }
+   glDisable(GL_SCISSOR_TEST);
+}
+
+static void
+draw_viewport_change(unsigned count)
+{
+   unsigned i;
+   if (indexed) {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glViewport(0, 0, piglit_width / 2, 
piglit_height / 2);
+   else
+   glViewport(0, 0, piglit_width, piglit_height);
+   glDrawElements(GL_TRIANGLES, 3, GL_UNSIGNED_INT, NULL);
+   }
+   } else {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glViewport(0, 0, piglit_width / 2, 
piglit_height / 2);
+   else
+   glViewport(0, 0, piglit_width, piglit_height);
+   glDrawArrays(GL_TRIANGLES, 0, 3);
+   }
+   }
+   glViewport(0, 0, piglit_width, piglit_height);
+}
+
+static void
 draw_vertex_attrib_change(unsigned count)
 {
unsigned i;
if (indexed) {
for (i = 0; i < count; i++) {
if (i & 1)
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE,
  3 * sizeof(float), NULL);
else
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE,
@@ -384,42 +433,47 @@ static double
 perf_run(const char *call, unsigned num_vbos, unsigned num_ubos,
 unsigned num_textures, const char *change, perf_rate_func f,
 double base_rate)
 {
double rate = perf_measure_rate(f);
double ratio = base_rate ? rate / base_rate : 1;
 
printf("   %s (%2u VBOs, %u UBOs, %2u Tex) w/ %s change:%*s"
   COLOR_CYAN "%s" COLOR_RESET " %s(%.1f%%)" COLOR_RESET "\n",
   call, num_vbos, num_ubos, num_textures, change,
-  MAX2(18 - (int)strlen(change), 0), "",
+  MAX2(24 - (int)strlen(change), 0), "",
   perf_human_float(rate),
   base_rate == 0 ? COLOR_RESET :
ratio > 0.7 ? COLOR_GREEN :
ratio > 0.4 ? COLOR_YELLOW : COLOR_RED,
   100 * ratio);
return rate;
 }
 
 struct enable_state_t {
GLenum enable;
const char *name;
 };
 
 static struct enable_state_t enable_states[] = {
+   {GL_PRIMITIVE_RESTART, "primitive restart enable"},
{GL_BLEND,  "blend enable"},
{GL_DEPTH_TEST, "depth enable"},
+   {GL_DEPTH_CLAMP, "depth clamp enable"},
{GL_STENCIL_TEST, "stencil enable"},
{GL_SCISSOR_TEST, "scissor enable"},
{GL_MULTISAMPLE, "MSAA enable"},
+   {GL_SAMPLE_MASK, "sample mask enable"},
+   {GL_SAMPLE_ALPHA_TO_COVERAGE, "alpha-to-coverage enable"},
+   {GL_SAMPLE_SHADING, "sample shading enable"},
{GL_CULL_FACE,  "cull face enable"},
-   {GL_FRAMEBUFFER_SRGB, "FB sRGB enable"},
+   {GL_CLIP_DISTANCE0, "clip distance enable"},
 };
 
 static void
 perf_draw_variant(const char *call, bool is_indexed)
 {
double base_rate = 0;
unsigned num_vbos, num_ubos, num_textures;
 
indexed = is_indexed;
 
@@ -467,20 +521,25 @@ perf_draw_variant(const char *call, bool is_indexed)
uniform_loc = glGetUniformLocation(prog[0], "u");
perf_run(call, num_vbos, num_ubos, num_te

[Piglit] [PATCH 2/2] drawoverhead: print test numbers

2017-06-14 Thread Marek Olšák
From: Marek Olšák 

and align all results to the same column
---
 tests/perf/drawoverhead.c | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/tests/perf/drawoverhead.c b/tests/perf/drawoverhead.c
index 9afd3d0..bedaecb 100644
--- a/tests/perf/drawoverhead.c
+++ b/tests/perf/drawoverhead.c
@@ -427,27 +427,30 @@ draw_vertex_attrib_change(unsigned count)
 #define COLOR_RED  "\033[31m"
 #define COLOR_GREEN"\033[1;32m"
 #define COLOR_YELLOW   "\033[1;33m"
 #define COLOR_CYAN "\033[1;36m"
 
 static double
 perf_run(const char *call, unsigned num_vbos, unsigned num_ubos,
 unsigned num_textures, const char *change, perf_rate_func f,
 double base_rate)
 {
+   static unsigned test_index;
+   test_index++;
+
double rate = perf_measure_rate(f);
double ratio = base_rate ? rate / base_rate : 1;
 
-   printf("   %s (%2u VBOs, %u UBOs, %2u Tex) w/ %s change:%*s"
+   printf(" %3u: %s (%2u VBOs, %u UBOs, %2u Tex) w/ %s change:%*s"
   COLOR_CYAN "%s" COLOR_RESET " %s(%.1f%%)" COLOR_RESET "\n",
-  call, num_vbos, num_ubos, num_textures, change,
-  MAX2(24 - (int)strlen(change), 0), "",
+  test_index, call, num_vbos, num_ubos, num_textures, change,
+  MAX2(36 - (int)strlen(change) - (int)strlen(call), 0), "",
   perf_human_float(rate),
   base_rate == 0 ? COLOR_RESET :
ratio > 0.7 ? COLOR_GREEN :
ratio > 0.4 ? COLOR_YELLOW : COLOR_RED,
   100 * ratio);
return rate;
 }
 
 struct enable_state_t {
GLenum enable;
-- 
2.7.4

___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


[Piglit] Status of Glean test rewrites?

2017-06-14 Thread Timothy Arceri

Hi All,

I recently got a cpu with more than 2 cores \o/ and it's become even 
more obvious just how much of a bottle neck the glean tests are.


Anyway what is the currently status of the rewrite? Have all the current 
patches landed or are there still patchs waiting review/yet to be finished?


Thanks,
Tim
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] Status of Glean test rewrites?

2017-06-14 Thread Dylan Baker
I have (a now fairly old) series to port either the arb fp or vp tests to
shader_runner on the list. I have no idea how much work they'd need to land, or
if they're really relavent.

Ian had patches (I have no idea how far done) to generate arb_fp and arb_vp
tests which would superscede both glean and my work. I don't think those patches
ever went to the list or how much work was remaining.

Dylan

Quoting Timothy Arceri (2017-06-14 17:48:24)
> Hi All,
> 
> I recently got a cpu with more than 2 cores \o/ and it's become even 
> more obvious just how much of a bottle neck the glean tests are.
> 
> Anyway what is the currently status of the rewrite? Have all the current 
> patches landed or are there still patchs waiting review/yet to be finished?
> 
> Thanks,
> Tim
> ___
> Piglit mailing list
> Piglit@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/piglit


signature.asc
Description: signature
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] Status of Glean test rewrites?

2017-06-14 Thread Timothy Arceri

On 15/06/17 10:57, Dylan Baker wrote:

I have (a now fairly old) series to port either the arb fp or vp tests to
shader_runner on the list. I have no idea how much work they'd need to land, or
if they're really relavent.

Ian had patches (I have no idea how far done) to generate arb_fp and arb_vp
tests which would superscede both glean and my work. I don't think those patches
ever went to the list or how much work was remaining.


They seem mostly ok, and I'd been keen to land them but there are 
comments about changing the input/output values that were never addressed.


Was there any reason for not sending a new series? As far as I can see 
it shouldn't be too much work to get these commit worthy.





Dylan

Quoting Timothy Arceri (2017-06-14 17:48:24)

Hi All,

I recently got a cpu with more than 2 cores \o/ and it's become even
more obvious just how much of a bottle neck the glean tests are.

Anyway what is the currently status of the rewrite? Have all the current
patches landed or are there still patchs waiting review/yet to be finished?

Thanks,
Tim
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit

___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] Status of Glean test rewrites?

2017-06-14 Thread Dylan Baker
Quoting Timothy Arceri (2017-06-14 18:17:19)
> On 15/06/17 10:57, Dylan Baker wrote:
> > I have (a now fairly old) series to port either the arb fp or vp tests to
> > shader_runner on the list. I have no idea how much work they'd need to 
> > land, or
> > if they're really relavent.
> > 
> > Ian had patches (I have no idea how far done) to generate arb_fp and arb_vp
> > tests which would superscede both glean and my work. I don't think those 
> > patches
> > ever went to the list or how much work was remaining.
> 
> They seem mostly ok, and I'd been keen to land them but there are 
> comments about changing the input/output values that were never addressed.

I think I mostly got side tracked with other things. I'll have a look back
through the comments and see about re-spinning when I have a chance.

> 
> Was there any reason for not sending a new series? As far as I can see 
> it shouldn't be too much work to get these commit worthy.
> 
> 
> > 
> > Dylan
> > 
> > Quoting Timothy Arceri (2017-06-14 17:48:24)
> >> Hi All,
> >>
> >> I recently got a cpu with more than 2 cores \o/ and it's become even
> >> more obvious just how much of a bottle neck the glean tests are.
> >>
> >> Anyway what is the currently status of the rewrite? Have all the current
> >> patches landed or are there still patchs waiting review/yet to be finished?
> >>
> >> Thanks,
> >> Tim
> >> ___
> >> Piglit mailing list
> >> Piglit@lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/piglit


signature.asc
Description: signature
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH 1/2] drawoverhead: test more state changes, remove the GL_FRAMEBUFFER_SRGB test

2017-06-14 Thread Brian Paul

For both,
Reviewed-by: Brian Paul 

On 06/14/2017 03:37 PM, Marek Olšák wrote:

From: Marek Olšák 

the sRGB test is unrealistic
---
  tests/perf/drawoverhead.c | 63 +--
  1 file changed, 61 insertions(+), 2 deletions(-)

diff --git a/tests/perf/drawoverhead.c b/tests/perf/drawoverhead.c
index 76aed20..9afd3d0 100644
--- a/tests/perf/drawoverhead.c
+++ b/tests/perf/drawoverhead.c
@@ -341,20 +341,69 @@ draw_state_change(unsigned count)
glEnable(enable_enum);
else
glDisable(enable_enum);
glDrawArrays(GL_TRIANGLES, 0, 3);
}
}
glDisable(enable_enum);
  }

  static void
+draw_scissor_change(unsigned count)
+{
+   unsigned i;
+   glEnable(GL_SCISSOR_TEST);
+   if (indexed) {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glScissor(0, 0, piglit_width / 2, piglit_height 
/ 2);
+   else
+   glScissor(0, 0, piglit_width, piglit_height);
+   glDrawElements(GL_TRIANGLES, 3, GL_UNSIGNED_INT, NULL);
+   }
+   } else {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glScissor(0, 0, piglit_width / 2, piglit_height 
/ 2);
+   else
+   glScissor(0, 0, piglit_width, piglit_height);
+   glDrawArrays(GL_TRIANGLES, 0, 3);
+   }
+   }
+   glDisable(GL_SCISSOR_TEST);
+}
+
+static void
+draw_viewport_change(unsigned count)
+{
+   unsigned i;
+   if (indexed) {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glViewport(0, 0, piglit_width / 2, 
piglit_height / 2);
+   else
+   glViewport(0, 0, piglit_width, piglit_height);
+   glDrawElements(GL_TRIANGLES, 3, GL_UNSIGNED_INT, NULL);
+   }
+   } else {
+   for (i = 0; i < count; i++) {
+   if (i & 1)
+   glViewport(0, 0, piglit_width / 2, 
piglit_height / 2);
+   else
+   glViewport(0, 0, piglit_width, piglit_height);
+   glDrawArrays(GL_TRIANGLES, 0, 3);
+   }
+   }
+   glViewport(0, 0, piglit_width, piglit_height);
+}
+
+static void
  draw_vertex_attrib_change(unsigned count)
  {
unsigned i;
if (indexed) {
for (i = 0; i < count; i++) {
if (i & 1)
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE,
  3 * sizeof(float), NULL);
else
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE,
@@ -384,42 +433,47 @@ static double
  perf_run(const char *call, unsigned num_vbos, unsigned num_ubos,
 unsigned num_textures, const char *change, perf_rate_func f,
 double base_rate)
  {
double rate = perf_measure_rate(f);
double ratio = base_rate ? rate / base_rate : 1;

printf("   %s (%2u VBOs, %u UBOs, %2u Tex) w/ %s change:%*s"
   COLOR_CYAN "%s" COLOR_RESET " %s(%.1f%%)" COLOR_RESET "\n",
   call, num_vbos, num_ubos, num_textures, change,
-  MAX2(18 - (int)strlen(change), 0), "",
+  MAX2(24 - (int)strlen(change), 0), "",
   perf_human_float(rate),
   base_rate == 0 ? COLOR_RESET :
ratio > 0.7 ? COLOR_GREEN :
ratio > 0.4 ? COLOR_YELLOW : COLOR_RED,
   100 * ratio);
return rate;
  }

  struct enable_state_t {
GLenum enable;
const char *name;
  };

  static struct enable_state_t enable_states[] = {
+   {GL_PRIMITIVE_RESTART, "primitive restart enable"},
{GL_BLEND,  "blend enable"},
{GL_DEPTH_TEST, "depth enable"},
+   {GL_DEPTH_CLAMP, "depth clamp enable"},
{GL_STENCIL_TEST, "stencil enable"},
{GL_SCISSOR_TEST, "scissor enable"},
{GL_MULTISAMPLE, "MSAA enable"},
+   {GL_SAMPLE_MASK, "sample mask enable"},
+   {GL_SAMPLE_ALPHA_TO_COVERAGE, "alpha-to-coverage enable"},
+   {GL_SAMPLE_SHADING, "sample shading enable"},
{GL_CULL_FACE,  "cull face enable"},
-   {GL_FRAMEBUFFER_SRGB, "FB sRGB enable"},
+   {GL_CLIP_DISTANCE0, "clip distance enable"},
  };

  static void
  perf_draw_variant(const char *call, bool is_indexed)
  {
double base_rate = 0;
unsigned num_vbos, num_ubos, num_textures;

indexed = is_indexed;

@@ -467,20 +521,25 @@ perf_draw_variant(const char *call, bool is_indexed)
uniform_loc = glG