4 ms·
Not necessarily, because the kernel cost can still be too high in many cases. It's not the machine learning case where everything in Python is a matrix multipli
by ChrisRackauckas 6y ago
Not necessarily, because the kernel cost can still be too high in many cases. It's not the machine learning case where everything in Python is a matrix multiplication call that will be costly enough to mask the cost of Python. In this cases, users will be writing models that are for scalar operations, and doing things like inlining those functions matters a lot. Of course, you could write something that takes Python code and generates Fortran code that it then statically compiles inline to your other Fortran codes to eliminate all of the overhead, and from that you can see exactly why we resorted to a JIT compiled language. FWIW, other software in this field have essentially built mini JIT compilers for Fortran for doing exactly this, and I'll just say that I'm glad I'm not the one who has to maintain that kind of thing while working on modeling and simulation algorithms.
- DrScientist 6y agoOk - thanks - I guess it depends on the problem - I assume offloading computation to the GPU has similar issues? > FWIW, other software in this field have essentially built mini JIT compilers for Fortran Things like LLVM not specialist enough in terms of optimizations?