Where to contribute small collection of working ccall examples (FORTRAN) on windows?

community

#1

Hi,

I started practicing with a FORTRAN project I know of and calling some simple subroutines from Julia.
I am new to the world of compiled languages, but with the help of some folks over at SO I was able to get up and running.

I am slowly picking out some of the smaller standalone files and figuring out how to call them and I thought someone may find my tinkering useful. All the FORTRAN code I am referencing is publicly available on sourceforge already.
Is there anywhere I can post the code once I get them cleaned up and what format would be useful?


#2

I haven’t looked at what the code is about, but ForestVegetationSimulator.jl as a wrapper library may make sense?

Or do you mean as a blog post / tutorial?


Also, I’ll create a new thread for this soon as it’s only tangentially topical, but code that gets much faster when compiled into executables with -fopenmp (ie, parallel code with the appropriate !$OMP parallel do or #pragma OMP parallel for notations) run the same speed (ie, not parallel) when compiled into shared libraries. Asking for the thread id shows that there are still independent threads being run, so it seems like they’re being constrained to 100% CPU (like the GIL in Python?). Has anyone else encountered this? Is there a way around this to get proper parallelism with OpenMP? How about without it? (Obviously BLAS and LAPACK routines do).
I’ll add detail and a new thread unless someone happens to know this offhand.


#3

I think a wrapper library is one of my end goals but that is very,very far away for me…

I was imaging a markdown/blog post type of thing where the source .f files are listed and then list system info then what worked for me as far as compilation options and ccall function.

I know everything can get changed based on compiler and machine architecture and whatnot, so it may be interesting to have a set of fixed examples and have a windows x gcc7.2.2/mac x compiler/linux x compiler version shown. While working through the one example, I got to the point where all my links were purple so I am hoping to be helpful to someone else.

Also, I thought it may interesting to show interacting with older style legacy code. A fair amount of the google group threads and other forums I read up on seemed to show F90 files and modules.