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 <imir...@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 <adityaavina...@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 <imir...@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 > >> <adityaavina...@gmail.com> wrote: > >> > Hi, > >> > How far is glsl compiler working for fp64 shader? > >> > > >> > On Sun, Feb 8, 2015 at 4:00 AM, Ilia Mirkin <imir...@alum.mit.edu> > >> > wrote: > >> >> > >> >> From: Dave Airlie <airl...@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.roman...@intel.com> > >> >> Signed-off-by: Dave Airlie <airl...@redhat.com> > >> >> Reviewed-by: Matt Turner <matts...@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@lists.freedesktop.org > >> >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev > >> > > >> > > >> > > >> > > >> > -- > >> > Regards, > >> > Aditya Atluri, > >> > USA. > >> > > > > > > > > > > > -- > > Regards, > > Aditya Atluri, > > USA. > > > -- Regards, *Aditya Atluri,* *USA.*
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev