[Not GZDoom] Abysmall OpenGL performance - expected?

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

Abysmall OpenGL performance - expected?

Postby 3t0 » Mon Oct 12, 2020 8:13 am

I noticed gzdoom moved quite forward, so I resynced repo and rebuilt.

I am now on:
Code: Select allExpand view
04e53b815f8c1653cc77d5b6b376d99f93110be6 (HEAD, tag: g4.4.2)

My zmusic is at
Code: Select allExpand view
commit 8c9f402c31963290867337a65c9635036acbb49f (HEAD -> master)


When I load any other WAD besides vanilla, I am getting progressively worse and worse performance. Ultimately whole engine locks up at cca 7-5 FPS.
I tried both release and debug builds and I tried running engine with disabled music, as I thought issue is caused by song/MIDI subsystem, but no difference.
WADs I tried "unloved" and "temple of lizardmen 2".

My setup:

GFX:

Code: Select allExpand view
: lspci | ag vga
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GK106GLM [Quadro K2100M] (rev a1)


Code: Select allExpand view
name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context,
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
    GLX_ARB_multisample, GLX_EXT_buffer_age,
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
    GLX_EXT_framebuffer_sRGB, GLX_EXT_import_context, GLX_EXT_libglvnd,
    GLX_EXT_stereo_tree, GLX_EXT_swap_control, GLX_EXT_swap_control_tear,
    GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,
    GLX_NV_copy_buffer, GLX_NV_copy_image, GLX_NV_delay_before_swap,
    GLX_NV_float_buffer, GLX_NV_multigpu_context, GLX_NV_multisample_coverage,
    GLX_NV_robustness_video_memory_purge, GLX_NV_swap_group,
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGI_swap_control,
    GLX_SGI_video_sync
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context,
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_buffer_age,
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
    GLX_EXT_import_context, GLX_EXT_stereo_tree, GLX_EXT_swap_control,
    GLX_EXT_swap_control_tear, GLX_EXT_texture_from_pixmap,
    GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_NV_copy_buffer,
    GLX_NV_copy_image, GLX_NV_delay_before_swap, GLX_NV_float_buffer,
    GLX_NV_multigpu_context, GLX_NV_multisample_coverage,
    GLX_NV_robustness_video_memory_purge, GLX_NV_swap_group,
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGI_swap_control,
    GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
    GLX_ARB_context_flush_control, GLX_ARB_create_context,
    GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_buffer_age,
    GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
    GLX_EXT_framebuffer_sRGB, GLX_EXT_import_context, GLX_EXT_stereo_tree,
    GLX_EXT_swap_control, GLX_EXT_swap_control_tear,
    GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,
    GLX_NV_copy_buffer, GLX_NV_copy_image, GLX_NV_delay_before_swap,
    GLX_NV_float_buffer, GLX_NV_multigpu_context, GLX_NV_multisample_coverage,
    GLX_NV_robustness_video_memory_purge, GLX_NV_swap_group,
    GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGI_swap_control,
    GLX_SGI_video_sync
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 2048 MB
    Total available memory: 2048 MB
    Currently available dedicated video memory: 1151 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: Quadro K2100M/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 450.66
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
    GL_AMD_multi_draw_indirect, GL_AMD_seamless_cubemap_per_texture,
    GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility,
    GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility,
    GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture,
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, GL_ARB_cl_event,
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control,
    GL_ARB_color_buffer_float, GL_ARB_compressed_texture_pixel_storage,
    GL_ARB_compute_shader, GL_ARB_compute_variable_group_size,
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth,
    GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance,
    GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp,
    GL_ARB_depth_texture, GL_ARB_derivative_control,
    GL_ARB_direct_state_access, GL_ARB_draw_buffers,
    GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex,
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location,
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport,
    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow,
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments,
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB,
    GL_ARB_geometry_shader4, GL_ARB_get_program_binary,
    GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5,
    GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel,
    GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters,
    GL_ARB_instanced_arrays, GL_ARB_internalformat_query,
    GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata,
    GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multi_bind,
    GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture,
    GL_ARB_occlusion_query, GL_ARB_occlusion_query2,
    GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query,
    GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite,
    GL_ARB_polygon_offset_clamp, GL_ARB_program_interface_query,
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object,
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness,
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map,
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects,
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters,
    GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote,
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size,
    GL_ARB_shader_objects, GL_ARB_shader_precision,
    GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine,
    GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod,
    GL_ARB_shading_language_100, GL_ARB_shading_language_420pack,
    GL_ARB_shading_language_include, GL_ARB_shading_language_packing,
    GL_ARB_shadow, GL_ARB_sparse_buffer, GL_ARB_sparse_texture,
    GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync,
    GL_ARB_tessellation_shader, GL_ARB_texture_barrier,
    GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object,
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range,
    GL_ARB_texture_compression, GL_ARB_texture_compression_bptc,
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map,
    GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add,
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar,
    GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic,
    GL_ARB_texture_float, GL_ARB_texture_gather,
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat,
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two,
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod,
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui,
    GL_ARB_texture_stencil8, GL_ARB_texture_storage,
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle,
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2,
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced,
    GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix,
    GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra,
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit,
    GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object,
    GL_ARB_vertex_program, GL_ARB_vertex_shader,
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev,
    GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_draw_buffers,
    GL_ATI_texture_float, GL_ATI_texture_mirror_once,
    GL_EXTX_framebuffer_mixed_formats, GL_EXT_Cg_shader, GL_EXT_abgr,
    GL_EXT_bgra, GL_EXT_bindable_uniform, GL_EXT_blend_color,
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate,
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array,
    GL_EXT_depth_bounds_test, GL_EXT_direct_state_access,
    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_geometry_shader4,
    GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4,
    GL_EXT_import_sync_object, GL_EXT_memory_object, GL_EXT_memory_object_fd,
    GL_EXT_multi_draw_arrays, GL_EXT_multiview_tessellation_geometry_shader,
    GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query,
    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_semaphore,
    GL_EXT_semaphore_fd, GL_EXT_separate_shader_objects,
    GL_EXT_separate_specular_color, GL_EXT_shader_image_load_store,
    GL_EXT_shader_integer_mix, GL_EXT_shadow_funcs, GL_EXT_stencil_two_side,
    GL_EXT_stencil_wrap, GL_EXT_texture3D, GL_EXT_texture_array,
    GL_EXT_texture_buffer_object, 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_filter_anisotropic, GL_EXT_texture_integer,
    GL_EXT_texture_lod, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,
    GL_EXT_texture_object, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8,
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod,
    GL_EXT_texture_shared_exponent, GL_EXT_texture_storage,
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback2,
    GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit,
    GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_IBM_rasterpos_clip,
    GL_IBM_texture_mirrored_repeat, GL_KHR_blend_equation_advanced,
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error,
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior,
    GL_KHR_robustness, GL_KHR_shader_subgroup, GL_KTX_buffer_region,
    GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_nvenc_interop,
    GL_NVX_progress_fence, GL_NV_ES1_1_compatibility,
    GL_NV_ES3_1_compatibility, GL_NV_alpha_to_coverage_dither_control,
    GL_NV_bindless_multi_draw_indirect,
    GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture,
    GL_NV_blend_equation_advanced, GL_NV_blend_square, GL_NV_command_list,
    GL_NV_compute_program5, GL_NV_conditional_render,
    GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_deep_texture3D,
    GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture,
    GL_NV_draw_vulkan_image, GL_NV_explicit_multisample, GL_NV_feature_query,
    GL_NV_fence, GL_NV_float_buffer, GL_NV_fog_distance,
    GL_NV_fragment_program, GL_NV_fragment_program2,
    GL_NV_fragment_program_option, GL_NV_framebuffer_multisample_coverage,
    GL_NV_geometry_shader4, GL_NV_gpu_multicast, GL_NV_gpu_program4,
    GL_NV_gpu_program4_1, GL_NV_gpu_program5, GL_NV_gpu_program5_mem_extended,
    GL_NV_gpu_program_fp64, GL_NV_gpu_shader5, GL_NV_half_float,
    GL_NV_internalformat_sample_query, GL_NV_light_max_exponent,
    GL_NV_multisample_coverage, GL_NV_multisample_filter_hint,
    GL_NV_occlusion_query, GL_NV_packed_depth_stencil,
    GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2,
    GL_NV_path_rendering, GL_NV_pixel_data_range, GL_NV_point_sprite,
    GL_NV_primitive_restart, GL_NV_query_resource, GL_NV_query_resource_tag,
    GL_NV_register_combiners, GL_NV_register_combiners2,
    GL_NV_robustness_video_memory_purge, GL_NV_shader_atomic_counters,
    GL_NV_shader_atomic_float, GL_NV_shader_buffer_load,
    GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned,
    GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle,
    GL_NV_texgen_reflection, GL_NV_texture_barrier,
    GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4,
    GL_NV_texture_multisample, GL_NV_texture_rectangle,
    GL_NV_texture_rectangle_compressed, GL_NV_texture_shader,
    GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_transform_feedback,
    GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory,
    GL_NV_vdpau_interop, GL_NV_vdpau_interop2, GL_NV_vertex_array_range,
    GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit,
    GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program,
    GL_NV_vertex_program1_1, GL_NV_vertex_program2,
    GL_NV_vertex_program2_option, GL_NV_vertex_program3, GL_OVR_multiview,
    GL_OVR_multiview2, GL_S3_s3tc, GL_SGIS_generate_mipmap,
    GL_SGIS_texture_lod, GL_SGIX_depth_texture, GL_SGIX_shadow,
    GL_SUN_slice_accum

