![]() ![]() If extracting every bit of processing power/speed out of your cores is top priority then you'll have much better luck just writing your program to be run in parallel with itself. Sure it goes much faster if all you are doing is huge matrix multiplications, but most commands can't be multi-threaded by atlas. This Atlas software uses a lot of overhead to split your octave program into multiple threads. It is not easy and takes some programming skill to get octave to compile from source with ATLAS. If octave can use these instead of the default blas, and lapack libraries, then it will utilize multi core. The three libraries I am using which speed things up are With Atlas: Elapsed time is 0.529 seconds. The matrix multiplication goes much faster using multiple processors, which was 3 times faster than before with single core: Without Atlas: Elapsed time is 3.22819 seconds. I ran the following octave core before and after ATLAS install: tic I was unable to get this to work for Fedora, but on Gentoo I could get it to work. When you install octave from source and specify ATLAS, it uses it, so when octave does a heavy operation like a huge matrix multiplication, ATLAS decides how many cpu's to use. ATLAS tunes itself to your system and number of cores. First compile 'ATLAS' from source code and make it available to your system so that octave can find it and use those library functions. So while Octave only uses one core, when you encounter a heavy operation, octave calls functions in ATLAS that utilize many CPU's. You can get octave to use some libraries like ATLAS which utilize multiple cores. ![]() Octave itself is a single-thread application that runs on one core.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |