The Problems, Perils, Pitfalls, and Potential of Parallel Processing

Copyright N_gine LLC 2007

 

The Announcement

During Q1-2005, Intel, IBM, and AMD announced future advances in computing speeds would result not from one faster processor per chip but rather two or more slower processors per chip.   The “small” print in the announcements suggested that there may be significant implications for software, when in fact the very idea of using two or more processors immediately rendered most application software in general and financial transaction processing software in specific immediately obsolete.  Today, dual and quad-processor chips are being delivered en masse.

 

The Problem

Two or more processors means present-day legacy software must be subdivided (or decomposed) into two more separate and independent subcomponents that may be spread across the two or more processors.  Hence, those persons with business process knowledge and decomposition skills become critical for future automation success.  Plus, simple mathematics can suggest the likelihood of success long before such a parallel processing project is launched.  Let’s look at the consequences of both “uneven” and “incomplete” decomposition.     

 

Uneven Decomposition

Let’s say that a 3.2 GHZ processor is to be replaced with a 2.4 GHZ processor.  Then, in theory, a computationally-intensive processing job taking 75 seconds on the 3.2 GHZ processor would suggest 100 seconds on one 2.4 GHZ processor.  And, a perfect decomposition of 50/50 would suggest a theoretical completion time of 50 seconds.  That is appealing, but what about the imperfect decompositions where the longest subcomponent dictates the benefit of the parallel processing.  That is,

 

            Serial Processing          Parallel Processing

            Processor 1                  Processor 1       Processor 2      

                100 sec                       100 sec              0 sec

                                                     90                    10

                                                     80                    20

                                                     70                    30

                                                     60                    40

                                                     50                    50   … optimal decomposition for 2 processors.

 

Thus, the decomposition of the two processors must be 75/25 to match the 75 seconds of the single processor.  Above 75/25, the proposition becomes increasingly unattractive and below 75/25 the proposition becomes increasing attractive.  The 50/50 decomposition is optimum, where the return on investment will be the greatest.

 

Incomplete Decomposition

Then, there is the problem of “incomplete” decomposition, where the Law of Diminishing Returns rears its ugly head.  Note what happens when the number of processors assigned to the same job is increased.

 

                                    Processor         Elapsed            Marginal

                                    Number            Time (secs)     Benefit (% diff)  

                                         1                   100                            0

                                         2                    50                             50

                                         3                    33                             17

                                         4                    25                              8       

                                         5                    20                              5

                                         6                    16                              4

                                         7                    14                              2

                                         8                    12.5                           1.5

 

Business analysts should then determine the incremental cost and incremental costs of each incremental processor before committing to equipment, personnel, space, power, etc.

 

The Solution

So, what to do?  Convert serial processing to parallel processing by parameterizing the processing logic from code to data.  Then, program the residual logic for allocation of separate and independent subcomponents (or algorithms) for allocation across any number of separate and independent processors.  Lastly, execute the algorithms in overlapping fashion under full audit control.  For management presentations, a slide might look like the following:

 

Parameterize scope of integrated operations,

Decompose to the lowest possible atomic level for achieving maximum benefits

of parallel processing (optimized load balancing),

Allocate to separate and independent processors, and

Execute in overlapping fashion under full audit control. 

 

Each step is complex, timely, and expensive.  Nonetheless, the benefits of converting from serial to parallel processing substantially exceed the costs of any software changes and data conversions.  The new parallel processing architecture is the direct opposite of legacy serial architecture, where the former has few large programs and the latter has many small programs.

           

Perils

The perils of parallel processing are loss of competitive advantage, operating efficiency, technical reputation, critical technicians, and investor confidence.  Namely,

 

            Loss of Competitive Advantage - meaning that the enterprise cannot react to problems

and respond to opportunities as quickly as competitors.

            Loss of Operating Efficiency – meaning that the enterprise cannot compete on a cost

basis.

            Loss of Technical Reputation – meaning that the enterprise is not an early adopter.

            Loss of Critical Technicians – meaning that the enterprise is not appealing as an

employer.

            Loss of Investor Confidence – meaning that the enterprise is not appealing as an

Investment, the risk is greater, and the cost of capital is more expensive.

 

Pitfalls

The pitfalls of parallel processing are technical, operational, and managerial.

 

            Technical    – meaning that the architecture is flawed.

            Operational – meaning that the operations are less than optimized.

            Managerial  – meaning that management is ineffective and stockholders will question.

 

            That is, somewhere or some how, management failed to

Recognize parallel processing potential.

                        Assign the transition to appropriate people.

                        Seek auditor’s advice before building prototype.

                        Build an appropriate prototype.

Reduce enterprise politics (the number one killer of parallel processing projects).

                        Define retraining for technicians, management, auditors, and ultimate consumers.

Act in front of competition - otherwise, domestic competition will smile,

and foreign competition will jump with joy.

                        Seek auditor’s advice before implementing the project.

                       

Don’t shoot the messenger! Parallel processing is here to stay.  The change will be profound, pervasive, permanent, and very profitable.  The only decision for management is to transition before its competition.  Global financial leadership may be at stake.

 

Management Needs

Remembering that only top management has the signing authority to commit to totally new back-office processing environments, management’s decision-making needs stand at the top of the list of compelling reasons to convert to parallel processing.  Management needs are:

 

            Customizable Superior Decision-making information

            Global Marketing Potential

            Operational Scalability

            Ease of Compliance

            Solution Longevity

            Attractive Returns on Investment

 

Therefore, all of these needs must be met in winning management support.

 

Parallel Processing Potential

The profit potential of parallel processing is extraordinary.  Reasonable targets are:

 

            50-90% less code,      meaning less source code and less maintenance costs,

            5-10x productivity,    meaning more productivity with fewer resources, and

            30% greater ROIs,     meaning kudos for technicians and managers alike.

 

Conclusions

Parameterization is not only the best hope but the only hope for maximizing competitive advantage via customized reporting, integration of two or more applications into one system, and enabling parallel processing.  Parallel processing is not only the best hope but the only hope for maximizing operating efficiency via less equipment, personnel, space, and electrical power.  Decomposition of processing functionality to the lowest possible atomic level is the not only the best hope but the only hope for achieving the maximum benefit of separate and independent parallel processors.  Parallel processing architecture renders legacy serial processing obsolete.  Patience and perseverance are vital for future success.  Billions of dollars have been spent in creating the parallel processing hardware.  Billions of dollars will now be spent in learning how to use this capability effectively.  Parameterizing integrated applications is not easy.  Parallel processing requires entirely new architecture.  Both are achievable.  ROIs are generous.