OpenGL version string: 4.6.0 NVIDIA 450.66
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
    GL_AMD_multi_draw_indirect, GL_AMD_seamless_cubemap_per_texture,
    GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility,
    GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility,
    GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture,
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, GL_ARB_cl_event,
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control,
    GL_ARB_color_buffer_float, GL_ARB_compatibility,
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader,
    GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted,
    GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image,
    GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float,
    GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control,
    GL_ARB_direct_state_access, GL_ARB_draw_buffers,
    GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex,
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location,
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport,
    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow,
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments,
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB,
    GL_ARB_geometry_shader4, GL_ARB_get_program_binary,
    GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5,
    GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel,
    GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters,
    GL_ARB_instanced_arrays, GL_ARB_internalformat_query,
    GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata,
    GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multi_bind,
    GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture,
    GL_ARB_occlusion_query, GL_ARB_occlusion_query2,
    GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query,
    GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite,
    GL_ARB_polygon_offset_clamp, GL_ARB_program_interface_query,
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object,
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness,
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map,
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects,
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters,
    GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote,
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size,
    GL_ARB_shader_objects, GL_ARB_shader_precision,
    GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine,
    GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod,
    GL_ARB_shading_language_100, GL_ARB_shading_language_420pack,
    GL_ARB_shading_language_include, GL_ARB_shading_language_packing,
    GL_ARB_shadow, GL_ARB_sparse_buffer, GL_ARB_sparse_texture,
    GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync,
    GL_ARB_tessellation_shader, GL_ARB_texture_barrier,
    GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object,
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range,
    GL_ARB_texture_compression, GL_ARB_texture_compression_bptc,
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map,
    GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add,
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar,
    GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic,
    GL_ARB_texture_float, GL_ARB_texture_gather,
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat,
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two,
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod,
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui,
    GL_ARB_texture_stencil8, GL_ARB_texture_storage,
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle,
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2,
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced,
    GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix,
    GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra,
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit,
    GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object,
    GL_ARB_vertex_program, GL_ARB_vertex_shader,
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev,
    GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_draw_buffers,
    GL_ATI_texture_float, GL_ATI_texture_mirror_once,
    GL_EXTX_framebuffer_mixed_formats, GL_EXT_Cg_shader, GL_EXT_abgr,
    GL_EXT_bgra, GL_EXT_bindable_uniform, GL_EXT_blend_color,
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate,
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array,
    GL_EXT_depth_bounds_test, GL_EXT_direct_state_access,
    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_geometry_shader4,
    GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4,
    GL_EXT_import_sync_object, GL_EXT_memory_object, GL_EXT_memory_object_fd,
    GL_EXT_multi_draw_arrays, GL_EXT_multiview_tessellation_geometry_shader,
    GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query,
    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_semaphore,
    GL_EXT_semaphore_fd, GL_EXT_separate_shader_objects,
    GL_EXT_separate_specular_color, GL_EXT_shader_image_load_store,
    GL_EXT_shader_integer_mix, GL_EXT_shadow_funcs, GL_EXT_stencil_two_side,
    GL_EXT_stencil_wrap, GL_EXT_texture3D, GL_EXT_texture_array,
    GL_EXT_texture_buffer_object, 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_filter_anisotropic, GL_EXT_texture_integer,
    GL_EXT_texture_lod, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,
    GL_EXT_texture_object, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8,
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod,
    GL_EXT_texture_shared_exponent, GL_EXT_texture_storage,
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback2,
    GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit,
    GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_IBM_rasterpos_clip,
    GL_IBM_texture_mirrored_repeat, GL_KHR_blend_equation_advanced,
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error,
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior,
    GL_KHR_robustness, GL_KHR_shader_subgroup, GL_KTX_buffer_region,
    GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_nvenc_interop,
    GL_NVX_progress_fence, GL_NV_ES1_1_compatibility,
    GL_NV_ES3_1_compatibility, GL_NV_alpha_to_coverage_dither_control,
    GL_NV_bindless_multi_draw_indirect,
    GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture,
    GL_NV_blend_equation_advanced, GL_NV_blend_square, GL_NV_command_list,
    GL_NV_compute_program5, GL_NV_conditional_render,
    GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_deep_texture3D,
    GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture,
    GL_NV_draw_vulkan_image, GL_NV_explicit_multisample, GL_NV_feature_query,
    GL_NV_fence, GL_NV_float_buffer, GL_NV_fog_distance,
    GL_NV_fragment_program, GL_NV_fragment_program2,
    GL_NV_fragment_program_option, GL_NV_framebuffer_multisample_coverage,
    GL_NV_geometry_shader4, GL_NV_gpu_multicast, GL_NV_gpu_program4,
    GL_NV_gpu_program4_1, GL_NV_gpu_program5, GL_NV_gpu_program5_mem_extended,
    GL_NV_gpu_program_fp64, GL_NV_gpu_shader5, GL_NV_half_float,
    GL_NV_internalformat_sample_query, GL_NV_light_max_exponent,
    GL_NV_multisample_coverage, GL_NV_multisample_filter_hint,
    GL_NV_occlusion_query, GL_NV_packed_depth_stencil,
    GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2,
    GL_NV_path_rendering, GL_NV_pixel_data_range, GL_NV_point_sprite,
    GL_NV_primitive_restart, GL_NV_query_resource, GL_NV_query_resource_tag,
    GL_NV_register_combiners, GL_NV_register_combiners2,
    GL_NV_robustness_video_memory_purge, GL_NV_shader_atomic_counters,
    GL_NV_shader_atomic_float, GL_NV_shader_buffer_load,
    GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned,
    GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle,
    GL_NV_texgen_reflection, GL_NV_texture_barrier,
    GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4,
    GL_NV_texture_multisample, GL_NV_texture_rectangle,
    GL_NV_texture_rectangle_compressed, GL_NV_texture_shader,
    GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_transform_feedback,
    GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory,
    GL_NV_vdpau_interop, GL_NV_vdpau_interop2, GL_NV_vertex_array_range,
    GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit,
    GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program,
    GL_NV_vertex_program1_1, GL_NV_vertex_program2,
    GL_NV_vertex_program2_option, GL_NV_vertex_program3, GL_OVR_multiview,
    GL_OVR_multiview2, GL_S3_s3tc, GL_SGIS_generate_mipmap,
    GL_SGIS_texture_lod, GL_SGIX_depth_texture, GL_SGIX_shadow,
    GL_SUN_slice_accum

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 450.66
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
    GL_ANDROID_extension_pack_es31a, GL_EXT_EGL_image_external_wrap_modes,
    GL_EXT_base_instance, GL_EXT_blend_func_extended, GL_EXT_blend_minmax,
    GL_EXT_buffer_storage, GL_EXT_clear_texture, GL_EXT_clip_control,
    GL_EXT_clip_cull_distance, GL_EXT_color_buffer_float,
    GL_EXT_color_buffer_half_float, GL_EXT_compressed_ETC1_RGB8_sub_texture,
    GL_EXT_conservative_depth, GL_EXT_copy_image, GL_EXT_debug_label,
    GL_EXT_depth_clamp, GL_EXT_discard_framebuffer,
    GL_EXT_disjoint_timer_query, GL_EXT_draw_buffers_indexed,
    GL_EXT_draw_elements_base_vertex, GL_EXT_draw_transform_feedback,
    GL_EXT_float_blend, GL_EXT_frag_depth, GL_EXT_geometry_point_size,
    GL_EXT_geometry_shader, GL_EXT_gpu_shader5, GL_EXT_map_buffer_range,
    GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_multi_draw_indirect,
    GL_EXT_multisample_compatibility, GL_EXT_multisampled_render_to_texture,
    GL_EXT_multisampled_render_to_texture2,
    GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query,
    GL_EXT_occlusion_query_boolean, GL_EXT_polygon_offset_clamp,
    GL_EXT_primitive_bounding_box, GL_EXT_render_snorm, GL_EXT_robustness,
    GL_EXT_sRGB, GL_EXT_sRGB_write_control, GL_EXT_semaphore,
    GL_EXT_semaphore_fd, GL_EXT_separate_shader_objects,
    GL_EXT_shader_group_vote, GL_EXT_shader_implicit_conversions,
    GL_EXT_shader_integer_mix, GL_EXT_shader_io_blocks,
    GL_EXT_shader_non_constant_global_initializers, GL_EXT_shader_texture_lod,
    GL_EXT_shadow_samplers, GL_EXT_sparse_texture,
    GL_EXT_tessellation_point_size, GL_EXT_tessellation_shader,
    GL_EXT_texture_border_clamp, GL_EXT_texture_buffer,
    GL_EXT_texture_compression_bptc, GL_EXT_texture_compression_dxt1,
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc,
    GL_EXT_texture_cube_map_array, GL_EXT_texture_filter_anisotropic,
    GL_EXT_texture_format_BGRA8888, GL_EXT_texture_mirror_clamp_to_edge,
    GL_EXT_texture_norm16, GL_EXT_texture_query_lod, GL_EXT_texture_rg,
    GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_decode,
    GL_EXT_texture_shadow_lod, GL_EXT_texture_storage, GL_EXT_texture_view,
    GL_EXT_unpack_subimage, GL_EXT_window_rectangles,
    GL_KHR_blend_equation_advanced, GL_KHR_context_flush_control,
    GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile,
    GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness,
    GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_ldr,
    GL_KHR_texture_compression_astc_sliced_3d, GL_NV_bgr,
    GL_NV_bindless_texture, GL_NV_blend_equation_advanced,
    GL_NV_conditional_render, GL_NV_copy_buffer, GL_NV_copy_image,
    GL_NV_draw_buffers, GL_NV_draw_instanced, GL_NV_draw_texture,
    GL_NV_draw_vulkan_image, GL_NV_explicit_attrib_location,
    GL_NV_fbo_color_attachments, GL_NV_framebuffer_blit,
    GL_NV_framebuffer_multisample, GL_NV_generate_mipmap_sRGB,
    GL_NV_gpu_shader5, GL_NV_image_formats, GL_NV_instanced_arrays,
    GL_NV_internalformat_sample_query, GL_NV_non_square_matrices,
    GL_NV_occlusion_query_samples, GL_NV_pack_subimage, GL_NV_packed_float,
    GL_NV_packed_float_linear, GL_NV_path_rendering,
    GL_NV_pixel_buffer_object, GL_NV_polygon_mode, GL_NV_read_buffer,
    GL_NV_read_depth, GL_NV_read_depth_stencil, GL_NV_read_stencil,
    GL_NV_sRGB_formats, GL_NV_shader_noperspective_interpolation,
    GL_NV_shader_subgroup_partitioned, GL_NV_shadow_samplers_array,
    GL_NV_shadow_samplers_cube, GL_NV_texture_array, GL_NV_texture_barrier,
    GL_NV_texture_border_clamp, GL_NV_texture_compression_latc,
    GL_NV_texture_compression_s3tc, GL_NV_texture_compression_s3tc_update,
    GL_NV_timer_query, GL_NV_viewport_array,
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_copy_image, GL_OES_depth24,
    GL_OES_depth32, GL_OES_depth_texture, GL_OES_depth_texture_cube_map,
    GL_OES_draw_buffers_indexed, GL_OES_draw_elements_base_vertex,
    GL_OES_element_index_uint, GL_OES_fbo_render_mipmap,
    GL_OES_geometry_point_size, GL_OES_geometry_shader,
    GL_OES_get_program_binary, GL_OES_gpu_shader5, GL_OES_mapbuffer,
    GL_OES_packed_depth_stencil, GL_OES_primitive_bounding_box,
    GL_OES_rgb8_rgba8, GL_OES_sample_shading, GL_OES_sample_variables,
    GL_OES_shader_image_atomic, GL_OES_shader_io_blocks,
    GL_OES_shader_multisample_interpolation, GL_OES_standard_derivatives,
    GL_OES_tessellation_point_size, GL_OES_tessellation_shader,
    GL_OES_texture_border_clamp, GL_OES_texture_buffer,
    GL_OES_texture_cube_map_array, GL_OES_texture_float,
    GL_OES_texture_float_linear, GL_OES_texture_half_float,
    GL_OES_texture_half_float_linear, GL_OES_texture_npot,
    GL_OES_texture_stencil8, GL_OES_texture_storage_multisample_2d_array,
    GL_OES_texture_view, GL_OES_vertex_array_object, GL_OES_vertex_half_float,
    GL_OES_viewport_array, GL_OVR_multiview, GL_OVR_multiview2,
    GL_OVR_multiview_multisampled_render_to_texture


