Prestazioni con Bumblebee + uscita HDMI

12 risposte [Ultimo contenuto]
Ritratto di 3vis
3vis
(Junior)
Offline
Junior
Iscritto: 23/06/2013
Messaggi: 32

Ciao a tutti!

Ho un pc portatile Asus 1215N che utilizza la tecnologia Nvidia Optimus sotto Windows.
Ho recentemente installato Debian 7.8 64 bit e, dopo aver aggiunto i backport al sources.lis, ho installato il pacchetto Bumblebee con il driver Nvidia proprietario (apt-get install -t wheezy-backports bumblebee-nvidia primus).

Ho aggiunto il mio utente al gruppo bumblebee per potere usare optirun e riavviato.

Ho lanciato l'applicazione glxgears con la scheda NVIDIA discreta e questo è il risultato:

root@debian:~# optirun glxgears -info
GL_RENDERER   = ION/PCIe/SSE2
GL_VERSION    = 3.3.0 NVIDIA 304.125
GL_VENDOR     = NVIDIA Corporation
GL_EXTENSIONS = GL_ARB_base_instance GL_ARB_blend_func_extended GL_ARB_color_buffer_float GL_ARB_compatibility GL_ARB_compressed_texture_pixel_storage GL_ARB_conservative_depth GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_buffers_blend GL_ARB_draw_elements_base_vertex GL_ARB_draw_instanced GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_get_program_binary GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_map_buffer_alignment GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_robustness GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_objects 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_sync GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_compression 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_float GL_ARB_texture_gather GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_non_power_of_two GL_ARB_texture_query_lod GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback_instanced GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader 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_S3_s3tc GL_EXT_texture_env_add 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_Cg_shader 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_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 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_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_shader_objects GL_EXT_separate_specular_color 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_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 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_shared_exponent GL_EXT_texture_sRGB GL_EXT_texture_sRGB_decode GL_EXT_texture_storage GL_EXT_texture_swizzle GL_EXT_texture_type_2_10_10_10_REV GL_EXT_timer_query GL_EXT_transform_feedback2 GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_EXT_x11_sync_object GL_EXT_import_sync_object GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_alpha_test GL_NV_blend_minmax GL_NV_blend_square GL_NV_complex_primitives GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_copy_image GL_NV_depth_buffer_float GL_NV_depth_clamp GL_NV_ES1_1_compatibility GL_NV_explicit_multisample GL_NV_fbo_color_attachments GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragdepth GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_gpu_program4_1 GL_NV_half_float 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_register_combiners GL_NV_register_combiners2 GL_NV_shader_buffer_load GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_lod_clamp GL_NV_texture_multisample GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_transform_feedback2 GL_NV_vdpau_interop GL_NV_vertex_array_range GL_NV_vertex_array_range2 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_NVX_conditional_render GL_NVX_gpu_memory_info GL_OES_compressed_paletted_texture GL_OES_depth24 GL_OES_depth32 GL_OES_depth_texture GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_point_size_array GL_OES_point_sprite GL_OES_rgb8_rgba8 GL_OES_read_format GL_OES_standard_derivatives GL_OES_texture_3D 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_vertex_array_object GL_OES_vertex_half_float GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum
298 frames in 5.0 seconds = 59.460 FPS
301 frames in 5.0 seconds = 60.120 FPS
301 frames in 5.0 seconds = 60.114 FPS
301 frames in 5.0 seconds = 60.116 FPS

Poi ho lanciato l'applicazione glxgears con la scheda integrata Intel e questo è il risultato:

