Algorithms: Balancing

Monday, Feb 6, 2017 | 5 min read
Categories: Engineering,
Tags: Algorithms, Graphs,
Balancing in algorithms refers to minimizing the complexity of an algorithm by making sure that its constituent parts share the load efficiently. It is not a technique for solving problems. Instead it helps us understand how an existing solution may be optimized. The theory of balancing Say there is a problem of size \(n\). The problem is such that it can be broken down into a sequence of smaller problems. There are many ways the problem can be broken down:

A case study in choosing algorithms

Sunday, Aug 14, 2016 | 3 min read
Categories: Engineering, Physics,
Tags: Algorithms,

This past year, I have been crunching data from dark matter simulations. Data size can get pretty large when it comes to scientific computing. As I write this post, I have a script running on 3.8 TB (that’s right – 3,700 gigabytes) of cosmic particles. At these levels one starts thinking about parallelizing computations. And therein lay my dilemma and a soon to be learned lesson.