CPU:
Code: Select allExpand view
: lscpu | ag 'model name'
Model name:                      Intel(R) Core(TM) i7-4810MQ CPU @ 2.80GHz


k8vavoom maintains steady 100+FPS on both WADs. Similarly all my Quakes (Quakespasm, Quakespasm Spiked, FTEQW). Any idea how to localize the root cause? I have not tried software renderer.
3t0
 
Joined: 09 Feb 2019

Re: Abysmall OpenGL performance - expected?

Postby _mental_ » Mon Oct 12, 2020 8:31 am

Please post complete startup log of GZDoom.
_mental_
 
 
 
Joined: 07 Aug 2011

Re: Abysmall OpenGL performance - expected?

Postby 3t0 » Mon Oct 12, 2020 11:06 am

Invocation:
Code: Select allExpand view
/usr/home/3t0/projects/gdev.doom-engines/gzdoom/build/gzdoom

  -iwad
    /usr/home/3t0/data/games/doom/iwads/doom2.wad

  -warp 01

  +set developer 1
  +set sv_cheats 1

  -exec /usr/home/3t0/.config/gzdoom/development.cfg

  ${@}


Startup log:
Code: Select allExpand view
GZDoom g4.4.2 - 2020-06-16 19:19:13 +0200 - SDL version
Compiled on Oct 10 2020