root@debian:~# glxgears -info
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
GL_RENDERER   = Mesa DRI Intel(R) IGD
GL_VERSION    = 1.4 Mesa 8.0.5
GL_VENDOR     = Tungsten Graphics, Inc
GL_EXTENSIONS = GL_ARB_multisample GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_copy_texture GL_EXT_polygon_offset GL_EXT_subtexture GL_EXT_texture_object GL_EXT_vertex_array GL_EXT_compiled_vertex_array GL_EXT_texture GL_EXT_texture3D GL_IBM_rasterpos_clip GL_ARB_point_parameters GL_EXT_draw_range_elements GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_separate_specular_color GL_EXT_texture_edge_clamp GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_ARB_multitexture GL_IBM_multimode_draw_arrays GL_IBM_texture_mirrored_repeat GL_3DFX_texture_compression_FXT1 GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_transpose_matrix GL_EXT_blend_func_separate GL_EXT_fog_coord GL_EXT_multi_draw_arrays GL_EXT_secondary_color GL_EXT_texture_env_add GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_INGR_blend_func_separate GL_NV_blend_square GL_NV_light_max_exponent GL_NV_texgen_reflection GL_NV_texture_env_combine4 GL_SUN_multi_draw_arrays GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_EXT_framebuffer_object GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_MESA_window_pos GL_NV_packed_depth_stencil GL_NV_texture_rectangle GL_NV_vertex_program GL_ARB_depth_texture GL_ARB_shadow GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_window_pos GL_EXT_stencil_two_side GL_EXT_texture_cube_map GL_NV_vertex_program1_1 GL_APPLE_packed_pixels GL_APPLE_vertex_array_object GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_shader GL_ARB_shader_objects GL_ARB_vertex_program GL_ARB_vertex_shader GL_ATI_draw_buffers GL_ATI_texture_env_combine3 GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_MESA_pack_invert GL_MESA_ycbcr_texture GL_ARB_half_float_pixel GL_ARB_point_sprite GL_ARB_shading_language_100 GL_ARB_sync GL_ARB_texture_non_power_of_two GL_ARB_vertex_buffer_object GL_ATI_blend_equation_separate GL_EXT_blend_equation_separate GL_OES_read_format GL_ARB_pixel_buffer_object GL_ARB_texture_rectangle GL_EXT_pixel_buffer_object GL_EXT_texture_rectangle GL_ARB_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_packed_depth_stencil GL_APPLE_object_purgeable GL_ARB_vertex_array_object GL_ATI_separate_stencil GL_EXT_gpu_program_parameters GL_OES_EGL_image GL_ARB_copy_buffer GL_ARB_map_buffer_range GL_EXT_separate_shader_objects GL_ARB_ES2_compatibility GL_ARB_draw_elements_base_vertex GL_ARB_explicit_attrib_location GL_ARB_provoking_vertex GL_ARB_sampler_objects GL_EXT_provoking_vertex GL_ARB_robustness
300 frames in 5.0 seconds = 59.923 FPS
301 frames in 5.0 seconds = 60.119 FPS
301 frames in 5.0 seconds = 60.116 FPS
298 frames in 5.0 seconds = 59.518 FPS

Come potete vedere, i FPS sono gli stessi. E' normale?
Quando si utilizza la scheda NVIDIA discreta le prestazioni dovrebbero essere di molto superiori rispetto all' utilizzo della scheda integrata Intel o sbaglio?

Inoltre ho collegato la mia TV tramite cavo HDMI al pc in modo da poter vedere qualche film, ma non so come attivare l'uscita HDMI. In Windows utilizzo i tasti Fn + F8 per spegnere lo schermo del pc ed attivare l'uscita HDMI, mentre in Debian non so come fare.

Qualcuno saprebbe aiutarmi?

Grazie mille!

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2918

Il numero 60 è sospetto: è esattamente il refresh rate dello schermo. Non è che glxgears si autolimita?

Ritratto di badroot
badroot
(Guru)
Offline
Guru
Iscritto: 22/08/2008
Messaggi: 2083

Ciao,
per quanto riguarda l'output di glxgears credo che sia normale, anche io con una Nvidia GTX 560 ho risultati simili.
Inoltre c'è quella scritta

Citazione:

The framerate should be approximately the same as the monitor refresh rate

