在Intel HD 500上启用GL_INTEL_performance_query吗?

问题描述 投票:0回答:1

我正在尝试使用OpenGL扩展名:GL_INTEL_performance_query从集成的Intel GPU(HD 500)读取Intel性能计数器。此扩展在我的硬件上受支持,并且在我的计算机上运行以下代码段时,在OpenGL 3.0开始的OGL中也可用:

 if( !IsExtensionSupported("GL_INTEL_performance_query") )
    {
        printf( "ERROR: extension GL_INTEL_performance_query isn't available, exiting\n" );
        return false;
    }

我收到不支持该扩展名的错误。 OGL的当前版本是:

Extended renderer info (GLX_MESA_query_renderer):
    Vendor: VMware, Inc. (0xffffffff)
    Device: llvmpipe (LLVM 8.0, 128 bits) (0xffffffff)
    Version: 19.0.8
    Accelerated: no
    Video memory: 7822MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 3.3
    Max compat profile version: 3.1
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.0
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 8.0, 128 bits)
OpenGL version string: 3.1 Mesa 19.0.8
OpenGL shading language version string: 1.40
OpenGL context flags: (none)

[当我尝试列出所有可用的扩展名时,我得到此列表:

    GL_EXT_compiled_vertex_array, GL_EXT_copy_texture, GL_EXT_draw_buffers2,
    GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_fog_coord,
    GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample,
    GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object,
    GL_EXT_framebuffer_sRGB, GL_EXT_gpu_program_parameters,
    GL_EXT_multi_draw_arrays, GL_EXT_packed_depth_stencil,
    GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_pixel_buffer_object,
    GL_EXT_point_parameters, GL_EXT_polygon_offset_clamp,
    GL_EXT_provoking_vertex, GL_EXT_rescale_normal, GL_EXT_secondary_color,
    GL_EXT_separate_specular_color, GL_EXT_shader_integer_mix,
    GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap,
    GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D,
    GL_EXT_texture_array, GL_EXT_texture_compression_dxt1,
    GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc,
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map,
    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add,
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3,
    GL_EXT_texture_integer, GL_EXT_texture_lod_bias,
    GL_EXT_texture_mirror_clamp, GL_EXT_texture_object,
    GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_decode,
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm,
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback,
    GL_EXT_vertex_array, GL_EXT_vertex_array_bgra,
    GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip,
    GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error,
    GL_KHR_texture_compression_astc_ldr,
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_pack_invert,
    GL_MESA_shader_integer_functions, GL_MESA_texture_signed_rgba,
    GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NV_blend_square,
    GL_NV_conditional_render, GL_NV_depth_clamp, GL_NV_fog_distance,
    GL_NV_light_max_exponent, GL_NV_packed_depth_stencil,
    GL_NV_primitive_restart, GL_NV_texgen_reflection,
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image,
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap,
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp,
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays

如果问题与OGL版本和硬件有关,是否可以启用特定扩展名或任何提示?

更新:

  1. 我正在非虚拟环境中运行。
  2. 主机是:Ubuntu 18.04.3 LTS
linux opengl opengl-es-2.0 gpgpu vtune
1个回答
1
投票

根据您的信息:

Vendor: VMware, Inc. (0xffffffff)  // virtual machine
Device: llvmpipe (LLVM 8.0, 128 bits) (0xffffffff) // Low-Level Virtual Machine pipe
Accelerated: no                    // no acceleration
OpenGL vendor string: VMware, Inc. // virtual machine

看起来您的OpenGl设备不是Intel HD 500,而是虚拟设备(或者您在虚拟机上工作)。

尝试更新您的video card driver和/或activate accelerated 3D graphics in the virtual machine

© www.soinside.com 2019 - 2024. All rights reserved.