Jonathan Dursi

home banner

A Killer Feature for Scientific Development Frameworks: An Incremental Path To Maturity

( Note: This is a bit of a work in progress; even more so than usual, comments/criticisms/additions welcome ) The Stages of Research Software Development Research software development covers a lot of ground — it’s the development of software for research, and research is a broad endeavour that covers a lot of use cases. The part of research software development that I find the most interesting is the part that is a research effort itself; the creation of new simulation methods, new data analysis techniques,...

Continue...

Chapel's Home in the Landscape of New Scientific Computing Languages

I was invited to speak at this past weekend’s fourth annual Chapel Implementers and Users Workshop (CHIUW 2017). It was a great meeting, with lots of extremely high-quality talks on work being done with and on Chapel. The slides from the presentations will be up shortly, and I recommend them - the libfabric, KNL, use-after-free tracking, and GraphBLAS works were of particular interest to me. The Code Camp on the next day, working with members the Chapel team on individual particular projects, was also a...

Continue...

Compute Canadian: Building a successful and federated computational research enterprise, together

Canada is a federated nation, and this is particularly visible in areas of research funding, where both the federal and provincial orders of government play a role. In building a successful digital research infrastructure to support Canadian science and scholarship, we must recognize that reality, and rely on the successful examples of many organizations in Canada and around the world that embrace such a federated approach. In this discussion paper, my colleague Jill Kowalchuck and I lay out what we hope to be the beginnings...

Continue...

Should I use Chapel or Julia for my next project?

Julia and Chapel are both newish languages aimed at productitive scientific computing, with parallel computing capabilities baked in from the start. There’s lots of information about both online, but not much comparing the two. If you are starting a new scientific computing project and are willing to try something new, which should you choose? What are their strengths and weaknesses, and how do they compare? Here we walk through a comparison, focusing on distributed-memory parallelism of the sort one would want for HPC-style simulation. Both...

Continue...

Beyond Single Core R: Parallel Data Analysis

I was asked recently to do short presentation for the Greater Toronto R Users Group on parallel computing in R; My slides can be seen below or on github, where the complete materials can be found. I covered some similar things I had covered in a half-day workshop a couple of years earlier (though, obviously, without the hands-on component): How to think about parallelism and scalability in data analysis The standard parallel package, including what was the snow and multicore facilities, using airline data as...

Continue...

MPI's Place in Big Computing

The organizers of EuroMPI 2016 were kind enough to invite me to give a keynote and participate in a panel at their meeting, which was held at the end of September in beautiful Edinburgh. The event was terrific, with lots of very interesting work going on in MPI implementations and with MPI. The topic of my talk was “MPI’s Place in Big Computing”; the materials from the talk can be found on github. The talk, as you might expect, included discussion of high-productivity big data...

Continue...