M_LoadDefaults: Load system defaults.
W_Init: Init WADfiles.
 adding /usr/home/3t0/projects/gdev.doom-engines/gzdoom/build/gzdoom.pk3, 615 lumps
 adding /usr/home/3t0/projects/gdev.doom-engines/gzdoom/build/game_support.pk3, 2512 lumps
 adding /usr/home/3t0/data/games/doom/iwads/doom2.wad, 2919 lumps
sv_cheats will be changed for next game.
I_Init: Setting up machine state.
CPU Vendor ID: GenuineIntel
  Name: Intel(R) Core(TM) i7-4810MQ CPU @ 2.80GHz
  Family 6, Model 60, Stepping 3
  Features: SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 HyperThreading
V_Init: allocate screen.
S_Init: Setting up sound.
I_InitSound: Initializing OpenAL
  Opened device ALSA Default
  EFX enabled
ST_Init: Init startup screen.
Checking cmd-line parameters...
S_InitData: Load sound definitions.
G_ParseMapInfo: Load map definitions.
Texman.Init: Init texture manager.
ParseTeamInfo: Load team definitions.
LoadActors: Load actor definitions.
script parsing took 145.85 ms
R_Init: Init Doom refresh subsystem.
DecalLibrary: Load decals.
M_Init: Init menus.
P_Init: Init Playloop state.
ParseSBarInfo: Loading custom status bar definition.
D_CheckNetGame: Checking network game status.
player 1 of 1 (1 nodes)
Using video driver x11
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: Quadro K2100M/PCIe/SSE2
GL_VERSION: 4.6.0 NVIDIA 450.66 (Core profile)
GL_SHADING_LANGUAGE_VERSION: 4.60 NVIDIA

