Jubilee is a software consultancy that specializes in portable HPC programming, performance optimization, and best-practices infrastructure. We want to help you make your code readable, flexible, and fast.
We will help you optimize your code's performance with an approach tailored to your model. In an ideal world, you'd like a code that performs optimally on every architecture; in practice, we aim for that, but where necessary tailor any tradeoffs to your requirements. We have expertise in MPI, OpenMP, OpenACC, Cuda, HIP, and Kokkos - and the list grows as we track and evaluate the latest advances.
Code bases evolve over time. Without careful attention and planning, it can devolve into "spaghetti code" as multiple short-term contributors add code and take shortcuts that are sensible in the short term, but accumulate to become problematic. With tools, experience, and best practices, we can efficiently "untangle" your code. Effective parallelization almost always requires refactoring - and even before introducing parallelization, refactoring a legacy code usually improves performance immediately.
We can also convert code between languages, and manage interfaces between languages if your optimal solution involves multiple. We have expertise in C, C++, Fortran, Python, and Matlab.
A good code won't persist outside of good infrastructure. For those not accustomed to it, version control, continuous integration, unit testing, and documentation can seem like a big leap and a lot of overhead. It's worth it. We can help you choose, implement, and/or maintain the support software that fits your project best.
We are available to evaluate your code's structure and performance and make suggestions to help guide your code to the state you want it in.
The new AutoDock-GPU - ready for a billion docking calculations in search of drugs for Covid-19 - paper published at ACM-BCB 2020.
Accelerating PsyNeuLink, a neuropsychology simulation, at the Princeton Hackathon - 200x speedup of major kernels in days.
Helping Scripps and Oak Ridge get protein-docking code AutoDock ready for large-scale Covid-19 drug simulations!
Presentation at the SIAM Conference on Parallel Processing for Scientific Computing, Taking the Plasma Physics Code XGC to Summit and Beyond with Kokkos/Cabana.
Presentation at Supercomputing19, Kokkos and Fortran in the Exascale Computing Project Plasma Physics Code XGC.
Presentation at the Platform for Advanced Scientific Computing (PASC) Conference, Porting the XGC gyrokinetic code to Summit.