[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.
- RE: Multithreading question, (continued)
Re: Multithreading question, Marcus G. Daniels, 2003/01/29
- Ok, what about benchmarks, Darold Higa, 2003/01/29
- Re: Ok, what about benchmarks, Marcus G. Daniels, 2003/01/29
- RE: Ok, what about benchmarks, Darold Higa, 2003/01/29
- RE: Ok, what about benchmarks, gepr, 2003/01/29
- Re: Ok, what about benchmarks, Marcus G. Daniels, 2003/01/29
Optimization Ideas I collected: [Re: Ok, what about benchmarks, Paul E Johnson, 2003/01/29
RE: Multithreading question,
Christopher Mackie <=