A survey in the article also correlated the lack of developer productivity because of this software deficiency. Better software development environments result in better productivity. Often new software ideas emerge as a secondary effect. By making software tools more integrative with parallelized code, a new wave of software developers will emerge. These developers will write parallelized software that enters the marketplace in a shorter timeframe. This is good for developers, corporations, and end-users.
In an earlier blog post, I discussed abstracting parallel programming techniques. I think that post fits with this concern. By simplifying software development, developers can be more efficient and create more applications and build upon existing applications much more quickly. One of the most important requirements is having a good integrated development environment that can translate prototypes into full applications. Microsoft and Intel have started down this road by integrating OpenMP in Visual Studio and creating application building blocks, but there is much more that can be done.
There is a secondary hurdle . Most desktop systems are not powerful enough to handle the datasets that are used in scientific computing. In the article in Electronic News, it states that most datasets contain about 20-30 GB of data, but continue to grow with an expected size of 100-300 GB. Most desktop systems have 300+ GB hard drives, but the transfer speed is not sufficient to realize the improvements. Additionally, the lack of RAM capacity and transfer rates also limit performance. What about processors?
Will dual-core or quad processors help desktop systems? The answer is probably not yet. Although simplified processing might be feasible on these systems, it’s more likely that prototyping with subsets of data is still going to be used by developers. Unfortunately until more powerful desktop machines that run like a mini-supercomputer are released, this problem will not go away.
When these improvements arrive, scientific computing developers will not only be more efficient, but advancements in this field will be realized much sooner. I think there are a number of other industries that will also benefit with these advancements. Imagine libraries of books and journals being indexed and searched in a matter of hours instead of days or weeks. I could also see industries with large archival data like banking or law firms becoming more efficient resulting in lower overhead saving everyone time and money. There is a lot to look forward to as software and hardware continue to improve.
Michael Cassens
mcassens@3leaf.com
Comments