che mi fa pensare che per qualche ragione un risultato di circa 60000FPS, 60Hz di vertical refresh, sia in linea con le aspettative.
Sono quasi certo che anni fa, molti anni fa, glxgears si comportasse in maniera diversa e il numero di FPS variasse molto in base alla potenza della scheda video, ma come dico sono passati anni e le mie cellule cerebrali non sono molto affidabili.

Comunque qui trovi spiegato come variare l'output di glxgears in maniera che non rispetti più la sincronia verticale e forse dovresti vedere risultati diversi, fai attenzione che per il driver NVIDIA proprietario ci si deve comportare in maniera diversa rispetto a quello INTEL.

Per l'hdmi hai provato dalle impostazione schermo del tuo DE a vedere se puoi passare sulla TV ?
Mentre per usare il tasto Fn+F8 dovresti associarlo alla funzione XF86Display, in XFCE si può fare da Impostazioni/Tastiera.
Io non ho la possibilità di testare HDMI ma credo che il comando xrandr sia quello che ti permetta di impostare l'output video da LCD del portatile a quello HDMI della TV, ma lascio le prove a te o al consiglio di qualcuno con più esperienza in materia.

Ritratto di 3vis
3vis
(Junior)
Offline
Junior
Iscritto: 23/06/2013
Messaggi: 32

Grazie a mcortese e badroot per aver risposto Smile

Come suggerito da badroot, ho letto la guida su come variare l'output di glxgears in maniera che non rispetti più la sincronia verticale.

Si dice:

Citazione:

The vblank_mode environment variable does the trick. You should then get several hundreds FPS on modern hardware. And you are now able to compare the results with others.

vblank_mode=0 glxgears

Ecco il risultato di glxgears con la scheda integrata Intel:

root@debian:~# vblank_mode=0 glxgears -info
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
GL_RENDERER   = Mesa DRI Intel(R) IGD
GL_VERSION    = 1.4 Mesa 8.0.5
GL_VENDOR     = Tungsten Graphics, Inc
GL_EXTENSIONS = GL_ARB_multisample GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_copy_texture GL_EXT_polygon_offset GL_EXT_subtexture GL_EXT_texture_object GL_EXT_vertex_array GL_EXT_compiled_vertex_array GL_EXT_texture GL_EXT_texture3D GL_IBM_rasterpos_clip GL_ARB_point_parameters GL_EXT_draw_range_elements GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_separate_specular_color GL_EXT_texture_edge_clamp GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_ARB_multitexture GL_IBM_multimode_draw_arrays GL_IBM_texture_mirrored_repeat GL_3DFX_texture_compression_FXT1 GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_transpose_matrix GL_EXT_blend_func_separate GL_EXT_fog_coord GL_EXT_multi_draw_arrays GL_EXT_secondary_color GL_EXT_texture_env_add GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_INGR_blend_func_separate GL_NV_blend_square GL_NV_light_max_exponent GL_NV_texgen_reflection GL_NV_texture_env_combine4 GL_SUN_multi_draw_arrays GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_EXT_framebuffer_object GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_MESA_window_pos GL_NV_packed_depth_stencil GL_NV_texture_rectangle GL_NV_vertex_program GL_ARB_depth_texture GL_ARB_shadow GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_window_pos GL_EXT_stencil_two_side GL_EXT_texture_cube_map GL_NV_vertex_program1_1 GL_APPLE_packed_pixels GL_APPLE_vertex_array_object GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_shader GL_ARB_shader_objects GL_ARB_vertex_program GL_ARB_vertex_shader GL_ATI_draw_buffers GL_ATI_texture_env_combine3 GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_MESA_pack_invert GL_MESA_ycbcr_texture GL_ARB_half_float_pixel GL_ARB_point_sprite GL_ARB_shading_language_100 GL_ARB_sync GL_ARB_texture_non_power_of_two GL_ARB_vertex_buffer_object GL_ATI_blend_equation_separate GL_EXT_blend_equation_separate GL_OES_read_format GL_ARB_pixel_buffer_object GL_ARB_texture_rectangle GL_EXT_pixel_buffer_object GL_EXT_texture_rectangle GL_ARB_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_packed_depth_stencil GL_APPLE_object_purgeable GL_ARB_vertex_array_object GL_ATI_separate_stencil GL_EXT_gpu_program_parameters GL_OES_EGL_image GL_ARB_copy_buffer GL_ARB_map_buffer_range GL_EXT_separate_shader_objects GL_ARB_ES2_compatibility GL_ARB_draw_elements_base_vertex GL_ARB_explicit_attrib_location GL_ARB_provoking_vertex GL_ARB_sampler_objects GL_EXT_provoking_vertex GL_ARB_robustness
3071 frames in 5.0 seconds = 614.031 FPS
3192 frames in 5.0 seconds = 638.388 FPS
3213 frames in 5.0 seconds = 642.534 FPS
3162 frames in 5.0 seconds = 632.350 FPS
^C

