Geeze. It's been a long time since I've worked with (or even seen) FORTRAN. vitrfan, FORTRAN <i>is</i> the best language for complex numerical calculations. The thing is, most people don't really use FORTRAN to it's full potential, so in the vast majority of cases C++ is just as good. The real question is: Are you using any FORTRAN-specific features that wouldn't port to C++? If not, then you're gaining nothing by using FORTRAN.
That aside, there's still nothing <i>wrong</i> with using FORTRAN. (Especially for console applications.) I'm just saying that there might be no actual advantage to using it over using C++. But that's why I personally haven't worked in FORTRAN in almost five years, because C++ was just as good for the ways in which I was using it.
Now, on to performance. I'm assuming that by Visual FORTRAN 5.0, you mean DIGITAL's flavor, since to my knowledge 5.0 was the point when Microsoft sold the Visual FORTRAN line to DIGITAL. (Which is why DIGITAL Visual FORTRAN plugged in so nicely into Microsoft's Developer Studio.) Visual FORTRAN is actually a twisted tale since MS started its development, but then sold it to DIGITAL. DIGITAL got bought out by Compaq, who in turn merged with HP. So now I'm guessing (and I could be wrong) that if new versions of Visual FORTRAN are still worked on, it's probably under Compaq's name, but only available through HP. Nasty, huh?
Anywho, at the time that DIGITAL Visual FORTRAN 5.0 was released I'm not even sure if that compiler supported MMX instructions. I don't think that it did, but I could be wrong. I'm pretty sure that it didn't support SSE1 yet though, and it <i>definately</i> didn't support SSE2. So if you're on 5.0 then you're definately without SSE2.
So that means that on a Pentium 4 the code will run especially bad. Intel made the P4 with truly awful floating-point performance, relying upon SSE2 optimizations to make up for that. So with an old compiler that doesn't support SSE2, software that is very floating-point intensive will run very poorly on a Pentium 4. Thus in your case an Athlon would be a <i>much</i> better performer <i>if</i> your mathematical equations are heavily based on floating point calculations.
This is also where a recent Intel C++ compiler could be a big advantage over FORTRAN, as it'll allow for MMX, SSE1, and SSE2 optimization. If you're lucky, there will be some sort of 6.??? version of Visual FORTRAN that plugs into Visual Studio 6 and supports optimizations for a Pentium 4. I can't promise that such a beast exists, but if it does, you'll probably have to search for it on HP's website.
Also a quick warning, if you <i>do</i> have a version from Microsoft and not from DIGITAL, then you should try to upgrade. Microsoft's versions had a number of compiler bugs (including a nasty floating-point division by zero doozy) that DIGITAL fixed.
So to conclude, chances are high that your code will run a <i>lot</i> better either by switching to a newer compiler and optimizing the code for a Pentium 4, or by picking up a powerful Athlon system because Athlon's run unoptimized code very well.
And of course the obvious question is: How well have you actually optimized your code? No matter what language you're working in, there are always tricks for making code faster. You just have to find and use them.
<font color=blue><pre>If you don't give me accurate and complete system specs
then I can't give you an accurate and complete answer.</pre><p></font color=blue>