HPX: A tool for building a Scalable Future

As HPX has grown from a small experiment to an international project with much promise, many of us have begun to stop and make comparisons of HPX to other runtime systems and established threading libraries. After submitting papers, we get uncomfortable when reviewers point out some of the improvements that need to be made in HPX. While it is good to listen and react to criticism, I believe we should never let implementation problems in HPX get under our skin. At the end of the day, HPX is just a tool for getting us where we want to be. What we are really working toward is far grander.

One of the reasons I believe the STE||AR Group has been successful so far is that we strive to create a new era in computing. Our vision of this future is based on two fundamental beliefs. We believe that the challenges we have in the face of exascale computing can be tackled by properly by abstracting the principles of the ParalleX model and that the C++ concurrency model is the API that can provide us that abstraction. By extending the C++ model to become aware of the distributed nature of today’s compute resources, we believe that application developers will have the tools to seamlessly write scalable, sustainable, and fault-tolerant code. I believe it is this vision that draws new people to HPX, not the code base itself. Many of our collaborators that we work with now, joined the team not because HPX was the perfect tool for them, but because the potential that HPX offered. This potential, combined with the vibrant and growing community around HPX, is our most valuable asset.

HPX is not yet perfect. We have a long way to go to make it ready for the future. It is quite probable that, in order to implement this grand vision we will have to scrap large swaths of code, include great ideas born in other projects, and at times replace the work that we have put our blood sweat and tears into. However, I believe this commitment to the vision and not to the product is what makes our work so successful. We see the future and we are on our way!

HPX V0.9.9 Release Candidate 1 Available!

The STE||AR Group is proud to announce the availability of the first HPX V0.9.9 release candidate! Please checkout and test the new version by pulling from the release branch here on GitHub.  If you run into any issues, please let us know by submitting a bug report.  We want this release of HPX to be our most stable release yet!

In this release we have introduced several improvements including:

  • Completing the refactoring of hpx::future to be properly C++11 conforming
  • Overhauled our build system to support newer CMake features
  • Implemented half of the parallel algorithms proposed by C++ Technical Specifications N4104, N4088, and N4107
  • Remodeled our testing infrastructure which will allow us to quickly discover, diagnose, and fix bugs that arise during development

We would like to thank everyone involved with this release especially those who spent countless hours developing, bug fixing, testing, documenting, and listening to the occasional IRC rant.  We couldn’t have done it without you!

Welcome to the STE||AR Group’s New Site!

The STE||AR Group is an international collaboration of researchers who are committed to making applications scalable on today’s and tomorrow’s machines.  We want this website to provide a platform to support and promote our work.  Here you can find a community of researchers who are interested in sharing and building upon the best ideas in HPC.  We strongly believe that the best way to spread these ideas is to have them applied in real applications by an active user base.  The Libraries page provides links to software developed by our researchers for anyone to download and try out.  Please look at the library descriptions and see if any of this software applies to you!

In addition to providing demonstrations of our current work, we would like to also share and coordinate the direction of our group’s research.  We hope that by explicitly stating what we are currently working on and what we hope to work on we can entice internal and external collaboration. These collaborations are mutually beneficial as the pressure to fulfill new needs will improve everyone’s software.  Feel free to peruse our research interest on the Research page and see where you could fit into the mix.

Finally, we hope to use this site to distribute news and updates of the happenings of this group.  Please come back here to read about recent releases, publications, and conferences that  we are involved with.  If you are interested in our work or just have a few questions, please contact us at: fellows@stellar-group.org or visit our IRC channel #ste||ar on Freenode.  We would love to exchange our ideas with you!