swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Multithreading question


From: Christopher Mackie
Subject: RE: Multithreading question
Date: Wed, 29 Jan 2003 18:37:25 -0500

I want to support, as loudly as I can, Glen's crucial piece of advice: it's all 
about what *your* code is doing.  We've all found reliable tricks and tactics 
to tweak a few extra cycles out of our sims.  They're useful to share, and they 
often help other people, since many of us run into the same basic bottlenecks.  
But when it comes right down to it, all the really good performance advice you 
can find on this list--including the createActionForEach tip--is the result of 
someone, somewhere, sometime, profiling code.
 
If you need performance, you have to learn to profile code.  Before you spend 
$$$ on hardware, or hyperthreading libraries, or consultants, or whatever, the 
smartest investment you can make, with the biggest potential return, is to find 
out what your code is actually doing, and where it's costing you.  Not only 
will those insights often solve your problem for you, but even if the problem 
still stumps you, the pinpoint knowledge you gain about the nature of the 
problem enables the people on this list to help you much more effectively.  
Best case, you identify an opportunity that leads to an improvement in the 
Swarm source for everyone.
 
We're a bit unusual among comp support lists, in not "encouraging" people to 
post compilable code illustrating any problem on which they want advice or 
help.  I'm not suggesting we implement that policy, but I *am* suggesting that 
anyone who has a problem should do it anyway--not because we insist, but 
because it's the most productive use of your time and everyone else's.  And if 
you have a performance problem, the only absolutely reliable way to know what 
piece of compilable code to post is to profile your code.
 
Don't take this as a complaint about the current thread: I'm as interested in 
the topic and the suggestions people are making as anyone could be.  I just 
want to chime in to urge that Glen's excellent foundational advice not be 
overlooked in the flurry of other excellent, ad hoc advice.
 
Profiling isn't hard to learn, conceptually or technically, but nothing's truly 
easy when you start entirely from scratch.  Maybe a tutorial session on 
profiling Swarm code could be a useful idea for SwarmFest...?
 
--Chris

                  ==================================
   Swarm-Support is for discussion of the technical details of the day
   to day usage of Swarm.  For list administration needs (esp.
   [un]subscribing), please send a message to <address@hidden>
   with "help" in the body of the message.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]