Re: ObjC in time-critical parts of the code
Re: ObjC in time-critical parts of the code
- Subject: Re: ObjC in time-critical parts of the code
- From: Jean-Daniel Dupas <email@hidden>
- Date: Fri, 16 Jan 2009 09:32:31 +0100
Le 16 janv. 09 à 09:03, Jens Bauer a écrit :
Hi Jeremy,
On Jan 16, 2009, at 04:52, Jeremy Pereira wrote:
On 15 Jan 2009, at 22:16, Jens Bauer wrote:
..often used around 3ms for the empty method "-renderObject".
It gave me the terrible result of up to 21ms spent in the empty
method!
-So I'd like to let you know that it's sometimes good to think "do
I really need this method?"
I will be rewriting around 8 of my large files for doing some
rendering, so they will be using C-routines instead of ObjC
methods, since I'm using them in a real-time environment.
My guess is that the message dispatcher probably needs to do
something else than servicing *my* application, so I believe it's
the nature of the environment, not a bug
I compiled your program into an Xcode project. I got an answer of
0.021ms.
I modified the project to call renderObject 1,000 times and I got
the answer 0.028ms.
The only thing I can think of is that you have confused
milliseconds and microseconds.
I believe that it depends on if the application is doing something
else, rather than just an empty loop.
In my case, I have at least one extra thread running, sometimes more
threads.
The project is running on a G5 DP/2.0GHz, and will not be used on
intel machines, so many of you might get faster execution times than
me.
-But the 'warning' isn't about the average value, it's about the
peak value, which sometimes takes ages, and when doing a real-time
app, it might be important to avoid such peak values.
You don't want to understand.
You CANNOT mesure elapsed time for ONE call. You have to bench
thousand of call in one loop and take an average time.
You first conclusion IS WRONG and it does not depend if you have 20
threads or only one. Your PEAK VALUE is WRONG too. It's not possible
to mesure a peak value, especially in a preemptive environment.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden