
In June 2009, Allinea announced a collaboration with the French organization CEA. We agreed to scale Allinea DDT up to debug 32,000 simultaneous cores - at this time this covered 98% of the systems in the TOP500.
Up until then Allinea DDT had used a simple, flat architecture similar to many traditional web servers of the time. Our GUI ran on a frontend node and received connections from each of the compute nodes, processed and visualized the data and sent out new commands.
To reach 32,000 processes it was clear that a change in Allinea DDT's architecture was required - after all, even high-traffic websites were using load-balancers to spread requests amongst a network of servers for processing. We had to do this in reverse - instead of having thousands of users sending requests to a single service, we had thousands of services sending data to a single user.
Allinea DDT already performed a lot of data aggregation before displaying this information to the user - clearly, even at moderate scales of hundreds of processes, you can't look at each one in turn. Way back in Allinea DDT 1.10 we started addressing this by introducing a parallel stack view, which shows you the broad picture of where your processes are - without overwhelming you with the specifics.