I have this problem, hope that you can help me out:
There is a subroutine in Fortran code that has been given to me. This Fortran code is acually a simulation model of a physical process, so there is a criteria of simulation speed. I compiled the Fortran code into a DLL file.
Then the DLL subroutine is called from a Fortran program by using Windows API functions LoadLibrary and GetprocessAdress, it gives a the speed ratio of 770 which means that it takes 1 second to simulate the physical process in 770 seconds real time
Next, i do the same thing but this time in C++, and this gives me a speed ratio of 380 which is 2 times slower than the calling from Fortran program
i have tried to get through the problem by setting the Runtime library option when compiling C++ program to "Multithreaded DLL" which was set to the DLL but it did not resolve the problem
Anyone has any idea of what has happened with the call from C++?
Thanks for your help,