Difference between revisions of "Summer student projects"

From Einstein Toolkit Documentation
Jump to: navigation, search
(claim parallilization project for GetComponents)
(create finished projects section)
Line 15: Line 15:
 
* McLachlan: Improve performance of OpenCL code on GPUs [OpenCL, GPUs -- Erik]
 
* McLachlan: Improve performance of OpenCL code on GPUs [OpenCL, GPUs -- Erik]
 
* Cactus: Implement an interface between Cactus and PETSc [C/C++, parallel elliptic solver -- Ian, Erik, Eloisa]
 
* Cactus: Implement an interface between Cactus and PETSc [C/C++, parallel elliptic solver -- Ian, Erik, Eloisa]
* <strike>Carpet: write a single output files per MPI rank rank rather than one per group or one per variable</strike> [C++ -- Roland], done in ticket https://trac.einsteintoolkit.org/ticket/1976
+
 
 
* Carpet: populate Carpet::point_classification [C++ -- Roland, Erik; partially done by Roland]
 
* Carpet: populate Carpet::point_classification [C++ -- Roland, Erik; partially done by Roland]
 
* Cactus/MoL: investigate performance of Adams-Bashforth time integrators in MoL [none -- Roland, Ian, Erik; summer student at NCSA]
 
* Cactus/MoL: investigate performance of Adams-Bashforth time integrators in MoL [none -- Roland, Ian, Erik; summer student at NCSA]
Line 24: Line 24:
 
* Cactus: support running tests in parallel [Perl -- Roland]
 
* Cactus: support running tests in parallel [Perl -- Roland]
 
* <strike>GetComponents: track component inter-dependencies to handle components being checked out into directories provided by others [Perl -- Roland]</strike> Proposed in ticket [https://trac.einsteintoolkit.org/ticket/1916 1916]
 
* <strike>GetComponents: track component inter-dependencies to handle components being checked out into directories provided by others [Perl -- Roland]</strike> Proposed in ticket [https://trac.einsteintoolkit.org/ticket/1916 1916]
 +
 +
==Finished projects==
 +
* <strike>Carpet: write a single output files per MPI rank rank rather than one per group or one per variable</strike> [C++ -- Roland]

Revision as of 12:43, 23 February 2017

Projects for Summer Students

This page lists some projects for summer students, suitable e.g. for an REU student or Google Summer of Code students. Most of these projects are both self-contained and open-ended, and could be extended at will.

(Entry format: Subproject: Title [Required knowledge -- potential supervisor])

Computer Science

  • Simfactory: Automate archiving of simulation results [Python -- Erik]
  • Simfactory: add and test code to resubmit jobs automatically based on Cactus status return [Python -- Roland]
    • ICH: already implemented in SimFactory 3
  • Carpet: Collect performance statistics of parallel HPC simulations, output and display these [C++, MPI -- Erik]
  • Carpet: Design and implement a tree data structure for (integer) bounding boxes [C++ -- Erik]
  • McLachlan: Improve performance of OpenCL code on CPUs [OpenCL, assembler -- Erik]
  • McLachlan: Improve performance of OpenCL code on GPUs [OpenCL, GPUs -- Erik]
  • Cactus: Implement an interface between Cactus and PETSc [C/C++, parallel elliptic solver -- Ian, Erik, Eloisa]
  • Carpet: populate Carpet::point_classification [C++ -- Roland, Erik; partially done by Roland]
  • Cactus/MoL: investigate performance of Adams-Bashforth time integrators in MoL [none -- Roland, Ian, Erik; summer student at NCSA]
  • Cactus/MoL: add startup cdoe for Adams-Bashforth time integrators to MoL [C -- Roland, Erik, Ian; possible summer student at NCSA]
    • ICH: is this useful without corresponding code in Carpet to remove the buffer zones?
    • RH: it is probably not sufficient, but is necessary to get things working. I am still not sure if the buffer zones cannot be removed during checkpoint recovery. It may also be possible without.
  • Cactus: support HDF5 data in tests [Perl, python -- Roland]
  • Cactus: support running tests in parallel [Perl -- Roland]
  • GetComponents: track component inter-dependencies to handle components being checked out into directories provided by others [Perl -- Roland] Proposed in ticket 1916

Finished projects

  • Carpet: write a single output files per MPI rank rank rather than one per group or one per variable [C++ -- Roland]