[Beowulf] A start in Parallel Programming?
Many of your questions may have already been answered in earlier discussions or in the FAQ. The search results page will indicate current discussions as well as past list serves, articles, and papers.
Joe Landman landman at scalableinformatics.comMon Mar 19 11:05:25 PDT 2007
- Previous message: [Beowulf] A start in Parallel Programming?
- Next message: [Beowulf] A start in Parallel Programming?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Mitchell Wisidagamage wrote: > >> C for damn sure isn't "safe". Neither is assembler. Very few compilers >> could be called safe in the sense that it is impossible to write buggy >> code that is vulnerable to various exploits or at risk of crashing an >> application, but C is arguably more dangerous than most because with >> pointers and inlined assembler you can do "anything". The way I have heard/regurgitated it for people has been: Assembler gives you enough rope to blow your own toes off with. This mixes two metaphors: 1) enough rope to hang yourself, and 2) enough firepower to blow your own toes off. While Assembler gives you the power to do this, C makes it easy. With great power comes great responsibility (to use it wisely, and keep all of ones toes intact). Also opens up the possibility of massive abuse. That said, some careful programming in C can give you excellent performance. You can write very close to the metal ... er ... silicon. This allows you to micro-optimize for the platform (and hyper-specialize to it). I would prefer if compilers would do this for us, and have been assured that it is a SMOP and a matter of time.... ( :^ ) The higher levels you work at in abstraction, generally the slower the performance of the code. But then the higher levels of abstraction generally map better into our own thought processes. Here is a great way to do LU decomposition of a matrix in Octave/Matlab: [l , u , p ] = lu ( a ); This takes matrix a and represents it as a lower triangular, an upper triangular, and a permutation matrix. C.f. http://www.delorie.com/gnu/docs/octave/octave_145.html . While using this is a great way to write out what you want to do at a higher (more abstract) level, writing out an LU solver in C (a good one that performs well) is quite a bit harder. And more prone to error than using the above. You make your choices, and you pay the cost of the choices. Joe -- Joseph Landman, Ph.D Founder and CEO Scalable Informatics LLC, email: landman at scalableinformatics.com web : http://www.scalableinformatics.com phone: +1 734 786 8423 fax : +1 734 786 8452 or +1 866 888 3112 cell : +1 734 612 4615
- Previous message: [Beowulf] A start in Parallel Programming?
- Next message: [Beowulf] A start in Parallel Programming?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Beowulf mailing list
