  Performance is arguably the most crucial attribute that reflects the quality
of a configurable software system. However, given the increasing scale and
complexity of modern software, modeling and predicting how various
configurations can impact performance becomes one of the major challenges in
software maintenance. As such, performance is often modeled without having a
thorough knowledge of the software system, but relying mainly on data, which
fits precisely with the purpose of deep learning.
  In this paper, we conduct a comprehensive review exclusively on the topic of
deep learning for performance learning of configurable software, covering 1,206
searched papers spanning six indexing services, based on which 99 primary
papers were extracted and analyzed. Our results outline key statistics,
taxonomy, strengths, weaknesses, and optimal usage scenarios for techniques
related to the preparation of configuration data, the construction of deep
learning performance models, the evaluation of these models, and their
utilization in various software configuration-related tasks.We also identify
the good practices and potentially problematic phenomena from the studies
surveyed, together with a comprehensive summary of actionable suggestions and
insights into future opportunities within the field. To promote open science,
all the raw results of this survey can be accessed at our repository:
https://github.com/ideas-labo/DCPL-SLR.
