Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: "Danijel Tkalcec [RTC]" <dtkalcec@xxxxxxxxxxx>
- Date: Tue, 29 Nov 2005 13:56:34 +0100
The problem with Sampling Profilers is that they don't give accurate
information, since they check the app periodicaly, if there are a number of
small routines executed sporadicaly, they will miss most of the hits, while
they concentrate on long-running routines. One other example is my AppServer
demo test, which I just run using 300 clients, processing 60.000 requests.
Here is the Info that came out for the Server ...
Modules (% global time)
---------------------------------------
85,19% ntdll.dll => called from
- 21,94% SyncObjs.TEvent.WaitFor
- 14,71% ComObj.Finalization
- 12,11% System.SysGetMem
- 11,51% ???
- 5,04% Controls.TWinControl.DefaultHandler
- 3,96% Forms.TApplication.ProcessMessages
- 3,78% Controls.TWinControl.PaintHandler
11,09% AppServer.exe => units
- 6,06% Classes (5,94% FreeDeviceContext)
- 2,16% System (0,60% TObject.Dispatch)
- 1,38% Controls
- 0,72% Graphics
- 0,42% Forms
- 0,18% memBinList
- 0,06% Windows
- 0,06% Types
- 0,06% rtcConn (rtc unit)
------------------------------------------------
Interesting thing about this information is that SyncObjs.TEvent.WaitFor
actually takes as good as no CPU time, while it is displayed here as one of
the worst time-consumers, Forms.TApplication.ProcessMessages is irrelevant
and there is practicaly no drawing done by the server (only a simple count
of open connections), but still Controls.TWinControl.PaintHandler takes
almost 4% of total time.
Well, if you ask me, this information is highly inaccurate and gives me
wrong data about possible bottlenecks in my application. One thing I know
for sure is that the biggest "bottleneck" is the automatic
compression/decompression, which reduces overall performance by more than
100% when turned on. Also, there's some "undefined ???" which took 11,51% of
total time spent in "ntdll.dll".
Bottom line is, I don't see any use for the Sampling Profiler. It is nice to
see how it can produce some results without making any modifications to my
app, but it doesn't give me any information I could use to improve my
applications performance.
--
Danijel Tkalcec
http://www.deltasoft.hr/rtc/author.htm
RealThinClient components
-------------------------------------------
* The Easiest way to build Internet-enabled applications
- Clients, Stand-alone Servers, ISAPI extensions -
> Write and Call Remote Functions
> Download and Upload Files
> Single- and Multi-Threaded mode
> Firewall friendly - all over HTTP
> Stress-tested for highest stability
http://www.realthinclient.com
or www.deltasoft.hr/rtc
.
- Follow-Ups:
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: Danijel Tkalcec [RTC]
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: Pete Fraser
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- References:
- [ANN]ProDelphi 18.3 released (runtime measurement)
- From: Helmuth J.H. Adolph
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: Danijel Tkalcec [RTC]
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: Danijel Tkalcec [RTC]
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: Jim McKay
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: JED
- Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- From: Nicholas Sherlock
- [ANN]ProDelphi 18.3 released (runtime measurement)
- Prev by Date: ANN: PG Lightning Admin version 1.2.3.945 Released
- Next by Date: Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- Previous by thread: Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- Next by thread: Re: [ANN]ProDelphi 18.3 released (runtime measurement)
- Index(es):
Relevant Pages
|