SHAREing Task

Reusable software for sustainable computing - Task 051

Work package 1.1
Open
Propose a Solution

Fit to programme

This task has been identified by the working groups as part of the agenda behind WP 1.1.

The task number is 051.

Summary

Sustainable computing practices are a key goal of SHAREing and foundational to performance assessment. It is widely recognised that software interoperability and reusability, particularly at the library level, must be improved to maximise the impact of scientific computing in the UK and optimise performance. However, the value of such maintenance tasks to the whole community is often lost in a competitive funding landscape. The SHAREing project will support efforts to make software outputs reusable beyond the original context of their development, to help promote a thriving and more interconnected software ecosystem. This is especially important for accelerated computing, where the increased demands of more multifaceted, tailored and heterogeneous systems necessitate code reuse wherever possible to reduce demands on individual development groups.

Methodology

The task targets software, especially libraries, where a modest amount of focussed effort of the order associated SHAREing flexible funding is needed to enable or improve reusability. This may include, but is not limited to, creation or formalisation of a well-defined API or similar interfacing strategy, wrapper functionality, improved test coverage and documentation, or (if necessary) code refactoring for modularisation. Feasibility of delivery is a key concern, and applicants must have a clear understanding of how much work is required to enable reuse and make clear how this will fit within the timescale of a SHAREing project. In line with WP1, a performance assessment of the target software is needed in the original context to give a clear indication of its potential for reuse and resources required.

Outcomes

Applicants should identify software that can be or has the potential to be reused in other contexts, and deliver the work required to enable this to happen within the constraints of a typical SHAREing funding allocation. The software chosen must have a suitable licence that can enable community reuse. They should keep a record of the methods and techniques they have used to enable reuse. If a demonstration of reuse in another context can be achieved this is ideal, but not essential. The webpage report should summarise the purpose of the software, its performance in the original context, the scope for reuse that the applicants envisage, the work that has been undertaken to enable reuse, and most importantly lessons learned that would benefit similar work on other software.Ready-to-use benchmark by the bidding community for third parties. Report on performance findings in line with SHAREing methodology. A review of the the system that the assessment is performed on, including details on the hardware and working environment configuration. This can be difficult for some codes as the configuration of the working environment can impact software performance.

Interested in this task?

Submit a proposal to deliver this work.

Propose a Solution