Ho provato glxgears anche con la scheda NVIDIA discreta e questo è il risultato:

root@debian:~# vblank_mode=0 optirun glxgears -info
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
GL_RENDERER   = ION/PCIe/SSE2
GL_VERSION    = 3.3.0 NVIDIA 304.125
GL_VENDOR     = NVIDIA Corporation
GL_EXTENSIONS = GL_ARB_base_instance GL_ARB_blend_func_extended GL_ARB_color_buffer_float GL_ARB_compatibility GL_ARB_compressed_texture_pixel_storage GL_ARB_conservative_depth GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_buffers_blend GL_ARB_draw_elements_base_vertex GL_ARB_draw_instanced GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_get_program_binary GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_map_buffer_alignment GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_robustness GL_ARB_sample_shading GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_objects 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_sync GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_compression 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_float GL_ARB_texture_gather GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_non_power_of_two GL_ARB_texture_query_lod GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback_instanced GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader 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_S3_s3tc GL_EXT_texture_env_add 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_Cg_shader 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_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 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_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_shader_objects GL_EXT_separate_specular_color 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_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 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_shared_exponent GL_EXT_texture_sRGB GL_EXT_texture_sRGB_decode GL_EXT_texture_storage GL_EXT_texture_swizzle GL_EXT_texture_type_2_10_10_10_REV GL_EXT_timer_query GL_EXT_transform_feedback2 GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_EXT_x11_sync_object GL_EXT_import_sync_object GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_alpha_test GL_NV_blend_minmax GL_NV_blend_square GL_NV_complex_primitives GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_copy_image GL_NV_depth_buffer_float GL_NV_depth_clamp GL_NV_ES1_1_compatibility GL_NV_explicit_multisample GL_NV_fbo_color_attachments GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragdepth GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_gpu_program4_1 GL_NV_half_float 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_register_combiners GL_NV_register_combiners2 GL_NV_shader_buffer_load GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_lod_clamp GL_NV_texture_multisample GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_transform_feedback2 GL_NV_vdpau_interop GL_NV_vertex_array_range GL_NV_vertex_array_range2 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_NVX_conditional_render GL_NVX_gpu_memory_info GL_OES_compressed_paletted_texture GL_OES_depth24 GL_OES_depth32 GL_OES_depth_texture GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_point_size_array GL_OES_point_sprite GL_OES_rgb8_rgba8 GL_OES_read_format GL_OES_standard_derivatives GL_OES_texture_3D 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_vertex_array_object GL_OES_vertex_half_float GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum
ATTENTION: default value of option vblank_mode overridden by environment.
ATTENTION: default value of option vblank_mode overridden by environment.
2157 frames in 5.0 seconds = 431.370 FPS
2044 frames in 5.0 seconds = 408.591 FPS
2174 frames in 5.0 seconds = 434.688 FPS
2170 frames in 5.0 seconds = 433.900 FPS
^C[ 9687.310317] [WARN]Received Interrupt signal.

