Forum > General
Free Pascal fastest programming language for modelling and simulation.
jwdietrich:
Which programming language is best for high-performance computer simulations in biomedical cybernetics?
In our most recent study, we found that Free Pascal generates faster code than S (in the R implementation) and Python, two highly popular languages in life sciences. This may be not too surprising since R and Python are interpreted languages. However, Object Pascal even outperforms Swift and C++. This is a rather new result.
FPC may be the optimum environment for biomedical modelling and simulation.
Read our paper for free at https://doi.org/10.14201/adcaij.31762 or https://revistas.usal.es/cinco/index.php/2255-2863/article/view/31762.
Handoko:
Glad to know about it.
And, thank you for sharing it.
jamie:
Nice to see to good performance but it would be nice to see the actual source code for the C++ implementation. I find it hard to believe that a well season C++ can't make that equivalent FP or even better.
Not saying the report is bogus, just that maybe some sloppy code was implemented somewhere putting the knife into good coding experience regardless of the language target.
It's obvious that scripted languages are going to fall behind.
I've been moving a lot of C++ code over to pascal lately and found overuse of templates to make things easy for the coder kind of slows code down a bit. Also, it's my opinion the CString in C++ is slower than Fp because of not using dynamic classes.
Just my opinion from the peanut gallery. :o
Btw: Did I tell you I like peanuts! :D
Jamie
Thaddy:
--- Quote from: jwdietrich on August 31, 2024, 03:11:05 pm ---Which programming language is best for high-performance computer simulations in biomedical cybernetics?
--- End quote ---
Yeah, right: which platform: which cpu, which os, which version?
That is everything missing from a science point of view.
Please specify all these too and only then make bold statements.
Is it the language or the level of optimization for a certain platform?
To me it says nothing.
What is the performance on 32 bit Arm-linux? or AARCH64-Linux? or RISCV? or?....
In an ideal world any of the compiled languages probably render similar results...(which is to be expected)
Or can you provide an example where FPC is structurally faster than the other compiled languages on any platform... You can't.
I suppose, assume, this is tested with x86_64-linux only and there FPC is a bit of a cheat with all of its specific assembler optimizations, itself written in x86_64 assembler, not in FPC Pascal.
vfclists:
--- Quote from: Thaddy on August 31, 2024, 05:15:38 pm ---
--- Quote from: jwdietrich on August 31, 2024, 03:11:05 pm ---Which programming language is best for high-performance computer simulations in biomedical cybernetics?
--- End quote ---
Yeah, right: which platform: which cpu, which os, which version?
That is everything missing from a science point of view.
Please specify all these too and only then make bold statements.
Is it the language or the level of optimization for a certain platform?
To me it says nothing.
What is the performance on 32 bit Arm-linux? or AARCH64-Linux? or RISCV? or?....
In an ideal world any of the compiled languages probably render similar results...(which is to be expected)
Or can you provide an example where FPC is structurally faster than the other compiled languages on any platform... You can't.
I suppose, assume, this is tested with x86_64-linux only and there FPC is a bit of a cheat with all of its specific assembler optimizations, itself written in x86_64 assembler, not in FPC Pascal.
--- End quote ---
I think the comparison is with the languages used commonly in that domain and their libraries.
I don't know about C++ but I suspect fast turnaround times are important.
The first time I tried C++ was the last time I used it. It was a game which was implemented in Java, haxe and C++.
The C++ compilation time was so long that I thought there was something wrong and I aborted it.
That was about 14 years ago. Have things greatly improved in the meantime?
Navigation
[0] Message Index
[#] Next page