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

[Linux] Unusually long startup time #608

Open
ghost opened this issue Feb 7, 2016 · 78 comments
Open

[Linux] Unusually long startup time #608

ghost opened this issue Feb 7, 2016 · 78 comments
Assignees

Comments

@ghost
Copy link

ghost commented Feb 7, 2016

This isn't a major issue by any means, but it would be really nice if it could get looked into. Ever since moving over to linux full time, I've had an issue with CS:GO taking an unusually long time to launch.

I've just timed it, and when I launch the game from Steam, it takes a full 10 seconds before the system enters fullscreen mode, and then there is a solid black screen (I have -nosplash -novid set) for another 13 seconds. I don't recall having any sort of delay like this on Windows.. a few seconds at most.

So from launching the game to actually getting to the main menu, there is a total of a 23 second wait time. Here is a screen recording: https://www.youtube.com/watch?v=L5yuYx0zxp4

I'm running the game on a 2.5GB/s Samsung 950 Pro NVMe SSD.. it should be firing up pretty fast.

CS:GO is the only game I own that has this issue.

I would appreciate if someone could take a look. Thanks!

Kernel: 3.19.0-30-generic x86_64 (64 bit) Desktop: KDE Plasma 4.14.13
Distro: Linux Mint 17.3 Rosa
Mobo: Gigabyte model: Z170X-Gaming 3 Bios: American Megatrends v: F5h date: 12/23/2015
Quad core Intel Core i7-6700K (-HT-MCP-) cache: 8192 KB
Card: NVIDIA GK110 [GeForce GTX 780]
Display Server: X.Org 1.15.1 drivers: nvidia (unloaded: fbdev,vesa,nouveau)
Resolution: 2560x1440@60.0hz
GLX Renderer: GeForce GTX 780/PCIe/SSE2 GLX Version: 4.5.0 NVIDIA 361.18
Card-1 NVIDIA GK110 HDMI Audio driver: snd_hda_intel Sound: ALSA v: k3.19.0-30-generic
Card-2 Intel Sunrise Point-H HD Audio driver: snd_hda_intel
Card: Qualcomm Atheros Killer E220x Gigabit Ethernet Controller driver: alx
IF: eth0 state: up speed: 1000 Mbps duplex: full
HDD Total Size: NA (-) ID-1: /dev/sda model: WDC_WD1001FALS size: 1000.2GB
ID-1: / size: 406G used: 124G (33%) fs: ext4 dev: /dev/nvme0n1p5

@davidw-valve davidw-valve self-assigned this Feb 8, 2016
@ChristophHaag
Copy link

This has been bothering me too. It's not using a lot of cpu time and it's not reading from the hard disk. What is it doing? Maybe a failing network connection timing out?

@Mountaineer1024
Copy link

Mountaineer1024 commented Feb 23, 2016

I too am getting this with a similar setup.
Starting CS:GO takes so long that Gnome asks if I would like to wait or abort the process.

System Info: https://gist.github.com/anonymous/2d9526841e33438f30df0919239727b8

@robotmaxtron
Copy link

I have the same problem on Fedora 23

@tmnvanderberg
Copy link

I can confirm this on Manjaro.

@Tele42 Tele42 added the Linux label Jun 26, 2016
@Uramekus
Copy link

Uramekus commented Jul 4, 2016

still relevant, same behavior on arch

i really hope this get fixed, since i lost/abandon a competitive game because of it a month ago

@netguino
Copy link

Same issue here with arch, with steam_runtime enabled and disbaled.

my system info: https://gist.github.com/markitoxs/f19e4477dd1c573ad192009e910c4242

@HarleyGaniere
Copy link

HarleyGaniere commented Jan 8, 2017

It's 2017 and this issue is still present on Fedora 25, Debian Testing, and Ubuntu 16.10/16.04.

My System Information file.

@Mountaineer1024
Copy link

Mountaineer1024 commented Jan 9, 2017

I've just discovered that this problem has been a known issue even longer than I realised: Issue #383

I know this bug must be low priority as we can still play the game (eventually), but June 2015 to January 2017 is 18 months.

With no end in sight.

@davidw-valve: what can we do to help you help us?

Looking back even further I see this: Client takes 70 seconds to load #119
@Tele42 you closed 119 on the basis that

this is the expected behavior of a driver without an opengl shader cache.

But

AMD and nVidia have a shader cache in their proprietary driver.

So, is it possible this is related?
Is there any instrumentation operation we can perform to confirm the cache is being used appropriately?

@ghost
Copy link

ghost commented Jan 30, 2017

still an issue.

amdgpu-pro driver on fedora-25 with Radeon RX 480

following the output of the csgo startup script:

