FOSS4G in Bonn

foss4g 2016 in Bonn

Last week I attended the FOSS4G conference in Bonn. There were plenty of interesting presentations, and the venue (World Conference Center Bonn) was really impressive. If you are interested in our current work on estimation of human exposure to air pollution you can download our presentation slides and watch my presentation (ca. 25 min; mp4, webm). You can also contact us directly for more information.

Vacancy: PhD position

We have a vacancy for a PhD student working at the intersection of geocomputation and environmental health science. The successful candidate will work in a multidisciplinary team under supervision of Dr Derek Karssenberg (PCRaster research team, Faculty of Geosciences, Utrecht University) and Dr Ilonca Vaartjes (University Medical Center Utrecht). Detailed information is at http://www.werkenbijumcutrecht.nl/international/vacancies/Pages/phd-gghdc%20(2016-0557).aspx

apt-get update

screenshot_osx

We released the PCRaster version 4.1 already some time ago. We’ve been busy the last year with several projects, and we are finally getting closer to the next release. A lot still needs to be done in the next few weeks, but it is time for a short update. While we will continue to distribute binary packages for Windows systems, Linux users will face some changes:

Dropping LSB support

Until now, we provided Linux versions of the PCRaster software conforming to the Linux Standard Base (LSB). This approach is convenient for users as our executables will run on virtually any Linux distribution. For us developers, however, building LSB software is quite tedious. We were forced to use specific (outdated) compiler versions and we needed to compile and distribute a lot (about 25) of third party libraries ourselves. In addition, the LSB is rather conservative with respect to supporting new compiler versions, therefore not enabling us to use new and very useful features of the C++ programming language. However, we need those new C++ features for our current projects.
As PCRaster is open-source for quite some time now there is also no reason to distribute binaries any longer. We will instead focus on improving and extending our software and on distributing the code. We changed our whole build infrastructure to use more libraries installed on the system, and further try to reduce the dependencies to third party libraries making it easier for us to develop and add new features. However, no longer providing binaries will require the Linux users to compile the PCRaster software themselves. Don’t fear; we will provide build scripts that smooth the compilation process.

Distributing experimental features

We develop new software due to several research and development projects. Last summer we worked on a multicore module for the PCRaster point operations within the maps4society project. We continue our work on high performance computing elaborating distributed computing to further increase runtime performance of environmental models and parallel I/O. We are also busy with a new file format that is capable of handling heterogeneous data.
These exciting projects result in new, volatile software rather than stable versions. But we are convinced that our developments are of interest and useful for adventurous modellers. However, previously it was very difficult to distribute those new software developments to our users. The new release will include an optional flag to build these experimental features such that modellers can benefit from our latest projects more easily.

Supporting new platforms

Reducing dependencies to external libraries should result in a straightforward and easier build process for Linux distributions. The PCRaster software will therefore continue to run on all kinds of Linux machines (and yours). We would also like to add the PCRaster software to the OSGeo live CD to streamline the first time experience of new users. In the very near future we also will be able to support other UNIX based systems (the attentive reader might have noticed the operating system used for the screenshot). In a later stage we consider distributing our software via package managers such as apt or macports.

 

Improving runtime performance

PCRaster Modflow groundwater model of Indonesia

During the summer we have been busy with tailoring PCRaster towards high-performance computing, and we already have rewritten parts of the PCRaster algorithms due to our Maps4Society project. This refactoring required significant efforts and code changes. Sometimes, however, appending just a single word can yield performance improvements as well… as our colleague Edwin Sutanudjaja mentioned, a simple NOPRINT statement in several packages prevents Modflow to write a large amount of redundant information. For a model running the extent shown above (see also here; 21600000 cells, with 3920887 drains and 21600000 river cells) the Modflow runtime reduces from about

real 5m39.229s
user 5m10.392s
sys 0m25.511s

to about

real 3m33.181s
user 3m1.913s
sys 0m25.666s

Nice savings, especially if you need to run several timesteps! The improvements will be included in the upcoming PCRaster release.

PCRaster 4.1.0 released

We are glad to announce the final release of PCRaster-4.1.0! We fixed several bugs in the software and documentation, added support for pickling PCRaster Python types, and changed the location of shared libraries on Windows. For more information please visit the download page.

PCRaster-4.1.0 test version released

We released a beta version of the upcoming PCRaster-4.1.0 release. The (user visible) changes are listed here:

http://pcraster.geo.uu.nl/pcraster/4.1.0/doc/pcraster/changes.html

PCRaster packages are available for:

We dropped support for Window 32 bit. If 32 bit Windows is still important for you, you can stick with the previous version of PCRaster (4.0.2).

Please give this beta a spin if you have the chance. Note that since PCRaster 4, multiple versions of PCRaster can be installed side by side. You never have to uninstall a previous version if you prefer not to. Just install each new version next to the older one(s) and update the PATH and PYTHONPATH environment variables. If things don’t work for you, then please let us know, and revert the environment variables to their previous settings.

In case no show-stopper bugs are found, we plan to release the final version of PCRaster-4.1.0 about two weeks from now.