5 ms·
legacy numeric applications / routines?
by mtanski 9y ago
legacy numeric applications / routines?
- zakk 9y agoExcept for some obscure edge case, it wouldn't really be a great idea to run them on a JS vm... FORTRAN code still in use is computation-heavy stuff for use cases where speed makes a big difference, the performance hit of a VM wouldn't be acceptable.
- sanxiyn 9y agoWell, for example, we could run 1980-era climate model written in Fortran on desktop web browser; it would run with reasonable speed.
- SomeStupidPoint 9y agoAh modern technology: using 1000x faster hardware to run 30 year old code at the same speed, but in a browser!
- pjmlp 9y agoThat is what I think every time I see WebGL demos that most of the time remind me of Voodoo or Amiga demos, but hey it is on the browser!
- mtanski 9y agoYou have accelerated graphics on any modern browser, on any OS, on any CPU architecture. I'll rag on JS as much as the next person but you have to admit 1) that's a pretty big feat 2) it's not an apples to apples comparison.
- pjmlp 9y agoThis is not true, because I have a couple of devices with pefectly fine working OpenGL ES 3.x GPUs where the browsers either don't support any form of WebGL or the FPS are a single digit number. Really, the 2nd coming of VRML.
- shepardrtc 9y agoThirty years ago it would have been run on supercomputers.
- zakk 9y agoThat's what I would define as a "some obscure edge case", see my comment above.
- monocasa 9y agoThe thing is that pretty much all Fortran is "some obscure edge case". Otherwise it'd be written in something that's not Fortran. Another example, I know the guy who maintains NIST's fluid properties solver (back in the day he worked at a subcontractor for NASA characterizing superfluids in fuel tanks). It's ancient Fortran compiled to a windows .dll and wrapped in VB in an excel file. It's super battle tested (being used for nearly 30 years), and it'd be awesome to be exposed in the browser.
- zakk 9y agoI use quite frequently LAPACK (http://www.netlib.org/lapack/ http://www.netlib.org/lapack/) which I would hardly define as "edge case".
- disgruntledphd2 9y agoEveryone who does any stats uses LAPACK, it's just that most of them aren't aware of it.
- jabl 9y agoThere is a lot of battle-tested Fortran out there. If you're for one reason or another in a situation where you have to deploy to the web platform and you need some numerical algorithms, I can imagine it could make sense to pick some routines from netlib instead of reinventing the wheel.
- goatlover 9y agoWhy not keep the numerical code on the sever?
- jabl 9y agoHmm, I guess it depends on the application whether that's a good idea or not. Or rather, before flang + emscripten/wasm/whatever, there was no reasonable way to run Fortran in a browser; now there is. Application developers can then choose whatever is most important for their application. Disclaimer: my web dev experience predates the "modern web" with SPA's, fast javascript runtimes, html5 etc.
- goatlover 9y agoNever thought I'd live to see the day people would be talking about compiling fortran to javascript to run in a web browser. Just mind blowing.
- kardos 9y agoIf you can run the processing on the client side, then you can scale up much, much easier and provide whatever service much cheaper, or even free. Eg, you can provision fewer servers, no need to build a processing queue or load balancing setup, if the input is provided by the client then you use less bandwidth by avoiding a round trip on that, etc.
- goatlover 9y agoNot sure it makes sense for computationally expensive code to be running in the user's browser.
- anentropic 9y agoIt would be useful if you specifically wanted to run it in JS environment, rather than for the speed Seems like most numeric/math code have some Fortran libraries underneath. It'd be handy to have a route to just compile them to JS rather than having to write from scratch
- goatlover 9y agoThis was a serious question? Oh geez. What kind of world has the web wrought?
- zakk 9y ago...and then your Javascript code will run on node.js, and the instance will be Dockerized for ease of deployment to a VPS. How many layers of abstractions are there?
- curtis 9y agoIt's turtles all the way down.
- AstralStorm 9y agoAnd they all live in a VM anyway.
- boromi 9y agoand also nginx reverse proxy m8, with apache compiling instances to be deployed automatically to scale using latest gcc7 with 03 optimization for robustness against DDOS
- walshemj 9y agoYes as some one who used to hack Fortran for a living I was having a hard time to find a use case for converting Fortran to js