Max. texture size: 16384
Max. texture units: 32
Max. varying: 124
Max. combined shader storage blocks: 96
Max. vertex shader storage blocks: 16
Resolution: 1920 x 1200
No bots.cfg, so no bots

----------------------------------------

MAP01 - Entryway
3t0
 
Joined: 09 Feb 2019

Re: Abysmall OpenGL performance - expected?

Postby _mental_ » Tue Oct 13, 2020 12:43 am

How many FPS do you have right after GZDoom launch? Also, enable vsync if it's turned off. I can try to use Vulkan renderer as well.
_mental_
 
 
 
Joined: 07 Aug 2011

Re: Abysmall OpenGL performance - expected?

Postby drfrag » Tue Oct 13, 2020 2:55 am

There's a known problem with lmtmpl2 and it was a mod bug, there's an updated version.
viewtopic.php?f=7&t=61658
User avatar
drfrag
Os voy a romper a pedazos!
Vintage GZDoom Developer
 
Joined: 23 Apr 2004
Location: Spain
Discord: drfrag#3555
Github ID: drfrag666

Re: Abysmall OpenGL performance - expected?

Postby 3t0 » Tue Oct 13, 2020 1:03 pm

Okay, it's on me. I was not expecting that, as it used to work in the past. Indeed I tried "newer" (I hope) lmtmple2.pk3 and I am maintaining steady framerates. Cool thank you.

Note to self: report WAD as well next time.
3t0
 
Joined: 09 Feb 2019


Return to Closed Bugs

Who is online

Users browsing this forum: No registered users and 0 guests