Difference between revisions of "Tawhiri/rewrite core"

From CUSF Wiki
Jump to navigation Jump to search
("Add old wiki")
 
Tag: Redirect target changed
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Idea: Rewriting the core of the predictor in Python ==
#REDIRECT [[Tāwhirimātea#Idea: Rewriting the core of the predictor in Python]]
 
Currently the predictor is split across 4 languages:
 
* The homepage and AJAX requests are served by PHP
* The client is mostly Javascript
* PHP starts a python script, which downloads wind data and invokes:
* The predictor itself, a C binary
 
The majority of the time spent predicting is downloading wind data, so we don't really need C-performance. (Having said that, we may find we want it later when we come to do Monte Carlo ...).
 
Benefits to moving to Python:
 
* The majority of the C predictor is IO, getting wind data, reading scenarios, writing CSV. This would be far simpler in Python
* Easier to add features, add different altitude models
* Can have the predictor process get wind data directly, so we don't need latitude/longitude deltas - it just gets what it needs
 
Although we intend to replace PyDAP, a Python rewrite could initially talk to PyDAP and use the existing PHP/Javascript. Indeed, it looks like it would be fairly simple to break work on the predictor up into independent stages, with rewriting the C being one.

Latest revision as of 21:21, 29 April 2021