Song of The Day: Inside Out - Artist: Eve 6

A little while ago, when contemplating and debating web performance of applications and services at AOL, I thought about how various mathematical models, applied to parallel computing, could potentially be used to estimate speedups and/or slowdowns of various web-based applications and services. Most notably I was interested in speedups, network costs, concurrency, and efficiency. Also, I wondered if more performance issues could be caught earlier in design phases rather than during deployment phases, which are lagging indicators. These questions and thoughts resulted in a mini-research paper investigating the use of two fairly well-known equations: Amdahl and Gustafson’s Laws.

The paper, here in PDF, outlines a few theoretical examples of how one could apply the laws, but more work is necessary to apply these models, or derived works, to real-world scenarios.

Although there are similarities between message-passing systems (e.g., MPI) and web-based applications, there are also plenty of differences. For example, a web browser consists of an aggregation of systems rather than a serialized algorithm partitioned bewteen replicated processors or processes. On a related note web systems typically have multi-tiers that affect overall estimations as well–not necessarily the case on HPC systems.

However, new models, and better models, are needed in my opinion to identify performance and optimization challenges earlier in development cycles, thus the paper. Interestingly enough, and maybe obvious, but the discipline of modeling helps in a number of web-based problem domains, not strictly page download performance, but that may be good fodder for a future entry. In the future I hope to expand on the concepts, but for now, here is a little taste and stay tuned :).