User Stories - uw-ssec/HPyX GitHub Wiki

HPyX User Stories

  1. Adam (python developer new to HPC) As a Python developer new to HPC, Adam wants to experiment with HPX on cloud platforms (AWS/Azure/Google Cloud) so that he can evaluate its performance and scalability without needing deep expertise in HPC infrastructure.
  2. Karen (HPX developer) As an HPX developer, Karen wants to expose the new features she has added to the HPX library in Python using HPyX so that Python developers can leverage these enhancements without needing to write C++ bindings themselves.
  3. Hanna (library developer) As a library developer for data scientists, Hanna wants HPyX to support dynamic configurations and runtime parameters so that third-party application developers can customize their HPyX usage.
  4. Nelly (AI researcher) As an AI researcher, Nelly wants to use HPyX for model parallelism so that she can distribute large language model computations across multiple modes and improve training and inference performance.
  5. Carla (web app developer) As a web app developer, Carla wants to use HPyX to parallelize data processing in her Python-based storm surge simulation so that she can handle large datasets more efficiently and improve application responsiveness.
  6. Marcel (medical physicist) As a medical physicist, Marcel wants to model the human vascular system and simulate blood flow across multiple computational nodes so that he can achieve high-performance simulations while integrating external solvers like SciPy.
  7. Damien (astrophysicist) As an astrophysicist, Damien wants to port his HPX-based n-body simulation to Python using HPyX and cuPy so that he can leverage GPU acceleration while maintaining the scalability and distributed computing benefits of HPX.
  8. Reynold (compiler engineer) As a compiler engineer, Reynold wants to compile (transpile/map) Dask’s task graphs into HPyX so that he can more efficiently schedule Dask workflows.
  9. Britney (performance engineer) As a performance engineer, Britney wants HPyX to provide detailed performance metrics so that she can analyze and optimize her application’s execution efficiency for better resource utilization.