Software Engineering discussion

7 views
Beautiful Code > How Elegant Code Evolves with Hardware The Case of Gaussian Elimination

Comments Showing 1-2 of 2 (2 new)    post a comment »
dateDown arrow    newest »

message 1: by Brad (new)

Brad (bradrubin) | 264 comments Mod
I enjoyed seeing how the code for a key library has evolved over the decades in response to changes in processor architecture. I have seen the inner/outer loop swapping for matrix calculation optimization before, but many other considerations were new to me, especially the discussion of how SMP architectures differ from multi-core architectures with respect to algorithm design.

LINPACK is a key performance benchmark, so there is some extra motivation to invest in it. Although, this chapter did prompt me to think about all the unsung heros who keep libraries we take for granted running smoothly and optimally. I, for one, am glad that I don't have to code a floating point library these days!


message 2: by Erik (new)

Erik | 165 comments I really liked this chapter. I had alot of linear algebra in college, but never anything larger than a 4x4 matrix. We used matlab sometimes to find matrix inverses. I never got talented enough to consider myself actually programming with matlab. I don't think that I have ever had any real world need to use linear algebra in a non-trivial case.

The code in Example 14-6 [Factorization for multithreaded execution (C code):] is amazing. I'm sure I would have quit long before getting anywhere near that solution.


back to top