user@fedora-ws ~ % /bin/bash "/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo.sh" -steam -novid
SDL video target is 'x11'
SDL failed to create GL compatibility profile (whichProfile=0!
This system supports the OpenGL extension GL_EXT_framebuffer_object.
This system supports the OpenGL extension GL_EXT_framebuffer_blit.
This system supports the OpenGL extension GL_EXT_framebuffer_multisample.
This system DOES NOT support the OpenGL extension GL_APPLE_fence.
This system DOES NOT support the OpenGL extension GL_NV_fence.
This system supports the OpenGL extension GL_ARB_sync.
This system supports the OpenGL extension GL_EXT_draw_buffers2.
This system DOES NOT support the OpenGL extension GL_EXT_bindable_uniform.
This system DOES NOT support the OpenGL extension GL_APPLE_flush_buffer_range.
This system supports the OpenGL extension GL_ARB_map_buffer_range.
This system supports the OpenGL extension GL_ARB_vertex_buffer_object.
This system supports the OpenGL extension GL_ARB_occlusion_query.
This system DOES NOT support the OpenGL extension GL_APPLE_texture_range.
This system DOES NOT support the OpenGL extension GL_APPLE_client_storage.
This system DOES NOT support the OpenGL extension GL_ARB_uniform_buffer.
This system supports the OpenGL extension GL_ARB_vertex_array_bgra.
This system supports the OpenGL extension GL_EXT_vertex_array_bgra.
This system supports the OpenGL extension GL_ARB_framebuffer_object.
This system DOES NOT support the OpenGL extension GL_GREMEDY_string_marker.
This system supports the OpenGL extension GL_ARB_debug_output.
This system DOES NOT support the OpenGL extension GL_EXT_direct_state_access.
This system DOES NOT support the OpenGL extension GL_NV_bindless_texture.
This system supports the OpenGL extension GL_AMD_pinned_memory.
This system supports the OpenGL extension GL_EXT_framebuffer_multisample_blit_scaled.
This system supports the OpenGL extension GL_EXT_texture_sRGB_decode.
This system supports the OpenGL extension GL_NVX_gpu_memory_info.
This system supports the OpenGL extension GL_ATI_meminfo.
This system supports the OpenGL extension GL_EXT_texture_compression_s3tc.
This system supports the OpenGL extension GL_EXT_texture_compression_dxt1.
This system supports the OpenGL extension GL_ANGLE_texture_compression_dxt3.
This system supports the OpenGL extension GL_ANGLE_texture_compression_dxt5.
This system supports the OpenGL extension GL_ARB_buffer_storage.
This system DOES NOT support the OpenGL extension GLX_EXT_swap_control_tear.
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/engine_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/engine_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/filesystem_stdio_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/filesystem_stdio_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/inputsystem_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/inputsystem_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vphysics_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vphysics_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/materialsystem_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/materialsystem_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/datacache_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/datacache_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/studiorender_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/studiorender_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/soundemittersystem_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/soundemittersystem_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vscript_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vscript_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vguimatsurface_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vguimatsurface_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vgui2_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/vgui2_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/scaleformui_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/scaleformui_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/shaderapidx9_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/shaderapidx9_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/localize_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/localize_client.so: wrong ELF class: ELFCLASS32
Using breakpad minidump system 730/13565.433
Using breakpad crash handler
Setting breakpad minidump AppID = 730
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Steam_SetMinidumpSteamID:  Caching Steam ID:  76561197963687483 [API loaded yes]
Steam_SetMinidumpSteamID:  Setting Steam ID:  76561197963687483
USRLOCAL path using Steam profile data folder:
/home/user/.local/share/Steam/userdata/3421755/730/local
Did not detect any valid joysticks.
Timed out waiting for game mapping!
RESZ NOT SUPPORTED!
INTZ NOT SUPPORTED!
RESZ NOT SUPPORTED!
INTZ NOT SUPPORTED!
Failed to read the default inventory image file (materials/vgui/inventory_default.vtf)

 ##### swap interval = 0     swap limit = 1 #####
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/bin/matchmaking_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/bin/matchmaking_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/bin/client_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/bin/client_client.so: wrong ELF class: ELFCLASS32
CClientSteamContext logged on = 1
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/bin/server_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/bin/server_client.so: wrong ELF class: ELFCLASS32
Game.dll loaded for "Counter-Strike: Global Offensive"
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/soundemittersystem_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/soundemittersystem_client.so: wrong ELF class: ELFCLASS32
 failed to dlopen /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/scenefilecache_client.so error=/home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/bin/scenefilecache_client.so: wrong ELF class: ELFCLASS32
CGameEventManager::AddListener: event 'server_pre_shutdown' unknown.
CGameEventManager::AddListener: event 'game_newmap' unknown.
CGameEventManager::AddListener: event 'finale_start' unknown.
CGameEventManager::AddListener: event 'round_start' unknown.
CGameEventManager::AddListener: event 'round_end' unknown.
CGameEventManager::AddListener: event 'difficulty_changed' unknown.
CGameEventManager::AddListener: event 'player_connect' unknown.
CGameEventManager::AddListener: event 'player_disconnect' unknown.
GameTypes: missing mapgroupsSP entry for game type/mode (custom/custom).
GameTypes: missing mapgroupsSP entry for game type/mode (cooperative/cooperative).
GameTypes: missing mapgroupsSP entry for game type/mode (cooperative/coopmission).
****loading serverbrowser_client.so
Unable to remove /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/textwindow_temp.html! (errno 2)
Reference Count for Material __background (1) != 0
Reference Count for Material __particlesdepthwrite (1) != 0
Reference Count for Material particle/headshot/headshot (5) != 0
Reference Count for Material particle/pebble1/particle_pebble_1 (2) != 0
Reference Count for Material particle/spray1/spray1 (15) != 0
Reference Count for Material particle/smoke1/smoke1_nearcull2 (1) != 0
Reference Count for Material particle/smoke1/smoke1 (12) != 0
Reference Count for Material particle/blood_core (12) != 0
Reference Count for Material particle/blood_drop (1) != 0
Reference Count for Material particle/bleedout_01 (1) != 0
Reference Count for Material particle/star_ob (10) != 0
Reference Count for Material particle/fire_burning_character/fire_env_fire_depthblend_oriented (2) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1_emods_impactdust (19) != 0
Reference Count for Material particle/particle_smokegrenade2 (4) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1_nearcull (6) != 0
Reference Count for Material particle/smoke1/smoke1_nearcull (14) != 0
Reference Count for Material particle/particle_flares/particle_flare_001_nodepth_noz (16) != 0
Reference Count for Material particle/particle_anamorphic_lens (4) != 0
Reference Count for Material particle/impact/fleks (62) != 0
Reference Count for Material particle/blood_splatter/blood_splatter (5) != 0
Reference Count for Material particle/particle_flares/particle_flare_gray (6) != 0
Reference Count for Material particle/particle_spark (30) != 0
Reference Count for Material particle/particle_flares/particle_flare_004b_mod_z (4) != 0
Reference Count for Material particle/warp5_explosion (3) != 0
Reference Count for Material particle/fire_burning_character/fire_burning_character (17) != 0
Reference Count for Material particle/fluidexplosions/fluidexplosion (3) != 0
Reference Count for Material particle/particle_flares/particle_flare_004b_mod_ob (13) != 0
Reference Count for Material particle/particle_glow_01 (10) != 0
Reference Count for Material particle/particle_ring_wave_12 (6) != 0
Reference Count for Material particle/water_splash/water_splash (9) != 0
Reference Count for Material particle/spray1/spray1_addself (6) != 0
Reference Count for Material particle/particle_debris_burst/particle_debris_burst_001 (7) != 0
Reference Count for Material particle/droplets/droplets (1) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1_fire (2) != 0
Reference Count for Material particle/dirt_splash/dirt_splash (10) != 0
Reference Count for Material particle/particle_smokegrenade1 (3) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1_emods (22) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1_smokegrenade (2) != 0
Reference Count for Material particle/particle_ring_wave_2 (3) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev4_emods_nocull (5) != 0
Reference Count for Material particle/sparks/sparks (26) != 0
Reference Count for Material particle/particle_smokegrenade3 (1) != 0
Reference Count for Material decals/blood8 (2) != 0
Reference Count for Material vgui/white (16) != 0
Reference Count for Material particle/particle_glow_04_additive (13) != 0
Reference Count for Material particle/star (6) != 0
Reference Count for Material particle/particle_flares/particle_flare_004_mod_usez (3) != 0
Reference Count for Material particle/impact/fleks2 (8) != 0
Reference Count for Material particle/fire_particle_2/fire_particle_2 (1) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev4_nocull (1) != 0
Reference Count for Material particle/fire_burning_character/fire_env_fire (12) != 0
Reference Count for Material particle/warp_ripple2 (2) != 0
Reference Count for Material particle/particle_smokegrenade_sc (20) != 0
Reference Count for Material particle/particle_debris_burst/particle_debris_burst_002_add (1) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1 (4) != 0
Reference Count for Material particle/particle_glow_03 (1) != 0
Reference Count for Material particle/particle_debris_burst/particle_debris_burst_002 (4) != 0
Reference Count for Material effects/spark (1) != 0
Reference Count for Material particle/leaf/leafdead (3) != 0
Reference Count for Material particle/particle_smokegrenade (2) != 0
Reference Count for Material particle/warp_ripple (1) != 0
Reference Count for Material particle/beam_taser (6) != 0
Reference Count for Material effects/fleck_cement1 (2) != 0
Reference Count for Material particle/star_noz (1) != 0
Reference Count for Material particle/particle_glow_05_add_15ob_noz (1) != 0
Reference Count for Material particle/particle_glow_05_add_5ob (1) != 0
Reference Count for Material particle/star_minmaxsize (3) != 0
Reference Count for Material particle/shells/particle_shells (16) != 0
Reference Count for Material particle/fire_explosion_1/fire_explosion_1_oriented (4) != 0
Reference Count for Material particle/fire_explosion_1/fire_explosion_1_bright (3) != 0
Reference Count for Material particle/fire_burning_character/fire_burning_character_depthblend (4) != 0
Reference Count for Material particle/warp5_warp (1) != 0
Reference Count for Material particle/fire_burning_character/fire_env_fire_depthblend (3) != 0
Reference Count for Material particle/particle_flares/particle_flare_004 (5) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1_nearcull_nodepth (4) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev1_nearcull_fog (1) != 0
Reference Count for Material particle/particle_flares/particle_flare_004b_mod (1) != 0
Reference Count for Material particle/particle_flares/particle_flare_001 (1) != 0
Reference Count for Material particle/fire_explosion_1/fire_explosion_1b (1) != 0
Reference Count for Material particle/particle_flares/aircraft_white_noignorez (5) != 0
Reference Count for Material particle/fire_particle_4/fire_particle_4 (72) != 0
Reference Count for Material particle/muzzleflashcloud (2) != 0
Reference Count for Material particle/particle_muzzleflash4 (4) != 0
Reference Count for Material particle/bendibeam (1) != 0
Reference Count for Material particle/particle_muzzleflashx (4) != 0
Reference Count for Material particle/vistasmokev1/vistasmokev4_nearcull (2) != 0
Reference Count for Material particle/particle_glow_04 (1) != 0
Reference Count for Material particle/particle_muzzleflash2 (5) != 0
Reference Count for Material particle/particle_modulate_01 (1) != 0
Reference Count for Material particle/particle_flares/particle_flare_001_nodepth_noz_nearfade (1) != 0
Reference Count for Material particle/beam_smoke_01 (6) != 0
Reference Count for Material particle/fire_burning_character/fire_burning_character_nodepth (7) != 0
Reference Count for Material particle/fire_burning_character/fire_molotov_crop (1) != 0
Reference Count for Material particle/confetti/confetti (6) != 0
Reference Count for Material particle/paper/paper (6) != 0
Reference Count for Material particle/particle_ring_refract_01 (1) != 0
Reference Count for Material particle/bendibeam_cheap (1) != 0
Reference Count for Material particle/voice_icon_particle (2) != 0
Reference Count for Material particle/radio_icon_particle (2) != 0
Reference Count for Material particle/muzzleflash/noisecloud1 (4) != 0
Reference Count for Material particle/particle_glow_01_additive (1) != 0
Reference Count for Material engine/writez (1) != 0
Reference Count for Material engine/preloadtexture (1) != 0
Reference Count for Material ___error (1) != 0
Leaking 7015 vertex shaders
Leaking 3221 pixel shaders
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_006.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_006.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_039.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_039.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_073.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_073.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_035.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_035.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_025.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_025.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_015.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_015.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_002.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_002.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_048.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_048.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_000.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_000.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_004.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_004.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_001.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_001.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_029.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_029.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_054.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_054.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_003.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_003.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_032.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_032.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_055.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_055.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_068.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_068.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_076.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_076.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_077.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_077.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_018.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_018.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_061.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_061.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_047.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_047.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_071.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_071.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_010.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_010.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_011.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_011.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_026.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_026.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_009.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_009.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_012.vpk was never closed
File /home/user/.local/share/Steam/steamapps/common/Counter-Strike Global Offensive/csgo/pak01_012.vpk was never closed
Missing shutdown function for g_pMatchFramework->Init() : g_pMatchFramework->Shutdown()

@ghost
Copy link

ghost commented Feb 3, 2017

@mnlhfr I have exact the same log as you idk why csgo doesn't work as normally even on windows its have fps lag that wasn't before like that i had smooth performance on highest settings 2560x1440p while now on lowest settings and lowest resolution 640x its lagging insane (LINUX) AND (WINDOWS).

@leandroboari
Copy link

I hava same problem on ArchLinux!

@ernstp
Copy link

ernstp commented Feb 20, 2017

For me it takes a full minute to start. Testing the in-development Mesa/RadeonSI binary shader cache did not noticeably improve startup time.
During this minute memory usage grows quickly, ending at ~4GB. This amount is not affected by quality settings in the game.

@JamesTheAwesomeDude
Copy link

JamesTheAwesomeDude commented Mar 28, 2017

I'm getting this as well.

In fact, I didn't even realize this wasn't how it was supposed to be; I recently disabled STEAM_RUNTIME and was floored by the fact that this dropped the game's start time to a mere 50 seconds…and then I found out that the Windows copy starts up in a fraction of that.

I'm actually getting significantly better startup times running this through Wine than the native version. Seems like there is a lot of room for optimization or something here.

@nhducit
Copy link

nhducit commented Apr 15, 2017

I cannot start game on my Macbook Pro 2016 15", even switching to high-performance VGA

SDL video target is 'cocoa'
SDL failed to create GL compatibility profile (whichProfile=0!
CDynamicFunction: Loading library '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib' (0x1001097c0)
CDynamicFunction: Lookup of 'glGetString' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00c21
CDynamicFunction: Lookup of 'glGetError' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa009fa
CDynamicFunction: Lookup of 'glActiveTexture' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0300b
CDynamicFunction: Lookup of 'glAlphaFunc' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffcd3
CDynamicFunction: Lookup of 'glAttachObjectARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08d58
CDynamicFunction: Lookup of 'glBegin' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffd30
CDynamicFunction: Lookup of 'glBindAttribLocationARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09211
CDynamicFunction: Lookup of 'glBindBufferARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08aef
CDynamicFunction: Lookup of 'glBindProgramARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa075e8
CDynamicFunction: Lookup of 'glBindTexture' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffd4b
CDynamicFunction: Lookup of 'glBlendColor' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0291b
CDynamicFunction: Lookup of 'glBlendEquation' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02935
CDynamicFunction: Lookup of 'glBlendFunc' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffd91
CDynamicFunction: Lookup of 'glBufferDataARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08b79
CDynamicFunction: Lookup of 'glClear' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffdf2
CDynamicFunction: Lookup of 'glClearColor' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffe24
CDynamicFunction: Lookup of 'glClearDepth' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffe3b
CDynamicFunction: Lookup of 'glClearStencil' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffe69
CDynamicFunction: Lookup of 'glClipPlane' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffba9ffe87
CDynamicFunction: Lookup of 'glColorMask' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa002d5
CDynamicFunction: Lookup of 'glCompileShaderARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08d21
CDynamicFunction: Lookup of 'glCompressedTexImage2D' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa03559
CDynamicFunction: Lookup of 'glCompressedTexImage3D' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa03503
CDynamicFunction: Lookup of 'glCreateProgramObjectARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08d41
CDynamicFunction: Lookup of 'glCreateShaderObjectARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08cde
CDynamicFunction: Lookup of 'glDeleteBuffersARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08b13
CDynamicFunction: Lookup of 'glDeleteObjectARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08c7a
CDynamicFunction: Lookup of 'glDeleteProgramsARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0760c
CDynamicFunction: Lookup of 'glDeleteQueriesARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa089f3
CDynamicFunction: Lookup of 'glDeleteShader' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa045cd
CDynamicFunction: Lookup of 'glDeleteTextures' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa004ab
CDynamicFunction: Lookup of 'glDepthFunc' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa004cf
CDynamicFunction: Lookup of 'glDepthMask' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa004ed
CDynamicFunction: Lookup of 'glDepthRange' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0050b
CDynamicFunction: Lookup of 'glDetachObjectARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08cb8
CDynamicFunction: Lookup of 'glDisable' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00525
CDynamicFunction: Lookup of 'glDisableVertexAttribArray' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0450f
CDynamicFunction: Lookup of 'glDrawArrays' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00561
CDynamicFunction: Lookup of 'glDrawBuffer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00589
CDynamicFunction: Lookup of 'glDrawBuffers' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa03fb3
CDynamicFunction: Lookup of 'glDrawRangeElements' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02953
CDynamicFunction: Lookup of 'glDrawRangeElementsBaseVertex' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa05bed
CDynamicFunction: Lookup of 'glEnable' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00652
CDynamicFunction: Lookup of 'glEnableVertexAttribArray' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa044f1
CDynamicFunction: Lookup of 'glEnd' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0068e
CDynamicFunction: Lookup of 'glFinish' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0085c
CDynamicFunction: Lookup of 'glFlush' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00873
CDynamicFunction: Lookup of 'glFrontFace' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00914
CDynamicFunction: Lookup of 'glGenBuffersARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08b37
CDynamicFunction: Lookup of 'glGenProgramsARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa07630
CDynamicFunction: Lookup of 'glGenQueriesARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa089cf
CDynamicFunction: Lookup of 'glGenTextures' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0096a
CDynamicFunction: Lookup of 'glGetBooleanv' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0098e
CDynamicFunction: Lookup of 'glGetCompressedTexImage' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa036e6
CDynamicFunction: Lookup of 'glGetDoublev' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa009d6
CDynamicFunction: Lookup of 'glGetFloatv' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00a11
CDynamicFunction: Lookup of 'glGetInfoLogARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa090e8
CDynamicFunction: Lookup of 'glGetIntegerv' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00a35
CDynamicFunction: Lookup of 'glGetObjectParameterivARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa090be
CDynamicFunction: Lookup of 'glGetProgramivARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa07ec5
CDynamicFunction: Lookup of 'glGetString' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00c21
CDynamicFunction: Lookup of 'glGetTexImage' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00d07
CDynamicFunction: Lookup of 'glGetUniformLocationARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09132
CDynamicFunction: Lookup of 'glIsEnabled' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00f9a
CDynamicFunction: Lookup of 'glIsTexture' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00fd6
CDynamicFunction: Lookup of 'glLinkProgramARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08d7e
CDynamicFunction: Lookup of 'glMapBufferARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08be8
CDynamicFunction: Lookup of 'glOrtho' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa015cb
CDynamicFunction: Lookup of 'glPixelStorei' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01695
CDynamicFunction: Lookup of 'glPolygonMode' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0172f
CDynamicFunction: Lookup of 'glPolygonOffset' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01753
CDynamicFunction: Lookup of 'glPopAttrib' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0178d
CDynamicFunction: Lookup of 'glProgramStringARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa07e7a
CDynamicFunction: Lookup of 'glPushAttrib' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01813
CDynamicFunction: Lookup of 'glReadBuffer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01b7e
CDynamicFunction: Lookup of 'glScissor' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01d73
CDynamicFunction: Lookup of 'glShaderSourceARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08cfc
CDynamicFunction: Lookup of 'glStencilFunc' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01dd8
CDynamicFunction: Lookup of 'glStencilMask' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01e00
CDynamicFunction: Lookup of 'glStencilOp' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01e1e
CDynamicFunction: Lookup of 'glTexCoord2f' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01f70
CDynamicFunction: Lookup of 'glTexImage2D' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02420
CDynamicFunction: Lookup of 'glTexImage3D' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02986
CDynamicFunction: Lookup of 'glTexParameterfv' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0249a
CDynamicFunction: Lookup of 'glTexParameteri' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa024c2
CDynamicFunction: Lookup of 'glTexSubImage2D' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02551
CDynamicFunction: Lookup of 'glUniform1f' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0472e
CDynamicFunction: Lookup of 'glUniform1i' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa047a6
CDynamicFunction: Lookup of 'glUniform1iARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08e56
CDynamicFunction: Lookup of 'glUniform4fv' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa048b3
CDynamicFunction: Lookup of 'glUnmapBuffer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa03f45
CDynamicFunction: Lookup of 'glUseProgram' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa046d1
CDynamicFunction: Lookup of 'glVertex3f' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02711
CDynamicFunction: Lookup of 'glVertexAttribPointer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa044be
CDynamicFunction: Lookup of 'glViewport' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa028f8
CDynamicFunction: Lookup of 'glEnableClientState' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00670
CDynamicFunction: Lookup of 'glDisableClientState' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00543
CDynamicFunction: Lookup of 'glClientActiveTexture' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02fed
CDynamicFunction: Lookup of 'glVertexPointer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa028d5
CDynamicFunction: Lookup of 'glTexCoordPointer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa02230
CDynamicFunction: Lookup of 'glProgramEnvParameters4fvEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa07d94
CDynamicFunction: Lookup of 'glColor4sv' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa001ec
CDynamicFunction: Lookup of 'glStencilOpSeparate' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04c68
CDynamicFunction: Lookup of 'glStencilFuncSeparate' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04c45
CDynamicFunction: Lookup of 'glGetTexLevelParameteriv' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00d50
CDynamicFunction: Lookup of 'glColor4f' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0014c
CDynamicFunction: Lookup of 'glGetString' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa00c21
This system supports the OpenGL extension GL_EXT_framebuffer_object.
CDynamicFunction: Lookup of 'glBindFramebufferEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09baa
CDynamicFunction: Lookup of 'glBindRenderbufferEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09ad5
CDynamicFunction: Lookup of 'glCheckFramebufferStatusEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09c16
CDynamicFunction: Lookup of 'glDeleteRenderbuffersEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09af9
CDynamicFunction: Lookup of 'glFramebufferRenderbufferEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09cb3
CDynamicFunction: Lookup of 'glFramebufferTexture2DEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09c5a
CDynamicFunction: Lookup of 'glFramebufferTexture3DEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09c80
CDynamicFunction: Lookup of 'glGenFramebuffersEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09bf2
CDynamicFunction: Lookup of 'glGenRenderbuffersEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09b1d
CDynamicFunction: Lookup of 'glDeleteFramebuffersEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09bce
This system supports the OpenGL extension GL_EXT_framebuffer_blit.
CDynamicFunction: Lookup of 'glBlitFramebufferEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09d17
This system supports the OpenGL extension GL_EXT_framebuffer_multisample.
CDynamicFunction: Lookup of 'glRenderbufferStorageMultisampleEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09d7a
This system supports the OpenGL extension GL_APPLE_fence.
CDynamicFunction: Lookup of 'glTestFenceAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a991
CDynamicFunction: Lookup of 'glSetFenceAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a955
CDynamicFunction: Lookup of 'glFinishFenceAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a9af
CDynamicFunction: Lookup of 'glDeleteFencesAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a931
CDynamicFunction: Lookup of 'glGenFencesAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a90d
This system DOES NOT support the OpenGL extension GL_NV_fence.
This system supports the OpenGL extension GL_ARB_sync.
This system supports the OpenGL extension GL_EXT_draw_buffers2.
CDynamicFunction: Lookup of 'glColorMaskIndexedEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a5df
CDynamicFunction: Lookup of 'glEnableIndexedEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a605
CDynamicFunction: Lookup of 'glDisableIndexedEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a629
CDynamicFunction: Lookup of 'glGetBooleanIndexedvEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09f68
This system supports the OpenGL extension GL_EXT_bindable_uniform.
CDynamicFunction: Lookup of 'glUniformBufferEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09f90
CDynamicFunction: Lookup of 'glGetUniformBufferSizeEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09fb8
CDynamicFunction: Lookup of 'glGetUniformOffsetEXT' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa09fdc
This system supports the OpenGL extension GL_APPLE_flush_buffer_range.
CDynamicFunction: Lookup of 'glBufferParameteriAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0ac14
CDynamicFunction: Lookup of 'glFlushMappedBufferRangeAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0ac3c
This system DOES NOT support the OpenGL extension GL_ARB_map_buffer_range.
This system supports the OpenGL extension GL_ARB_vertex_buffer_object.
CDynamicFunction: Lookup of 'glBufferSubData' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa03ed7
This system supports the OpenGL extension GL_ARB_occlusion_query.
CDynamicFunction: Lookup of 'glBeginQueryARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08a35
CDynamicFunction: Lookup of 'glEndQueryARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08a59
CDynamicFunction: Lookup of 'glGetQueryObjectivARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08a9f
CDynamicFunction: Lookup of 'glGetQueryObjectuivARB' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa08ac7
This system supports the OpenGL extension GL_APPLE_texture_range.
CDynamicFunction: Lookup of 'glTextureRangeAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a8bd
CDynamicFunction: Lookup of 'glGetTexParameterPointervAPPLE' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa0a8e5
This system supports the OpenGL extension GL_APPLE_client_storage.
This system DOES NOT support the OpenGL extension GL_ARB_uniform_buffer.
This system supports the OpenGL extension GL_ARB_vertex_array_bgra.
This system supports the OpenGL extension GL_EXT_vertex_array_bgra.
This system supports the OpenGL extension GL_ARB_framebuffer_object.
CDynamicFunction: Lookup of 'glBindFramebuffer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04e98
CDynamicFunction: Lookup of 'glBindRenderbuffer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04dc3
CDynamicFunction: Lookup of 'glCheckFramebufferStatus' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04f04
CDynamicFunction: Lookup of 'glDeleteRenderbuffers' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04de7
CDynamicFunction: Lookup of 'glFramebufferRenderbuffer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04fa1
CDynamicFunction: Lookup of 'glFramebufferTexture2D' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04f48
CDynamicFunction: Lookup of 'glFramebufferTexture3D' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04f6e
CDynamicFunction: Lookup of 'glGenFramebuffers' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04ee0
CDynamicFunction: Lookup of 'glGenRenderbuffers' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04e0b
CDynamicFunction: Lookup of 'glDeleteFramebuffers' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa04ebc
CDynamicFunction: Lookup of 'glBlitFramebuffer' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa05005
CDynamicFunction: Lookup of 'glRenderbufferStorageMultisample' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa05068
This system DOES NOT support the OpenGL extension GL_GREMEDY_string_marker.
This system DOES NOT support the OpenGL extension GL_ARB_debug_output.
This system DOES NOT support the OpenGL extension GL_EXT_direct_state_access.
This system DOES NOT support the OpenGL extension GL_NV_bindless_texture.
This system DOES NOT support the OpenGL extension GL_AMD_pinned_memory.
This system DOES NOT support the OpenGL extension GL_EXT_framebuffer_multisample_blit_scaled.
This system supports the OpenGL extension GL_EXT_texture_sRGB_decode.
CDynamicFunction: Lookup of 'glPushClientAttrib' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa01831
CDynamicFunction: Lookup of 'glPopClientAttrib' in '/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib': 0x7fffbaa017a4
This system DOES NOT support the OpenGL extension GL_NVX_gpu_memory_info.
This system DOES NOT support the OpenGL extension GL_ATI_meminfo.
This system supports the OpenGL extension GL_EXT_texture_compression_s3tc.
This system supports the OpenGL extension GL_EXT_texture_compression_dxt1.
This system DOES NOT support the OpenGL extension GL_ANGLE_texture_compression_dxt3.
This system DOES NOT support the OpenGL extension GL_ANGLE_texture_compression_dxt5.
This system DOES NOT support the OpenGL extension GL_ARB_buffer_storage.
This system DOES NOT support the OpenGL extension GLX_EXT_swap_control_tear.
Using breakpad minidump system 730/13574.470
Using breakpad crash handler
/Users/buildbot/buildslave/steam_rel_client_osx/build/src/common/pipes.cpp (769) : Assertion Failed: fatal stalled cross-thread pipe
/Users/buildbot/buildslave/steam_rel_client_osx/build/src/common/pipes.cpp (769) : Fatal assert failed: /Users/buildbot/buildslave/steam_rel_client_osx/build/src/common/pipes.cpp, line 769.  Application exiting.

Assert( Assertion Failed: fatal stalled cross-thread pipe ):/Users/buildbot/buildslave/steam_rel_client_osx/build/src/common/pipes.cpp:769

_ExitOnFatalAssert

@kisak-valve
Copy link
Member

Hello @nhducit, your issue does not sound related to this issue. Please open a new issue report.

@jalius
Copy link

jalius commented Jul 25, 2017

also experiencing long launch times on ubuntu 14.04
windowed or fullscreen doesn't matter, the game will hang on black screen with low cpu for about 1 minute, then proceed with intro video.

@leodutra
Copy link

My Insurgency has the same problem on Arch.
All the other Steam games not using Source Engine runs with no hang on boot.
#1508

Source Engine is the thing to look.

@XakepSDK
Copy link

ArchLinux. This happens only with csgo. If i press any key atm, game will be closed after some time(20-30 seconds)

@dbc2201
Copy link

dbc2201 commented Jan 20, 2018

This issue is still persistent. I recently moved to Ubuntu 16.04 LTS and I'm running CSGO through the steam option. The maps takes more than 2 minutes to load and I even get cooldowns in competitive matches because of that. Even while selecting teams is takes up a while to render the screen.

@brianlombardo
Copy link

I can confirm this is still an issue. it doesn't happen every time. it could be related to higher graphics settings, wrong permissions on steam library folder, and/or use of a library in another disk/folder

@ChristophHaag
Copy link

To bring some numbers here: Directly on startup the game freezes for ~40 seconds. There's no unusally high CPU or GPU activity, but ~1000 shaders are compiled / ~2000 shaders are created: csgo startup

When loading a map it freezes for ~20 seconds, often longer. In this image you see 30 shaders compiled but that is distinctly after the freeze, the only real activity is 80 mb being moved to or from VRAM: csgo map load

The windows version in wine starts up much faster and loads maps much faster.

Sure we could try to perf profile it further but this is something the csgo developers who have the source code absolutely need to profile and fix, together with the actual game running much less smoothly/with worse frame pacing than the windows version in wine.

@leodutra
Copy link

leodutra commented Mar 24, 2018 via email

@vanitasvitae
Copy link

I got huge improvements after enabling the mesa shader cache on mesa 18.0.0 (intel graphics).

@shashank-sharma
Copy link

Same issue happening with me and it really takes around 20 seconds to start the game and on start of each round it takes 3 minutes.
OS: Ubuntu GNOME 16.04
RAM: 8GB
Graphic Card: Nvidia GEFORCE 940mx

Still there is no fix ?

@caphene
Copy link

caphene commented Feb 26, 2021

Well, I disabled the steam shader caching and the problem has gone away, I've followed these steps: https://www.technipages.com/how-to-disable-shader-pre-caching-in-steam

This ended up working for me as well.

Shader pre-cache disabled: 25s
Shader pre-cache enabled: 3m 19s

+rep @turrini

@jthistle
Copy link

It's a shame, because I would really like it if shader pre-caching worked on Linux, but it seems so broken (and has been, for a long time).

@samunders-core
Copy link

samunders-core commented Apr 3, 2021

For me disabling shader pre-cache was not enough, I also had to explicitly remove/rename $HOME/.steam/debian-installation/steamapps/shadercache/730 directory to get sub-minute CS GO startup. i5 3500K, NVIDIA GTX 670, driver 450.66, Debian Buster, kernel 5.4.106-1-pve

@mannnish
Copy link

Well, I disabled the steam shader caching and the problem has gone away, I've followed these steps: https://www.technipages.com/how-to-disable-shader-pre-caching-in-steam

I guess we can close the issue, as this worked perfectly fine in most of the cases.

@eiglow
Copy link

eiglow commented Jun 6, 2021

I have had this bug for years. Shader pre-caching disabled, .steam/steamapps/shadercache/730 is nonexistent. I have an AMD RX Vega 56, on Fedora 34. CS:GO takes several minutes to start up, and by the time it finally starts, it will be taking >5GB of RAM.

@Mailaender
Copy link

I can confirm this on @openSUSE with @NVIDIA 390.144 drivers. Disabling the shader pre-cache improves it a lot.

@yuyuen72
Copy link

confirm this on Ubuntu 20.04 with Nvidia 390.144 drivers, only disabling the shader pre-cache nothing changed, with remove $HOME/.steam/debian-installation/steamapps/shadercache/730 improves it a lot.

@kisak-valve
Copy link
Member

Hello, https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18484 looks like something worth testing for Intel (GPU) and AMD (GPU) players. Does not affect NVIDIA players.

@ernstp
Copy link

ernstp commented Sep 8, 2022

Interestingly there was a update that should improve startup performance released today also:
https://blog.counter-strike.net/index.php/2022/09/39497/

@pawelpotoniec
Copy link

time reduced from 45 seconds to 2-3

@Janhouse
Copy link

Hello, https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18484 looks like something worth testing for Intel (GPU) and AMD (GPU) players. Does not affect NVIDIA players.

Tried it, it does work. Now just waiting for it to end up in a stable release. Mesa v22.2 doesn't have it and you have to build from git.

@tilderain
Copy link

For me disabling shader pre-cache was not enough, I also had to explicitly remove/rename $HOME/.steam/debian-installation/steamapps/shadercache/730 directory to get sub-minute CS GO startup. i5 3500K, NVIDIA GTX 670, driver 450.66, Debian Buster, kernel 5.4.106-1-pve

Make sure you remove $HOME/.nv/GLCache/ as well if it exists. Mine was using the files in there instead of the ones from steam's shadercache

@Guanran928
Copy link

Guanran928 commented Apr 1, 2023

Can confirm this on multiple devices:
macOS Big Sur (iMac 2017) ~3min
macOS Big Sur (iMac 2019) ~2min
Ubuntu 22.04.2 LTS (Lenovo LEGION Y7000 2019, nVidia 1050ti) ~6.5min, also can't enter any map. (stuck progress bar, waited for 30min)

All of them are running on my external TOSHIBA HDD, formatted as ExFAT, with NO issues on Windows 10 Pro.

(should be a software issue since CS:S works perfectly)

SS:
image

@ghost
Copy link

ghost commented Jul 16, 2023

This is still happening to me on Manjaro w/ Nvidia (started about a week or two ago)... wouldn't be a big problem if the game didn't also crash when I open the damn Steam overlay.

EDIT: Also happens with cache deleted from both steam and nvidia directories and the shader pre-cache disabled...

@eiglow
Copy link

eiglow commented Jul 17, 2023

For me, -vulkan helped a lot with both the initial startup and the loading duration when joining a server.

However, since the dxvk version in csgo is quite old, it was pretty stuttery until I updated it with the latest dxvk-native version from here: https://github.com/doitsujin/dxvk/releases

@ghost
Copy link

ghost commented Jul 17, 2023

@eiglow Thanks for the tip! Last time I tried, Vulkan was stuttery for me too. Does updating with the latest dxvk completely remove the stuttering? Do I have to do it every time csgo receives an update? Can I get VAC banned?

@eiglow
Copy link

eiglow commented Jul 17, 2023

Does updating with the latest dxvk completely remove the stuttering?

It completely removed the stuttering for me. The only downside is that I was unable to change my resolution. This isn't a problem for me on my desktop, but on my laptop with a very high-DPI display and integrated graphics, its a bit more of an issue.

Do I have to do it every time csgo receives an update?

I don't think so unless the update involves that specific file. I've had my game updated a few times since doing it and it seems to still work.

Can I get VAC banned?

No, VAC bans only target cheats. If you're not trying to install a cheat, you won't get VAC banned. The worst that will happen if your files aren't in a consistent state is you can get errors like "VAC was unable to verify your game session", which is fixed either by restarting the game or verifying the files. But I haven't encountered this as a result of upgrading dxvk.

@ipaqmaster
Copy link

This seems to come and go over the years and this is another round.

The best/fastest/easiest thing to test would be older gpu drivers (and kernel versions if needed to build). If I find time over the next few weeks I'll test for a solution.

@ghost
Copy link

ghost commented Jul 26, 2023

I forgot to say, Vulkan worked for me for like half a match and then become a 5fps slideshow, although 75fps was shown by cl_showfps 1 at all times. So I turned back to OpenGL... but surprisingly the game launched as fast as it did with Vulkan and kinda stayed that way since...

@ipaqmaster I haven't reverted to an older kernel or GPU driver so I doubt the version is what matters. Maybe after the update some cache or files that were meant for the old versions were not properly cleared or updated, and that triggers this pathological case.

@ipaqmaster
Copy link

I forgot to say, Vulkan worked for me for like half a match and then become a 5fps slideshow

This is unfortunately a known problem (#2901) making -vulkan non-viable for many at the moment though in that issue people are having good luck using LD_PRELOAD="" %command% as their launch options to avoid those stutters. May be worth you trying that as well.

@ipaqmaster I haven't reverted to an older kernel or GPU driver so I doubt the version is what matters

My intention without context was to try downgrading to previous month versions to see if the issue goes away.

Maybe after the update some cache or files that were meant for the old versions were not properly cleared or updated, and that triggers this pathological case.

With that theory I could certainly try pacstrapping to a new zfs root, boot into that and try installing some boring base minimal base packages plus Steam like a brand new Arch user just to confirm whether or not the problem goes away in an environment without historical files laying around. I'll add this to the list.

@ipaqmaster
Copy link

[Findings for my case and TL;DR at bottom]

Testing a new rootfs

I created a new rootfs dataset with ZFS and bootstrapped packages to it with pacstrap, those packages included NetworkManager, lightdm, xfce, gnome, steam, nvidia-dkms, zfs-dkms and other userspace utilities as needed or desired. Set a password and booted into it, made myself a user, logged into steam and downloaded CS;GO.

Steam processed shaders first (!) and after 5 minutes of waiting for that, the game launched in this fresh and lightweight Archlinux installation immediately. Like under a second after the window appeared.

I must comment - Steam spent 3-5 minutes processing shaders before opening the game. This is probably the issue many are experiencing as my computer's Steam client hasn't been offering to pre-process shaders at all lately despite the option being enabled in my host's Steam Beta client.

This confirms that a brand new install with the latest drivers, kernel and packages have no problem opening running CS;GO. Which is what my real rootfs install is running too. Next I'll poke at my desktop's filesystems to see if I can magically cure this problem by deleting something, or otherwise.

Continued troubleshooting

Next up in this troubleshooting session I noticed CS;GO would launch faster on my PC after reaching the menu at least once despite this slow startup problem persisting whenever I go to play with my friends every evening or so.

Block level diffing to find a lead as quickly as possible

Rolling back my /data dataset to the previous day featured the 60s CS;GO startup delay again which gave me an interesting troubleshooting idea. I rolled it back again and took a zfs-snapshot for every 10 seconds that CS;GO was stalling to reach the main menu then diffed them. Comparing the zfs-diff's it turns out my CS;GO is building its own shadercache this entire time... and with only a single cpu thread that's where the startup delay is coming from.

[Click to reveal growing shadercache file between diffs while the game launches]
me@pc ~ $ ls -alh /data/.zfs/snapshot/*/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/* | sed 's/jared/me/g'
# <Game Launched>
-rw-r--r-- 1 me me 242K Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_0s/steam/steamapps/shadercache /730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me 3.1K Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_0s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me 6.0M Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_10s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me  14K Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_10s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me  12M Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_20s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me  23K Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_20s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me  17M Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_30s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me  34K Jul 27 11:45 /data/.zfs/snapshot/csgotesting3_game_loading_30s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me  25M Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_40s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me  75K Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_40s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me  32M Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_50s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me 103K Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_50s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me  39M Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_60s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me 151K Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_60s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me  48M Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_70s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me 194K Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_70s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

-rw-r--r-- 1 me me  52M Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_80s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me 229K Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_loading_80s/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc
# <Game reached menu>
-rw-r--r-- 1 me me  52M Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_done/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.bin
-rw-r--r-- 1 me me 260K Jul 27 11:46 /data/.zfs/snapshot/csgotesting3_game_done/steam/steamapps/shadercache/730/nvidiav1/GLCache/96c16aaad04bf94d0fca459bd20dd5b6/587d66573b417fc8/steamapp_shader_cache0.toc

Once the game is able to reach the main menu those files merge becoming steamapp_merged_shader_cache.bin and steamapp_merged_shader_cache.toc in that same subdirectory.

This unusually long startup time issue can be reproduced by dropping all shadercaching efforts for appid 730 (CSGO) with # rm -rfv /data/steam/steamapps/shadercache/730/nvidiav1/GLCache and opening the game again. This delete will also delete historical efforts.

In my case, Steam hasn't been processesing shaders for CS;GO all month and I imagine that's the root cause of this problem. To reproduce the issue feel free to click 'skip' on Steam's shadercache generation to truly reproduce the issue (if yours still works).

The game's black screen delay will be a variable time based on a computer's max single core boost clock speed assuming no other load I suppose. You can watch -d -n1 ls -lahR /data/steam/steamapps/shadercache/730/nvidiav1/GLCache as the game hangs before the load-screen to see csgo's on-the-fly and incomplete cache build up.

Why isn't my Steam offering to process the vulkan shaders before starting the game?

The new rootfs installation test processed them and after that 5 minute processing wait; the game opened up immediately (presumably as a result). My installation doesn't seem to offer this when I launch CS;GO and I remember how badly fossilize_replay would crunch the entire cpu socket with its multithreaded shader-caching when it came out. Today I haven't noticed it because it isn't running...

To try and fix this I went via the top left Steam menu otions into Steam > Settings > Downloads and unchecked and rechecked Enable Shader Pre-caching (4217 MB pre-cached) and launched CS;GO. This successfully caused steam to spend 5 minutes building a full and complete shadercache for CS;GO on my 3900x cpu.

Peeking inside steam/steamapps/shadercache/730/nvidiav1/GLCache/ you can see a the many threaded steamapp_shader_cache bin/toc file pairs growing file pair being processed for each host thread, putting it all together once it's finished. The resulting steamapp_merged_shader_cache.bin generated by fossilize_replay was is 1.1GB (!) instead of csgo_linux64's single-threaded 52MB one it creates every time I go to open the game at night.

With the above paragraph the game launched in about 6 seconds for me. Still not quite as snappy as that fresh install rootfs was able to pull off but still, this fixed the problem for me.

This ginormous file size makes me wonder if a lot of my stuttering this year has come from this exact same problem. I deleted CS;GO's GLCache again and opened it, waiting 60 seconds and ran map de_dust2. The 52MB shadercache grew a few bytes as I ran around for a moment.

I have a gut feeling I've just accidentally discovered the source of my stutters when peaking enemies in MM during the months this bug resurfaces for me every so often (Months/Years in-between) while thinking it couldn't possibly be shader related given the vulkan shader processing steam is supposed to be doing...

I deleted the CS;GO GLCache directory again but Steam did not offer to regenerate it with fossilize_replay when I launched CS;GO again, causing the 60s black-screen launch delay.

Next I tried exiting Steam and deleting the appid's entire cache path with: #rm -rfv /data/steam/steamapps/shadercache/730/ and opening Steam again then launching the game... Steam still isn't offering to regenerate the shader cache.

Finally I tried deleting the homedir cache with #rm -rfv ~/.cache/nvidia/GLCache/ and that didn't trigger the rebuild either.

GLCache and its UUID subdir system?

All those GLCache subdirectories seem to be hypenless uuid's and don't seem to tie to anything on the system. I assume they're randomly generated and Steam is starting the game without checking if it needs to generate a new shadercache .bin for CSGO before each run.

This is probably where it's up to Valve to permanently fix. Given my csgo appid has a few uuids in its GLCache shadercache directory all dated different months I suspect the UUID is rolling over every so often and Steam doesn't check if it needs to generate a new shadercache.bin for CS;GO.

The UUID may be influenced by new package versions, steam versions, driver versions, randomly or otherwise - causing CS;GO to look in a new/empty nvidiav1/GLCache uuid subdirectory, find nothing and generate its own incomplete one every time I go to play it this month leading to that 60s start delay plus stutters when I peak into an enemy and something loads in (followed by the .bin growing...)

This theory tracks the real issue here: Steam not offering to build a shadercache as-needed nor on-demand when I deleted the CS;GO's shadercahce directory.


The problem is reproducible if you delete appid 730's shadercache directory. The real issue is that my Steam is not checking if it needs to build a shadercache with the Processing Vulkan shaders (xx%) window so if you do get that popup, skip it to verify the issue or leave it to temporarily solve the issue for yourself until the next GLCache UUID shift.

Steam for one reason or another is not rebuilding the cache when there is none leaving it up to the game, slowly, at startup. The game's self-generated shader-cache is only a 52MB.bin compared to Steam's 1.1GB.bin and is probably where my stutters came from around the same time the game started taking a long time to open.

I'm glad to have a lead on the cause of this at least in my case. The game is generating a new 52MB shadercache for itself because Steam isn't generating the full one for the game. every evening I open it to play with friends. This file is significantly smaller than the 1GB shadercache Steam should be generating (And with multiple threads). So I expect this same issue is also the cause of the stuttering I've experienced lately right as this slow launch problem popped up.

Findings and Summary

In my case Steam isn't generating the complete shadercache for CS;GO and the game is launching, seeing no shaders and generating its own incomplete shadercache file which is the reason the game takes 60 seconds for my PC to open and pins a cpu core to 100% for that duration. I suspect given the nature shaders, this is also why my initial peak's and fights with an enemy on a map causes the game to microstutter/pause briefly while it handles more shaders.

TL;DR & Potential workarounds / What worked for me

  1. Be wary of shadercache stutters if you're affected by this slow menu bug. The shadercache it generates is only ~50MB rather than the 1GB shadercache Steam is supposed to be generating for it.

  2. Delete steam/steamapps/shadercache/730/nvidiav1/GLCache/ then open Steam. Top left of the client go to Steam > Settings > Downloads and uncheck/recheck Enable Shader Pre-caching then launch the game. It will re-download the work it needs to complete (~700MB for CS;GO) and when you launch the game it should start generating them. My 3900x took 5 minutes to generate a complete 1.1GB shadercache bin then CS;GO launched in about 6 seconds.

  3. I wonder if dxvk2.0 async can help the game access its main menu while it bakes instead of exclusively waiting for baking to finish? (See: Upgrading Dxvk-Native manually to 2.0 Question #3123)

@ipaqmaster
Copy link

Its been a few days now and CS;GO/Steam have been doing well with a consistent 6-10 second launch time after a few additional seconds of Steam doing vulkan shader preparation against the 1GB worth it already prepared. The game consistently opens in ~6-10 seconds when the game is launched from my steam library and as an added bonus, the game doesn't stutter at all anymore given the 1GB shader cache Steam generates vs the 50MB one the game usually does on its own for 60 seconds every launch.

Something that's probably noteworth is that I deleted my steam-made csgo.desktop shortcut just in case it were causing Steam to skip its multi-threaded vulkan shader generation solution. I've been launching the game directly from the Steam library, though I don't explicitly recall shaders being generated by Steam when launched this way in the past. TBD.


Overall, dropping my Steam's 4GB of Steam's shadercaching efforts by going to Steam > Settings > Downloads and unchecking/rechecking Enable Shader Pre-caching and also removing CS;GO's caches by running rm -rfv /data/steam/steamapps/shadercache/730 before launching CS;GO that one time has made Steam prepare 1GB of vulkan shaders and then consistently prepare them for a few seconds before every launch. In short, I have more or less resolved the problem in my case, though I'm curious why the new rootfs was starting the game in <1s but my PC still has a 6s delay. (Still a large improvement compared to 1 minute per launch...)

Again though, I also no longer using the steam-generated csgo.desktop shortcut to open the game - It is theoretically possible that the Steam Browser Protocol that steam game shortcuts invoke with could've been causing the any% Steam multithread shader skip as well. I haven't tested for that case so it has to be kept in mind until eliminated.

If anyone feels like trying the above shader-dropping trickery this please let me know if it fixes the problem for you. Even if transiently. Further testing/evidence could provide a huge bump for Valve officially solving why Steam silently skips shader generation before the game launches.

@ipaqmaster
Copy link

ipaqmaster commented Aug 2, 2023

Unfortunately -vulkan still stutters during gameplay and started building its own steamapp_shader_cache0.bin implying this discussion will not solve #2901 nor help with #3172 where -vulkan solves the crashing problem (but stutters... not a good tradeoff...)

At least not yet.

@orithecapper
Copy link

-vulkan
seems to be better for me :(

@ipaqmaster
Copy link

ipaqmaster commented Aug 16, 2023

Its been a while since my last comment but since the above actions in my larger comment the game has been consistently launching in ~6 seconds. Some nights I catch steam preparing with all 24 of my cpu threads.

I don't know why Steam stopped preparing shaders before gameplay a few times this decade but that whole reset shader-cache download procedure did the trick. At least until the bug happens again.

It should've clicked for me earlier but is still just a guess - csgo_linux64 was probably synchronously generating the shaders it needed to render everything involved for the main menu - causing the pause. Avoided by letting Steam generate a full 1.1GB shadercache file (Plus any in-game stuttering).

I wonder if something trivial like temporarily running out of disk space causes Steam to stop generating them right before game launch. Will check that later in case its relevant.

Unfortunately I still can't use -vulkan which gives unplayable gameplay stutters. Somehow. I'll have to try the dxvk2.0 async launch parameter some time soon to test whether it solves this problem and also -vulkan's stutter problem on my hardware.


E: It's 1w6d since this comment and as I opened CS;GO tonight; Steam spent about 4 minutes making new shaders for the game. Then it sat on 100% for 30 seconds while it merged them. The game took over a minute to launch.

I ran rm -rfv /data/steam/steamapps/shadercache/730/nvidiav1/GLCache before pkill steam and relaunching didn't trigger a rebuild. Game took over a minute again.

I then went to Steam > Settings > Downloads again to uncheck/recheck Enable Shader Pre-caching (4236 MB pre-cached) and waited for Steam to download the ones for CS;GO again. Once those were done I launched the game and Steam made new shaders. But this time, it took another minute but then subsequent launches were in 5 seconds. I watched the files under steamapps/shadercache/730 recursively and saw Steam merge them after the game exited.

Not sure why this is still an ongoing problem and I'm disappointed this happened again. But the workaround of regenerating seems to be consistent.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests