- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi again there,
I have a big project that uses IMSL. After the last update to Intel(R) Visual Fortran Composer XE 2013 SP1 Update 3 and also updated to IMSL 7 I see a strange effect with my exe: First the size rised from 2,8 MB to 3,5 MB and also performance dropped down (a stress-test that runs normally around 145 sec. now needs around 178 seconds).
Can this be?
Greetings from Germany
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The size increase may be due to the new IMSL library - are you linking statically? I am not aware of a general performance drop, but we didn't test IMSL for performance. You can try linking to IMSL 6 and see what changes. (I suggest uninstalling IMSL 7 and reinstalling IMSL 6 from the earlier download - it should work ok.)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Greetings Steve,
yes, I link statically.
Also I tested now IMLS 6 (First I had probs, but tried to use the wrong IMSL-Version, was not for the SP1).
The size of my exe is again like it was (nearly). So this is the reason.
I think there is no way to shrink the size of the exe with using static linking.
Funny is, that the performance is now again different: around 165 seconds.
Well ,so there are 3 values for performance: Composer SP1 update 2 with imsl 6: 145 sec, Composer SP1 update 3 with IMSL 6: 165 sec and Composer SP1 update 3 with imsl 7 178 sec....
Well, anyway the performance is not too bad, just of course its a little sad that it falled. As I shifted from compaq to intel performance rised a lot (under compaq the same file needed around 230 sec.)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I wonder how reproducible your timings are.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Steve,
well, I have my program now for years in care. While calculating it spits out the time it needed. I built a very large test-file, that I use now for long to check the performance (cause this is needed) You can believe me, that -of course on the same machine with starting the same file on the local hardrive- I have just time-tolerances from maximal 2% with this file (and then the CPU must be really busy).
I am just thinking now, if I use IMSL 6 again, so size does not change. I allready read your article "IMSL 7.0.1 for Intel Visual Fortran available bundled or as add-on", so there is just talked that the IMSL 701 is not tested with older verisons of Intel Composer, so the new Intel composer is also tested with IMSL 6? And how is about support if I go on using IMSL 6?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We'll continue to support use of the 14.0 compiler with IMSL 6. After that, we won't be testing newer compilers with IMSL 6. I don't know of a reason it would stop working, though.
I am sure that Rogue Wave would be interested in seeing a test case that demonstrates a slowdown. Can you isolate the IMSL routine responsible?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Steve,
I think this gets complicted. The prog calculates distances to different geometric objects with solving non-linear equations. There are also different conditions, so there are several routines from IMSL in use. First I must check out which one is responsible and then even I have to give you an input file with calculation data. Maybe if I find time I can try to take a closer look, but this gets difficult. My test is just like a "monster-input" with many examples of all possible calculations, in detail I can hardly say where is the slowdown now. My first estimation would be the routine "NNLPG" cause this solves the most complex cases (and also this was replaced from switching from using Compaq-compiler with IMSL 5 and there routine DNCONG, that is not any more in IMSL and with this changing it was first a big rising of performance). Anyway it seems also the new Compiler makes an influence, so seems also its a "summarition". Anyway performance is still very good (its the reason, why this old prog still survives, cause its fast). So maybe I can gibe you more infos, but example data and an isolated case I think I will not be able to deliver.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
DNCONG and NNLPG are sufficiently different as to algorithm and implementation that their performance may be expected to be different, and separately from any performance changes related to compiler optimizations and target instruction sets.
Secondly, if there are any errors in your calculation of the gradients, that fact will definitely slow down the final stages of convergence to the solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi mecej4,
sure DNCONG and NNLPG are complete different functions. I needed to change from DNCONG to NNLPG as I switched to Intel Fortran compiler, cause in IMSL 6 DNCONG is not longer included. Also it was needed to make many code-changes, was not that easy to change (the functions to minimize and the gradients that are parameters to DNCONG / NNLPG needed to be changed massivly and other stuff also).
After this changing and using Intel-compiler performance was much faster than with compaq and IMSL 5.
My changing in performance happened now with switching from IMSL 6 to IMSL 7, both using NNLPG with identical code.
But anyway its not that significant loss, just I mentioned it as I tested performance cause I saw the exe grew also (my first thinking was, that with the new compiler maybe the speed-optimization was improved and this was the reason of bigger exe, so I wanted to see if speed rised).
Steve allready helped me with the effect of the rising exe, its just because the static libs of IMSL 7 are bigger.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page