[Mesa-dev] [PATCH v3 06/29] glsl: add ARB_gpu_shader_fp64 to the glsl extensions. (v2)
Aditya Avinash
adityaavinash1 at gmail.com
Sun Feb 8 14:44:04 PST 2015
Ya. I just want to know that part "only some r600".
I believe some of the nv0 cards doesn't support double. You have any ideas
or suggestions to make it possible?
On Sun, Feb 8, 2015 at 3:28 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> Yes. nvc0+ (fermi+) has fp64 support [and the G200 chip also has a
> bunch, tbd whether we'll bother supporting it]. radeon si/cik also has
> it. Only some r600 eg/ni-based cards have hw support (generally
> speaking, the higher end ones), the rest will have to emulate it. I
> believe that intel gen7 (ivb) and later have enough to make it happen
> too.
>
> On Sun, Feb 8, 2015 at 3:21 PM, Aditya Avinash <adityaavinash1 at gmail.com>
> wrote:
> > Interesting... Does the actual hardware support double? (atleast for nv0)
> > Thank you!
> >
> > On Sun, Feb 8, 2015 at 12:20 PM, Ilia Mirkin <imirkin at alum.mit.edu>
> wrote:
> >>
> >> It all works fine on nvc0 and softpipe with my branch at
> >>
> >> https://github.com/imirkin/mesa/commits/fp64-4
> >>
> >> This branch also includes Dave's preliminary work on r600/cayman, not
> >> sure how far along it is, I believe it's still missing a few things.
> >> The nvc0 implementation needs a few more finishing touches for
> >> handling RCP and RSQ better (just adding a couple of steps of
> >> Newton-Raphson, since the hw only computes 32 bits of the 64-bit
> >> result).
> >>
> >>
> >> On Sun, Feb 8, 2015 at 12:04 PM, Aditya Avinash
> >> <adityaavinash1 at gmail.com> wrote:
> >> > Hi,
> >> > How far is glsl compiler working for fp64 shader?
> >> >
> >> > On Sun, Feb 8, 2015 at 4:00 AM, Ilia Mirkin <imirkin at alum.mit.edu>
> >> > wrote:
> >> >>
> >> >> From: Dave Airlie <airlied at redhat.com>
> >> >>
> >> >> v2: add define bit (Tapani Pälli)
> >> >>
> >> >> Patch makes following Piglit tests pass:
> >> >> arb_gpu_shader_fp64/preprocessor/define.vert
> >> >> arb_gpu_shader_fp64/preprocessor/define.frag
> >> >>
> >> >> Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
> >> >> Signed-off-by: Dave Airlie <airlied at redhat.com>
> >> >> Reviewed-by: Matt Turner <mattst88 at gmail.com>
> >> >> ---
> >> >> src/glsl/glcpp/glcpp-parse.y | 3 +++
> >> >> src/glsl/glsl_parser_extras.cpp | 1 +
> >> >> src/glsl/glsl_parser_extras.h | 2 ++
> >> >> src/glsl/standalone_scaffolding.cpp | 1 +
> >> >> 4 files changed, 7 insertions(+)
> >> >>
> >> >> diff --git a/src/glsl/glcpp/glcpp-parse.y
> >> >> b/src/glsl/glcpp/glcpp-parse.y
> >> >> index e5bebe5..c2f5223 100644
> >> >> --- a/src/glsl/glcpp/glcpp-parse.y
> >> >> +++ b/src/glsl/glcpp/glcpp-parse.y
> >> >> @@ -2445,6 +2445,9 @@
> >> >> _glcpp_parser_handle_version_declaration(glcpp_parser_t *parser,
> >> >> intmax_t
> >> >> versio
> >> >> if (extensions->ARB_gpu_shader5)
> >> >> add_builtin_define(parser, "GL_ARB_gpu_shader5", 1);
> >> >>
> >> >> + if (extensions->ARB_gpu_shader_fp64)
> >> >> + add_builtin_define(parser,
> "GL_ARB_gpu_shader_fp64",
> >> >> 1);
> >> >> +
> >> >> if (extensions->AMD_vertex_shader_layer)
> >> >> add_builtin_define(parser,
> >> >> "GL_AMD_vertex_shader_layer",
> >> >> 1);
> >> >>
> >> >> diff --git a/src/glsl/glsl_parser_extras.cpp
> >> >> b/src/glsl/glsl_parser_extras.cpp
> >> >> index ccdf031..cb19ce1 100644
> >> >> --- a/src/glsl/glsl_parser_extras.cpp
> >> >> +++ b/src/glsl/glsl_parser_extras.cpp
> >> >> @@ -527,6 +527,7 @@ static const _mesa_glsl_extension
> >> >> _mesa_glsl_supported_extensions[] = {
> >> >> EXT(ARB_fragment_coord_conventions, true, false,
> >> >> ARB_fragment_coord_conventions),
> >> >> EXT(ARB_fragment_layer_viewport, true, false,
> >> >> ARB_fragment_layer_viewport),
> >> >> EXT(ARB_gpu_shader5, true, false,
> >> >> ARB_gpu_shader5),
> >> >> + EXT(ARB_gpu_shader_fp64, true, false,
> >> >> ARB_gpu_shader_fp64),
> >> >> EXT(ARB_sample_shading, true, false,
> >> >> ARB_sample_shading),
> >> >> EXT(ARB_separate_shader_objects, true, false,
> dummy_true),
> >> >> EXT(ARB_shader_atomic_counters, true, false,
> >> >> ARB_shader_atomic_counters),
> >> >> diff --git a/src/glsl/glsl_parser_extras.h
> >> >> b/src/glsl/glsl_parser_extras.h
> >> >> index 843fdae..dafee4e 100644
> >> >> --- a/src/glsl/glsl_parser_extras.h
> >> >> +++ b/src/glsl/glsl_parser_extras.h
> >> >> @@ -414,6 +414,8 @@ struct _mesa_glsl_parse_state {
> >> >> bool ARB_fragment_layer_viewport_warn;
> >> >> bool ARB_gpu_shader5_enable;
> >> >> bool ARB_gpu_shader5_warn;
> >> >> + bool ARB_gpu_shader_fp64_enable;
> >> >> + bool ARB_gpu_shader_fp64_warn;
> >> >> bool ARB_sample_shading_enable;
> >> >> bool ARB_sample_shading_warn;
> >> >> bool ARB_separate_shader_objects_enable;
> >> >> diff --git a/src/glsl/standalone_scaffolding.cpp
> >> >> b/src/glsl/standalone_scaffolding.cpp
> >> >> index 67b0d0c..ad0d75b 100644
> >> >> --- a/src/glsl/standalone_scaffolding.cpp
> >> >> +++ b/src/glsl/standalone_scaffolding.cpp
> >> >> @@ -127,6 +127,7 @@ void initialize_context_to_defaults(struct
> >> >> gl_context
> >> >> *ctx, gl_api api)
> >> >> ctx->Extensions.ARB_fragment_coord_conventions = true;
> >> >> ctx->Extensions.ARB_fragment_layer_viewport = true;
> >> >> ctx->Extensions.ARB_gpu_shader5 = true;
> >> >> + ctx->Extensions.ARB_gpu_shader_fp64 = true;
> >> >> ctx->Extensions.ARB_sample_shading = true;
> >> >> ctx->Extensions.ARB_shader_bit_encoding = true;
> >> >> ctx->Extensions.ARB_shader_stencil_export = true;
> >> >> --
> >> >> 2.0.5
> >> >>
> >> >> _______________________________________________
> >> >> mesa-dev mailing list
> >> >> mesa-dev at lists.freedesktop.org
> >> >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> >> >
> >> >
> >> >
> >> >
> >> > --
> >> > Regards,
> >> > Aditya Atluri,
> >> > USA.
> >> >
> >
> >
> >
> >
> > --
> > Regards,
> > Aditya Atluri,
> > USA.
> >
>
--
Regards,
*Aditya Atluri,*
*USA.*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150208/f3f8669f/attachment.html>
More information about the mesa-dev
mailing list