Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add GPU details to Report #512

Merged
merged 7 commits into from
Dec 29, 2019
Merged

Add GPU details to Report #512

merged 7 commits into from
Dec 29, 2019

Conversation

banesullivan
Copy link
Member

@banesullivan banesullivan commented Dec 19, 2019

Waiting on a new release for scooby. Requires banesullivan/scooby#39

These changes give us a way to gather information about a user's GPU:

import pyvista as pv

pv.Report()

Screen Shot 2019-12-19 at 6 33 47 PM

print(pv.Report())
--------------------------------------------------------------------------------
  Date: Thu Dec 19 18:35:43 2019 EST

            Darwin : OS
                12 : CPU(s)
            x86_64 : Machine
             64bit : Architecture
        GPU Vendor : ATI Technologies Inc.
      GPU Renderer : AMD Radeon Pro Vega 20 OpenGL Engine
       GPU Version : 4.1 ATI-3.2.24
           32.0 GB : RAM
           Jupyter : Environment

  Python 3.7.3 | packaged by conda-forge | (default, Dec  6 2019, 08:36:57)
  [Clang 9.0.0 (tags/RELEASE_900/final)]

            0.23.0 : pyvista
             8.1.2 : vtk
            1.17.3 : numpy
             2.6.1 : imageio
             1.4.3 : appdirs
             0.4.3 : scooby
             3.1.2 : matplotlib
            5.12.3 : PyQt5
             7.6.1 : IPython
             1.0.0 : colorcet
               2.0 : cmocean
--------------------------------------------------------------------------------
pv.GPUInfo()

Screen Shot 2019-12-19 at 6 33 57 PM

print(pv.get_gpu_info())
OpenGL vendor string:  ATI Technologies Inc.
OpenGL renderer string:  AMD Radeon Pro Vega 20 OpenGL Engine
OpenGL version string:  4.1 ATI-3.2.24
OpenGL extensions:  
  GL_ARB_blend_func_extended
  GL_ARB_draw_buffers_blend
  GL_ARB_draw_indirect
  GL_ARB_ES2_compatibility
  GL_ARB_explicit_attrib_location
  GL_ARB_gpu_shader_fp64
  GL_ARB_gpu_shader5
  GL_ARB_instanced_arrays
  GL_ARB_internalformat_query
  GL_ARB_occlusion_query2
  GL_ARB_sample_shading
  GL_ARB_sampler_objects
  GL_ARB_separate_shader_objects
  GL_ARB_shader_bit_encoding
  GL_ARB_shader_subroutine
  GL_ARB_shading_language_include
  GL_ARB_tessellation_shader
  GL_ARB_texture_buffer_object_rgb32
  GL_ARB_texture_cube_map_array
  GL_ARB_texture_gather
  GL_ARB_texture_query_lod
  GL_ARB_texture_rgb10_a2ui
  GL_ARB_texture_storage
  GL_ARB_texture_swizzle
  GL_ARB_timer_query
  GL_ARB_transform_feedback2
  GL_ARB_transform_feedback3
  GL_ARB_vertex_attrib_64bit
  GL_ARB_vertex_type_2_10_10_10_rev
  GL_ARB_viewport_array
  GL_EXT_debug_label
  GL_EXT_debug_marker
  GL_EXT_depth_bounds_test
  GL_EXT_texture_compression_s3tc
  GL_EXT_texture_filter_anisotropic
  GL_EXT_texture_mirror_clamp
  GL_EXT_texture_sRGB_decode
  GL_APPLE_client_storage
  GL_APPLE_container_object_shareable
  GL_APPLE_flush_render
  GL_APPLE_object_purgeable
  GL_APPLE_rgb_422
  GL_APPLE_row_bytes
  GL_APPLE_texture_range
  GL_ATI_texture_mirror_once
  GL_NV_texture_barrier
PixelFormat Descriptor:
  colorSize:  32
  alphaSize:  8
  stencilSize:  0
  depthSize:  32
  accumSize:  0
  double buffer:  Yes
  stereo:  No
  stencil:  0
  hardware acceleration:  Yes
  profile version:  0x3200

@banesullivan
Copy link
Member Author

or should we put all this GPU info in a single row like the Python details?

@akaszynski
Copy link
Member

I think having multiple rows is sufficient. It's not too much information right now.

@banesullivan banesullivan marked this pull request as ready for review December 23, 2019 22:02
@banesullivan
Copy link
Member Author

Scooby v0.5 is out now, so we can send the GPU details to scooby for reporting. Note that I swapped the order of the GPU details inside PyVista's Report class as scooby has a value : key convention that looks bad with long GPU strings

python -c "import pyvista; print(pyvista.Report())"

--------------------------------------------------------------------------------
  Date: Mon Dec 23 17:06:31 2019 EST

            Darwin : OS
                12 : CPU(s)
            x86_64 : Machine
             64bit : Architecture
           32.0 GB : RAM
            Python : Environment
        GPU Vendor : ATI Technologies Inc.
      GPU Renderer : AMD Radeon Pro Vega 20 OpenGL Engine
       GPU Version : 4.1 ATI-3.2.24

  Python 3.7.3 | packaged by conda-forge | (default, Dec  6 2019, 08:36:57)
  [Clang 9.0.0 (tags/RELEASE_900/final)]

            0.23.0 : pyvista
             8.1.2 : vtk
            1.17.3 : numpy
             2.6.1 : imageio
             1.4.3 : appdirs
             0.5.0 : scooby
             3.1.2 : matplotlib
            5.12.3 : PyQt5
             7.6.1 : IPython
             1.0.0 : colorcet
               2.0 : cmocean
--------------------------------------------------------------------------------

@banesullivan banesullivan changed the title 🚧 Add GPU details to Report Add GPU details to Report Dec 23, 2019
@banesullivan
Copy link
Member Author

Pinging @GuillaumeFavelier and @akaszynski, I bet you both have different GPUs than I - can you both check this out and make sure the GPUInfo class properly parses your GPU's details?

@GuillaumeFavelier
Copy link
Contributor

LGTM!

--------------------------------------------------------------------------------
  Date: Tue Dec 24 11:07:18 2019 CET

             Linux : OS
                 4 : CPU(s)
            x86_64 : Machine
             64bit : Architecture
            7.7 GB : RAM
            Python : Environment
        GPU Vendor : NVIDIA Corporation
      GPU Renderer : GeForce GTX 960M/PCIe/SSE2
       GPU Version : 4.5.0 NVIDIA 430.64

  Python 3.6.8 |Anaconda, Inc.| (default, Dec 30 2018, 01:22:34)  [GCC 7.3.0]

            0.23.0 : pyvista
             8.1.2 : vtk
            1.17.4 : numpy
             2.5.0 : imageio
             1.4.3 : appdirs
             0.5.0 : scooby
             3.1.1 : matplotlib
            5.13.2 : PyQt5
             7.6.1 : IPython
             1.0.0 : colorcet
               2.0 : cmocean
             0.7.0 : panel

  Intel(R) Math Kernel Library Version 2019.0.4 Product Build 20190411 for
  Intel(R) 64 architecture applications
--------------------------------------------------------------------------------

@GuillaumeFavelier GuillaumeFavelier added the enhancement Changes that enhance the library label Dec 24, 2019
Copy link
Member

@akaszynski akaszynski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. Will be especially valuable to add GPU info for pyvista.

@banesullivan banesullivan merged commit 2ea63d5 into master Dec 29, 2019
@banesullivan banesullivan deleted the gpu-info branch January 12, 2020 18:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Changes that enhance the library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants