Daniel Lohmann wrote:

Results for User Mode Process LYX-QT4.EXE (PID = 3344)

    User Time                   = 15.07% of the Elapsed Time
    Kernel Time                 = 11.18% of the Elapsed Time

                                  Total      Avg. Rate
    Page Faults          ,         5692,         95/sec.

This looks highly suspicious and could be the reason why the csrss.exe program is taking all the cpu.

I don't think so. Compared to Linux, Windows trims the working sets of processes quite aggressively, which can result in a high number of page faults. However, the freed ages are not actually removed from RAM, but moved into the system cache and restored from there in case of a page fault. Hence, a high number of page faults does not automatically imply performance problems.

Moreover, this data is from the Lyx process and not from CSRSS where, AFAIR, the CPU clocks are actually eaten. The only thing I can see is that the process spends most of its time in the QtGui4 module, which in turn might well lead to a high number of interactions with CSRSS.

Could you provide the results for the CSRSS.EXE process as well?

See below but I don't see much of a difference. I've passed the "-j" option to let it find the .pdb but it can't seem to find the debug symbols apparently...


As a wild guess I would assume a problem with some QT constructs interacting badly with Win32 User/GDI. I have this slight feeling I had seen similar problems with other QT applications on Windows, but I am not really sure.

I would be nice if you could find out.



Daniel

Thanks for the help,
Abdel.


D:\program\KrView\Kernrates>Kernrate_i386_XP.exe -w 10 -s 30 -p 416 -pd 2064 -j "D:\devel\lyx\t
runk\development\cmake\bin\debug"

===> Found process: csrss.exe, Pid: 416


===> Found process: lyx-qt4.exe, Pid: 2064


PID = 2064: Source=, Time,
Tried Using Kernrate Default Rate of 25000 events/hit, Actual Rate= 19531 events/hit

PID = 416: Source=, Time,
Tried Using Kernrate Default Rate of 25000 events/hit, Actual Rate= 19531 events/hit
 /==============================\
<         KERNRATE LOG           >
 \==============================/
Date: 2006/10/18   Time: 11:55:12
Machine Name: YNS-ML
Number of Processors: 1
PROCESSOR_ARCHITECTURE: x86
PROCESSOR_LEVEL: 15
PROCESSOR_REVISION: 0204
Physical Memory: 1024 MB
Pagefile Total: 2462 MB
Virtual Total: 2047 MB
PageFile1: \??\D:\pagefile.sys, 1536MB
OS Version: 5.1 Build 2600 Service-Pack: 2.0
WinDir: C:\WINDOWS

Kernrate User-Specified Command Line:
Kernrate_i386_XP.exe -w 10 -s 30 -p 416 -pd 2064 -j D:\devel\lyx\trunk\development\cmake\bin\de
bug


Waiting for 10 seconds before starting to collect profile data
Starting to collect profile data

Will collect profile data for 30 seconds
===> Finished Collecting Data, Starting to Process Results

------------Overall Summary:--------------

P0 K 0:00:16.663 (55.5%) U 0:00:13.339 (44.5%) I 0:00:00.000 ( 0.0%) DPC 0:00:00.020 ( 0
.1%)  Interrupt 0:00:00.270 ( 0.9%)
       Interrupts= 19145, Interrupt Rate= 638/sec.


Total Profile Time = 30003 msec

BytesStart BytesStop BytesDiff. Available Physical Memory , 298483712, 296308736, -2174976 Available Pagefile(s) , 1751339008, 1751523328, 184320 Available Virtual , 2131570688, 2131570688, 0 Available Extended Virtual , 0, 0, 0

                                  Total      Avg. Rate
    Context Switches     ,      1868893,         62290/sec.
    System Calls         ,      2477539,         82576/sec.
    Page Faults          ,         2415,         80/sec.
    I/O Read Operations  ,          361,         12/sec.
    I/O Write Operations ,          116,         4/sec.
    I/O Other Operations ,         2811,         94/sec.
    I/O Read Bytes       ,         8950,         25/ I/O
    I/O Write Bytes      ,        41894,         361/ I/O
    I/O Other Bytes      ,       397231,         141/ I/O

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

Results for User Mode Process LYX-QT4.EXE (PID = 2064)

    User Time                   = 42.69% of the Elapsed Time
    Kernel Time                 = 20.09% of the Elapsed Time

                                  Total      Avg. Rate
    Page Faults          ,         1962,         65/sec.
    I/O Read Operations  ,            0,         0/sec.
    I/O Write Operations ,            0,         0/sec.
    I/O Other Operations ,            0,         0/sec.
    I/O Read Bytes       ,            0,         0/ I/O
    I/O Write Bytes      ,            0,         0/ I/O
    I/O Other Bytes      ,            0,         0/ I/O

                               Start-Count       Stop-Count         Diff.
Threads , 2, 2, 0 Handles , 103, 103, 0 Working Set Bytes , 8929280, 11812864, 2883584 Virtual Size Bytes , 88453120, 88453120, 0 Paged Pool Bytes , 60056, 60056, 0 Non Paged Pool Bytes , 3720, 3720, 0 Pagefile Bytes , 8540160, 8540160, 0 Private Pages Bytes , 8540160, 8540160, 0
------------------------------------------------------------------

OutputResults: ProcessModuleCount (Including Managed-Code JITs) = 39
Percentage in the following table is based on the Total Hits for this Process

Time   5239 hits, 19531 events per hit --------
 Module                                Hits   msec  %Total  Events/Sec
ntdll                                  1374      30003    26 %      894430
lyx-qt4                                1316      30003    25 %      856674
MSVCR80D                                757      30003    14 %      492782
QtGuid4                                 709      30003    13 %      461536
QtCored4                                386      30003     7 %      251273
MSVCP80D                                328      30003     6 %      213517
kernel32                                269      30003     5 %      175110
GDI32                                    68      30003     1 %       44265
libiconv2                                17      30003     0 %       11066
msvcrt                                   11      30003     0 %        7160
usp10                                     4      30003     0 %        2603


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

Results for User Mode Process CSRSS.EXE (PID = 416)

    User Time                   = 8.85% of the Elapsed Time
    Kernel Time                 = 46.66% of the Elapsed Time

                                  Total      Avg. Rate
    Page Faults          ,          170,         6/sec.
    I/O Read Operations  ,          400,         13/sec.
    I/O Write Operations ,            0,         0/sec.
    I/O Other Operations ,            0,         0/sec.
    I/O Read Bytes       ,         6204,         16/ I/O
    I/O Write Bytes      ,            0,         0/ I/O
    I/O Other Bytes      ,            0,         0/ I/O

                               Start-Count       Stop-Count         Diff.
Threads , 13, 13, 0 Handles , 696, 694, -2 Working Set Bytes , 1589248, 2285568, 696320 Virtual Size Bytes , 36139008, 36139008, 0 Paged Pool Bytes , 66236, 66236, 0 Non Paged Pool Bytes , 7648, 7648, 0 Pagefile Bytes , 3051520, 3051520, 0 Private Pages Bytes , 3051520, 3051520, 0
------------------------------------------------------------------

OutputResults: ProcessModuleCount (Including Managed-Code JITs) = 13
Percentage in the following table is based on the Total Hits for this Process

Time   1254 hits, 19531 events per hit --------
 Module                                Hits   msec  %Total  Events/Sec
ntdll                                   630      30003    50 %      410109
winsrv                                  284      30003    22 %      184874
CSRSRV                                  219      30003    17 %      142562
KERNEL32                                100      30003     7 %       65096
USER32                                   21      30003     1 %       13670

================================= END OF RUN ================================== ============================== NORMAL END OF RUN ==============================

Reply via email to