Si può notare che la scheda NVIDIA discreta ha prestazioni inferiori Confused

Comunque, come descritto nella guida, per schede NVIDIA con driver proprietario, bisognerebbe:

Citazione:

For Nvidia graphics with the proprietary Nvidia driver

$ echo "0/SyncToVBlank=0" >> ~/.nvidia-settings-rc

The same change can be made in the nvidia-settings GUI by unchecking the option at X Screen 0 / OpenGL Settings / Sync to VBlank. Or, if you'd like to just test the setting without modifying your ~/.nvidia-settings-rc file you can do something like:

$ nvidia-settings --load-config-only --assign="SyncToVBlank=0" # disable vertical sync
$ glxgears # test it out
$ nvidia-settings --load-config-only # restore your original vertical sync setting

Io ho provato da terminale ad utilizzare i comandi suggeriti, ma:

root@debian:~# nvidia-settings --load-config-only --assign="SyncToVBlank=0"
bash: nvidia-settings: command not found

Quindi ho provato:

root@debian:~# apt-get install nvidia-settings
Reading package lists... Done
Building dependency tree      
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
 
The following packages have unmet dependencies:
 nvidia-settings : Recommends: libgl1-nvidia-glx but it is not going to be installed
                   Breaks: nvidia-alternative (< 313.30-2)
                   Breaks: nvidia-alternative:i386 (< 313.30-2)
E: Unable to correct problems, you have held broken packages.

A questo punto mi sono bloccato, senza riuscire a testare glxgears sulla scheda NVIDIA discreta.

Qualcuno saprebbe darmi qualche consiglio?

CAPITOLO USCITA HDMI

Come DE utilizzo GNOME 3.4.2. Sono andato su System Settings --> Displays.
Dopo aver collegato il cavo HDMI, se clicco su Detect Displays, non succede nulla (vede immagine allegata).

Da una ricerca sul web, ho trovato la guida sul Multi monitor setup con Bumblebee.

Fanno subito una distinzione tra il caso in cui la porta HDMI sia gestita dalla scheda integrata Intel o discreta NVIDIA.

Citazione:

Optimus laptops have two video chips: an integrated Intel and a discrete nVidia one. If the port (DisplayPort / HDMI / VGA) is wired to the Intel chip, you do not need to do anything special to get external monitors to work.

When the port is wired into the nvidia chip, you cannot currently expand the screen over monitors. The monitor may still be used as extra screen (with no desktop running on it) or to run the full desktop on it (with no output on the Intel LVDS output, a.k.a. "the laptop display").


Sinceramente non so come si faccia a capire da quale scheda sia gestita la mia porta HDMI (intel o NVIDIA). Qualcuno saprebbe darmi un consiglio?
Nella guida dicono di usare intel-virtual-output tool.
Citazione:


Check and see if you have the tool 'intel-virtual-output' installed. This is included in 'xf86-video-intel'

Con Google ho cercato xf86-video-intel debian wheezy e sono arrivato a questa pagina.
Ho controllato su Synaptic ed il pacchetto è già installato (vedi immagine allegata).

Da terminale ho provato ad accede all' help, ma

root@debian:~# intel-virtual-output -h
bash: intel-virtual-output: command not found

Non riesco a capire cosa c'è che non va. Qualcuno saprebbe darmi un consiglio?

Attached images:

Ritratto di badroot
badroot
(Guru)
Offline
Guru
Iscritto: 22/08/2008
Messaggi: 2083

Ciao,
tu hai detto di aver installato i driver dai backports giusto ? quindi dovresti provare :

sudo apt-get install -t wheezy-backports nvidia-settings

per restare allineato con i driver già installati.

Per HDMI l'unica cosa che proverei è vedere l'output del comando xrandr con TV collegata, magari dall'output qualcuno può darti qualche dritta.

Ritratto di 3vis
3vis
(Junior)
Offline
Junior
Iscritto: 23/06/2013
Messaggi: 32

Ciao!

