http://bugs.winehq.org/show_bug.cgi?id=26658
Christopher Cope inuyasha@usa.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |inuyasha@usa.com
--- Comment #9 from Christopher Cope inuyasha@usa.com 2013-06-21 17:24:19 CDT --- (In reply to comment #8)
Created attachment 43156 [details] Instrumentation for FILE_CreateFile
I've used the attached patch to instrument FILE_CreateFile. First, I see no calls with FILE_OPEN_BY_FILE_ID. Second, on my SSD drive the cumulative search time for Steam startup and shutdown adds up to less than a second, and the cumulative time in FILE_CreateFile is less than 1.5 seconds. Yet Steam takes 45 seconds to start (measured with a stop watch).
In any case, a quick grep/sort/uniq on the trace shows that on average Steam makes 3 identical calls to FILE_CreateFile (same handle/name/etc.), and visual inspection indicates that most of the calls are for the same files over and over. Caching might help HDD owners (it'd be nice if somebody ran my test though, because the file system cache should cover that), but it doesn't seem to be the worst contributor to the overall startup.
I'm curious, has anybody compared the start up time to native Linux Steam start up times? It seems a hassle to install it on Debian, so I haven't bothered.
To reproduce:
- patch in my change (diff against Wine 1.5.21).
- make LDFLAGS=-lrt
- env WINEDEBUG=+ntdll wine … &> /tmp/wine-ntdll.log
Search time: $ grep "search took" /tmp/wine-ntdll.log | awk 'BEGIN { total = 0; } { total += $5; } END { print total; } ' 909038970
NtCreateFile time: $ grep "createfile took" /tmp/wine-ntdll.log | awk 'BEGIN { total = 0; } { total += $5; } END { print total; } ' 1346543118
It isn't too difficult to get steam installed on other Linux distributions. Feel free to contact me if you need help. On a more relevant note, I tested the Linux vs Wine start up times. Linux: 15 seconds Wine: 52 seconds