Gurobi Installation and Tests on a HPC system

Gurobi is an optimisation solver, which describes itself as follows, thus explaining it's increasing popularity:

The Gurobi Optimizer is a state-of-the-art solver for mathematical programming. The solvers in the Gurobi Optimizer were designed from the ground up to exploit modern architectures and multi-core processors, using the most advanced implementations of the latest algorithms.

The following outlines the installation procedure on a Linux cluster, various licensing condundrums, and a sample job using Slurm.

Easybuild: Building Software with Ease

Building software from source is necessary for performance and development reasons. However, this can come with complex dependency and compiler requirements, which have to be explicitly stated in research computing to ensure replication of results. EasyBuild, originally developed by the Julich Supercomputing Centre, the University of Gent, and the Texas Advanced Computing Center, is a tool that allows the building of software with ease, managing the complex dependencies and toolchains, and integrating by default with the Lmod environment modules system.

Praise-Singing Poppler Utilities

Last year I gave a presentation at Linux Users of Victoria entitled Being An Acrobat: Linux and PDFs (there was an additional discussion not in the presentation about embedding Javascript in a PDF and some related security issues, but that's for another post). Part of this presentation was singing the praises of Poppler Utilities (named after the Futurama episode, "The Problem with Popplers").

The Disciplinary Vagaries of Information Systems


More than thirty years ago, Professor Peter Checkland of the University of Lancaster, raised the question whether information systems (IS) and systems thinking could be united (Checkland, 1988). Almost twenty years later, Ray J. Paul, senior lecturer at the London School of Economics and Political Science also raised the disciplinary status of the subject, as editor the European Journal of Information Systems (Paul, 2007). These two papers are both illustrative of several others (e.g., Banville and Laundry, (1988)., George et. al., (2005)., Firth et. al., (2011)., Annabi and McGann, (2015)) from information systems as it attempts to find its own disciplinary boundaries among the crowd of academia, research, and vocational activities (c.f., Abraham et. al., (2006)., Benamati et. al., (2010).

The two papers are selecting not only to provide an at-a-glance illustration of the time-period of foundational issues within Information Systems as a discipline, but also the temporal context of each paper, and the differences in their views which, at least in part, is reflective of those different times. Drawing from these illustrative comments and from other source material mentioned, some critical issues facing the field of information systems is identified. Rather than attempting to enforce a niche for information systems, a philosophical reconstruction is carried out using formal pragmatics, as developed by the philosopher Karl-Otto Apel (1980) and the social theorist Jurgen Habermas (1984).

Simple FOSS versus Complex Enterprise Software

As is often the case real IT operators in large organisations find themselves having to deal with "enterprise" software which has been imposed upon them. The decision to implement such software is usually determined by perceived business requirements (which is reasonable enough), but with little consideration of the operations and flexibility for new, or even assumed, needs.

Python 2.7.x with GCC 8.x and EasyBuild

An attempted build of Python-2.7.13 with GCC-8.2.0 led to an unexpected error where the build failed to generation of POSIX vars. This is kind of important and unsurprisingly, others on in the Python community have noticed it as well both this year, and in a directly related matter from late 2016, with a recommended patchfile provided on the Python-Dev mailing list.

Performance Improvements with GPUs for Marine Biodiversity: A Cross-Tasman Collaboration

Identifying probable dispersal routes and for marine populations is a data and processing intensive task of which traditional high performance computing systems are suitable, even for single-threaded applications. Whilst processing dependencies between the datasets exist, a large level of independence between sets allows for use of job arrays to significantly improve processing time. Identification of bottle-necks within the code base suitable for GPU optimisation however had led to additional performance improvements which can be coupled with the existing benefits from job arrays.

Not The Best Customer Service (

You would think with a website like you would be sitting on a gold mine of opportunity. It would take real effort not to turn such a domain advantage into a real advantage, to become the country's specialist and expert provider of laptops. But alas, some effort is required in this regard and it involves what, in my considered opinion, is not doing the right thing. I leave you, gentle reader, to form your own opinion on the matter from the facts provided.

New Developments in Supercomputing

Over the past 33 years the International Super Computing conference in Germany has become one of the world's major computing events with the bi-annual announcement of the Top500 systems, which continues to be dominated in entirety by Linux systems. In June this year over 3,500 people attended ISC with a programme of tutorials, workshops and miniconferences, poster sessions, student competitions, a vast vendor hall, and numerous other events.