Esatto, ho installato Bumblebee + driver NVIDIA da backports.
Ho seguito il tuo consiglio, ma:

root@debian:~# apt-get install -t wheezy-backports nvidia-settings
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
 
The following packages have unmet dependencies:
 nvidia-settings : Recommends: libgl1-nvidia-glx but it is not going to be installed
                   Breaks: nvidia-alternative (< 313.30-2)
                   Breaks: nvidia-alternative:i386 (< 313.30-2)
E: Unable to correct problems, you have held broken packages.

Qualche suggerimento? Confused

Ritratto di badroot
badroot
(Guru)
Offline
Guru
Iscritto: 22/08/2008
Messaggi: 2083

Ciao,
scusa ma ho dato, erroneamente, per scontato che i driver fossero gestiti come quelli "normali" nvidia senza bumblebee, ma vedo che le dipendenze di bumblebee sono completamente diverse.

E' possibile che per testare la scheda grafica tu debba anteporre il comando optirun, quindi :

optirun glxgears

non so però se sia effettivamente questo il modo corretto ma anche sul wiki c'è un esempio d'uso così.

Ritratto di 3vis
3vis
(Junior)
Offline
Junior
Iscritto: 23/06/2013
Messaggi: 32

E' un tentativo che ho già fatto.

Nel messaggio #0 ho postato l'output del comando optirun glxgears -info (viene utilizzata scheda NVIDIA discreta) e di glxgears -info (viene utilizzata la scheda integrata Intel), ma i risultati erano gli stessi in quanto glxgears rispettava la sincronia verticale.

Dopo aver letto la guida che hai suggerito, nel messaggio #3 ho postato i risultati di vblank_mode=0 optirun glxgears -info e vblank_mode=0 glxgears -info.
La cosa strana è che con la scheda integrata Intel si ottengono risultati migliori.
Ciò è dovuto al fatto che si dovrebbe cambiare un parametro in nvidia-settings, ma non riesco ad installare nvidia-settings.

Comunque, la cosa per me più importante è far funzionare l'uscita HDMI in modo da riuscire a vedere i film sulla TV.
Per questo ho installato Bumblebee con relativi driver NVIDIA, ma non riesco a capire come utilizzare intel-virtual-output descritto in questa guida.

Posto l'output di:

root@debian:~# lspci -nn | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller [8086:a001] (rev 02)
04:00.0 VGA compatible controller [0300]: NVIDIA Corporation GT218 [ION 2] [10de:0a76] (rev ff)

Qualsiasi suggerimento su come tentare di far funzionare l'uscita HDMI è ben accetto!

Più tardi proverò a vedere cosa riesco a capire in merito all'utilizzo di xrandr.

Ciao e grazie per il supporto finora ricevuto! Smile

Ritratto di badroot
badroot
(Guru)
Offline
Guru
Iscritto: 22/08/2008
Messaggi: 2083

Ciao,
scusa mi era sfuggito proprio che avevi gia' usato optirun, allora non saprei proprio cos'altro dirti.
Per intel-virtual-output mi pare di capire, cercando in rete, che questo binario non sia fornito con il pacchetto xserver-xorg-video-intel, questo post sembra trattare il tuo stesso problema ed ad un certo punto spiega come ottenere il famoso binario intel-virtual-output, e' specifico per Ubuntu ma forse ti puo' essere d'aiuto, anche se onestamente non mi sono chiari tutti i passaggi che vengono esposti.

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2918

C'è qualcosa di strano nei pacchetti installati. Potresti postare l'output di

dpkg --list "*nvidia*"

Ritratto di 3vis
3vis
(Junior)
Offline
Junior
Iscritto: 23/06/2013
Messaggi: 32

Ecco l'output:

root@debian:~# dpkg --list "*nvidia*"
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  bumblebee-nvid 3.2.1-4~bpo7 amd64        NVIDIA Optimus support using the 
ii  glx-alternativ 0.5.1~bpo70+ amd64        allows the selection of NVIDIA as
ii  libgl1-nvidia- 304.125-1    amd64        transition libGL.so* diversions t
un  libgl1-nvidia- <none>                    (no description available)
ii  libgl1-nvidia- 304.125-1    amd64        NVIDIA binary OpenGL libraries
un  libgl1-nvidia- <none>                    (no description available)
un  libgl1-nvidia- <none>                    (no description available)
un  libgl1-nvidia- <none>                    (no description available)
un  libgl1-nvidia- <none>                    (no description available)
un  libgl1-nvidia- <none>                    (no description available)
un  libgl1-nvidia- <none>                    (no description available)
ii  libglx-nvidia- 304.125-1    amd64        transition libgl.so diversions to
ii  libxvmcnvidia1 304.125-1    amd64        NVIDIA binary XvMC library
un  nvidia         <none>                    (no description available)
un  nvidia-304     <none>                    (no description available)
un  nvidia-304-upd <none>                    (no description available)
un  nvidia-310     <none>                    (no description available)
un  nvidia-310-upd <none>                    (no description available)
un  nvidia-313     <none>                    (no description available)
un  nvidia-313-upd <none>                    (no description available)
un  nvidia-319     <none>                    (no description available)
un  nvidia-319-upd <none>                    (no description available)
un  nvidia-325     <none>                    (no description available)
un  nvidia-325-upd <none>                    (no description available)
ii  nvidia-alterna 304.125-1    amd64        allows the selection of NVIDIA as
un  nvidia-current <none>                    (no description available)
un  nvidia-current <none>                    (no description available)
un  nvidia-driver  <none>                    (no description available)
un  nvidia-driver- <none>                    (no description available)
un  nvidia-experim <none>                    (no description available)
un  nvidia-experim <none>                    (no description available)
un  nvidia-experim <none>                    (no description available)
un  nvidia-experim <none>                    (no description available)
un  nvidia-experim <none>                    (no description available)
ii  nvidia-glx     304.125-1    amd64        NVIDIA metapackage
un  nvidia-glx-any <none>                    (no description available)
un  nvidia-glx-dev <none>                    (no description available)
un  nvidia-glx-ia3 <none>                    (no description available)
un  nvidia-glx-leg <none>                    (no description available)
un  nvidia-glx-leg <none>                    (no description available)
un  nvidia-glx-leg <none>                    (no description available)
un  nvidia-glx-leg <none>                    (no description available)
un  nvidia-glx-leg <none>                    (no description available)
un  nvidia-glx-leg <none>                    (no description available)
un  nvidia-glx-leg <none>                    (no description available)
ii  nvidia-install 20131102+1~b amd64        cleanup after driver installation
un  nvidia-kernel- <none>                    (no description available)
un  nvidia-kernel- <none>                    (no description available)
un  nvidia-kernel- <none>                    (no description available)
un  nvidia-kernel- <none>                    (no description available)
ii  nvidia-kernel- 20131102+1~b amd64        NVIDIA binary kernel module suppo
ii  nvidia-kernel- 304.125-1    amd64        NVIDIA binary kernel module DKMS 
un  nvidia-kernel- <none>                    (no description available)
un  nvidia-libvdpa <none>                    (no description available)
un  nvidia-libvdpa <none>                    (no description available)
un  nvidia-libvdpa <none>                    (no description available)
un  nvidia-libvdpa <none>                    (no description available)
un  nvidia-libvdpa <none>                    (no description available)
un  nvidia-libvdpa <none>                    (no description available)
un  nvidia-setting <none>                    (no description available)
un  nvidia-setting <none>                    (no description available)
ii  nvidia-support 20131102+1~b amd64        NVIDIA binary graphics driver sup
ii  nvidia-vdpau-d 304.125-1    amd64        NVIDIA vdpau driver
ii  xserver-xorg-v 304.125-1    amd64        NVIDIA binary Xorg driver
un  xserver-xorg-v <none>                    (no description available)