Bottlenecks in information processing

February 3, 2004, 12:00 AM —  ITworld — 

I have recently finished reading an interesting novel. It is a thriller
based around the concepts of cost accounting. No, I am not joking. It
really is a thriller - a novel - and the main topic really is cost
accounting.

The book I'm referring to is called The Goal[1] by Eliyahu M. Goldratt.
It uses a passable, attention holding domestic story line as a hook on
which to hang a very interesting exploration of manufacturing processes
and how best to manage them for financial gain.

As a software engineer, I found the book fascinating from two very
different angles. First, it is interesting to think how information
technology can best support the process of physical goods manufacturing
through areas such as robotic automation and telemetry for decision
support. Secondly, it is interesting to think of software systems as
examples of manufacturing systems in which the raw material is data and
the "product" is information.

Goldratt's book brilliantly illustrates how the behavior of bottlenecks
in a manufacturing process impact every other part of the process in a
fundamental way. You need to be intimately aware of all aspects of your
bottlenecks as the health of your entire operation depends on them.

Reading about manufacturing bottlenecks in the book, caused my mind to
wander to the software-system-as-manufacturing-process analogy and to
ask "what are the bottlenecks in software applications?"

In any software system with a lot of data to process, the obvious target
for attention as a possible bottleneck is CPU/RAM. After all, this is
the part of the assembly line through which all data must pass at some
stage. From that conclusion, it is a short step to the follow-on
conclusion that speed of CPU/RAM and by extension efficiency of
processing algorithms executed on that CPU/RAM combination make up the
core of the bottleneck.

Before we pat ourselves on the back and declare the bottleneck found,
let us switch back to physical manufacturing for a quick reality check.
We have machines - computers - that are pretty cheap in comparison to
the cost of most manufacturing equipment. We have lots and lots of data
to process with these computers. Typically many orders of magnitude more
than one machine can process at any one time.

We could either optimize every last scintilla of performance out of one
of those machines or we could get lots of them working on the data in
parallel. The former route costs us lots of time and money in terms of
labor costs (developers) and capital costs for a small number of
top-of-the-range computers. Also, the outcome of the investment in
terms of improved throughput is uncertain.

Sign up for ITworld's Daily newsletter
Follow ITworld on Twitter @IT_world

I like it!
Post a comment
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.
peer-to-peer

Brian Proffitt
Microsoft/Novell: Breaking Down the Coupon Numbers

Esther Schindler
Drupal's Dries Buytaert on Building the Next Drupal

Tom Henderson
Top Ten General Operating Systems Rants

pasmith
PS3 motion controller delayed; goes up against Project Natal

sjvn
Neolithic Windows security hole alive and well in Windows 7

claird
Perl source code comparison makes for good reading

James Gaskin
Learn How To Print Pages In Order with Ink Jet Printers

mikelgan
Cell phones don't create stress or interrupt much

Sandra Henry-Stocker
How to: The Unix Interview

 

Where Google Chrome security fails: the password
I heard mention that the Chrome OS will have some sort of encryption available a la bitlocker. If it's possible to encrypt personal data using another password or key, then it may have potential for very secure data.... And Ubuntu has an 'encrypt home directory' option, perhaps google should follow suit.
- Dann

Join the conversation here

The Daily Tip

The Daily TipQuick, practical advice for IT pros. Made fresh daily.

Hot tips:

Want to cash in on your IT savvy? Send your tip to tips@itworld.com. If we post it, we'll send you a $25 Amazon e-gift card.

Newsletters

Subscribe to ITWORLD TODAY and receive the latest IT news and analysis.

I would like to receive offers via email from ITworld partners.
By clicking submit you agree to the terms and conditions outlined in ITworld's privacy policy.
Marketplace