03.12.2012 Views

C++ for Scientists - Technische Universität Dresden

C++ for Scientists - Technische Universität Dresden

C++ for Scientists - Technische Universität Dresden

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

202 CHAPTER 7. EFFECTIVE PROGRAMMING: THE POLYMORPHIC WAY<br />

of scarce computing resources and a lack of mature and powerful tools. Under these circumstances<br />

the overall per<strong>for</strong>mance, in terms of execution speed or memory consumption is solely<br />

dependent on the skill and ingenuity of the programmer and has resulted in the almost mythical<br />

”hand optimized” code. However, to achive the desired specifications in such a fashion the<br />

clarity and readability, and therby the maintainability of the code were sacrificed. Furthermore,<br />

the low level of abstraction also hinders portability, as different architectures favour different<br />

assumptions to produce efficient execution. To address this effect, implementations were duplicated<br />

in order to optimize <strong>for</strong> different architectures and plat<strong>for</strong>ms, which of course makes a<br />

mockery of goals such as code reusability or even extensiblity.<br />

This paradigm and the derived techniques are then used differently in Section 2.11, where<br />

generic programming is used to offer an efficient approach <strong>for</strong> matrix operations.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!