Work
MEDIUMUniversity computer-graphics and AI research laboratory12/2010–11/2012
Distributed Forest-Growth Simulation
Technical implementation lead / Teaching Assistant
C++CCUDA (spelled “Kuda” in source profile)QtOpenGLWebGLVisual Studio
Problem
A university research laboratory ran a simulation that predicted how a forest grows. The simulation was so slow that one run took weeks. That made it hard to test ideas and to get results in time. The lab needed it to run much faster.
Approach
- I led the technical side of the lab's main research project, and for most of it I worked on it almost alone.
- I studied how the existing simulation worked and where the time went.
- I redesigned the application so that it could run on several machines at once.
- I kept the scientific model the same, so the results stayed comparable.
- I talked to a second university about working together on the project.
- I did this next to my teaching work, where I led the practical part of the lab courses.
Architecture and design decisions
- I split the simulation into parts that could run at the same time on different machines, and not one long run on a single computer.
- I wrote the application in C++.
- I used OpenGL to show the results visually.
- I kept the redesign inside the existing project, so the researchers could still use the tool the way they were used to.
Outcomes
- The run time of a simulation went down from weeks to days.
- Researchers could try more ideas in the same time.
- The project moved forward further than before, with me as the one doing most of the technical work.
Known gaps
- I do not describe how many machines were used or how the work was shared between them.
- I have no exact numbers for the run time before and after, only the range from weeks to days.
- The page does not say how accurate the predictions were, or how the research was used or published.
- I do not know what came of the talks with the other university.
- I do not know if the simulation is still used today.