Programming languages for data-Intensive HPC applications: A systematic mapping study

被引:19
|
作者
Amaral, Vasco [1 ]
Norberto, Beatriz [1 ]
Goulao, Miguel [1 ]
Aldinucci, Marco [2 ]
Benkner, Siegfried [3 ]
Bracciali, Andrea [4 ]
Carreira, Paulo [5 ]
Celms, Edgars [6 ]
Correia, Luis [7 ]
Grelck, Clemens [8 ]
Karatza, Helen [9 ]
Kessler, Christoph [10 ]
Kilpatrick, Peter [11 ]
Martiniano, Hugo [7 ]
Mavridis, Ilias [9 ]
Pllana, Sabri [12 ]
Respicio, Ana [13 ]
Simao, Jose [14 ]
Veiga, Luis [5 ]
Visa, Ari [15 ]
机构
[1] Univ Nova Lisboa, Fac Ciencias & Tecnol, DI, NOVA LINCS, Lisbon, Portugal
[2] Univ Torino, Turin, Italy
[3] Univ Vienna, Vienna, Austria
[4] Univ Stirling, Stirling, Scotland
[5] Univ Lisbon, Inst Super Tecn, DEI, INESC ID, Lisbon, Portugal
[6] Univ Latvia, Inst Math & Comp Sci, Riga, Latvia
[7] Univ Lisbon, Fac Ciencias, BioISI, Lisbon, Portugal
[8] Univ Amsterdam, Amsterdam, Netherlands
[9] Aristotle Univ Thessaloniki, Thessaloniki, Greece
[10] Linkoping Univ, Linkoping, Sweden
[11] Queens Univ Belfast, Belfast, Antrim, North Ireland
[12] Linnaeus Univ, Vaxjo, Sweden
[13] Univ Lisbon, Fac Ciencias, LASIGE, Lisbon, Portugal
[14] Inst Politecn Lisboa, Inst Super Engn Lisboa, Lisbon, Portugal
[15] Tampere Univ, Tampere, Finland
关键词
High performance computing (HPC); Big data; Data-intensive applications; Programming languages; Domain-Specific language (DSL); General-Purpose language (GPL); Systematic mapping study (SMS); DOMAIN-SPECIFIC LANGUAGES; PARALLEL; ANALYTICS; MULTI; EFFICIENT; MODEL;
D O I
10.1016/j.parco.2019.102584
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
A major challenge in modelling and simulation is the need to combine expertise in both software technologies and a given scientific domain. When High-Performance Computing (HPC) is required to solve a scientific problem, software development becomes a problematic issue. Considering the complexity of the software for HPC, it is useful to identify programming languages that can be used to alleviate this issue. Because the existing literature on the topic of HPC is very dispersed, we performed a Systematic Mapping Study (SMS) in the context of the European COST Action cHiPSet. This literature study maps characteristics of various programming languages for data-intensive HPC applications, including category, typical user profiles, effectiveness, and type of articles. We organised the SMS in two phases. In the first phase, relevant articles are identified employing an automated keyword-based search in eight digital libraries. This lead to an initial sample of 420 papers, which was then narrowed down in a second phase by human inspection of article abstracts, titles and keywords to 152 relevant articles published in the period 2006-2018. The analysis of these articles enabled us to identify 26 programming languages referred to in 33 of relevant articles. We compared the outcome of the mapping study with results of our questionnaire-based survey that involved 57 HPC experts. The mapping study and the survey revealed that the desired features of programming languages for data-intensive HPC applications are portability, performance and usability. Furthermore, we observed that the majority of the programming languages used in the context of data-intensive HPC applications are text-based general-purpose programming languages. Typically these have a steep learning curve, which makes them difficult to adopt. We believe that the outcome of this study will inspire future research and development in programming languages for data-intensive HPC applications. (C) 2019 Elsevier B.V. All rights reserved.
引用
收藏
页数:17
相关论文
共 50 条
  • [21] HyperSpark: A Data-Intensive Programming Environment for Parallel Metaheuristics
    Ciavotta, Michele
    Krstic, Srdan
    Tamburri, Damian A.
    Van Den Heuvel, Willem-Jan
    2019 IEEE INTERNATIONAL CONGRESS ON BIG DATA (IEEE BIGDATA CONGRESS 2019), 2019, : 85 - 92
  • [22] Programming with Examples to Develop Data-Intensive User Interfaces
    Kato, Jun
    Igarashi, Takeo
    Goto, Masataka
    COMPUTER, 2016, 49 (07) : 34 - 42
  • [23] A data placement strategy for data-intensive applications in cloud
    Zheng P.
    Cui L.-Z.
    Wang H.-Y.
    Xu M.
    Jisuanji Xuebao/Chinese Journal of Computers, 2010, 33 (08): : 1472 - 1480
  • [24] Data-Intensive Scalable Computing for Scientific Applications
    Bryant, Randal E.
    COMPUTING IN SCIENCE & ENGINEERING, 2011, 13 (06) : 25 - 33
  • [25] Estimating computation times of data-intensive applications
    Krishnaswamy, Shonali
    Loke, Seng Wai
    Zaslavsky, Arkady
    IEEE Distributed Systems Online, 2004, 5 (04): : 1 - 12
  • [26] IPSO: A Scaling Model for Data-Intensive Applications
    Li, Zhongwei
    Duan, Feng
    Minh Nguyen
    Che, Hao
    Lei, Yu
    Jiang, Hong
    2019 39TH IEEE INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS (ICDCS 2019), 2019, : 238 - 248
  • [27] Optimizing Interactive Development of Data-Intensive Applications
    Interlandi, Matteo
    Tetali, Sai Deep
    Gulzar, Muhammad Ali
    Noor, Joseph
    Condie, Tyson
    Kim, Miryung
    Millstein, Todd
    PROCEEDINGS OF THE SEVENTH ACM SYMPOSIUM ON CLOUD COMPUTING (SOCC 2016), 2016, : 510 - 522
  • [28] Citus: Distributed PostgreSQL for Data-Intensive Applications
    Cubukcu, Umur
    Erdogan, Ozgun
    Pathak, Sumedh
    Sannakkayala, Sudhakar
    Slot, Marco
    SIGMOD '21: PROCEEDINGS OF THE 2021 INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA, 2021, : 2490 - 2502
  • [29] Understanding performance of distributed data-intensive applications
    Miceli, Christopher
    Miceli, Michael
    Rodriguez-Milla, Bety
    Jha, Shantenu
    PHILOSOPHICAL TRANSACTIONS OF THE ROYAL SOCIETY A-MATHEMATICAL PHYSICAL AND ENGINEERING SCIENCES, 2010, 368 (1926): : 4089 - 4102
  • [30] GORDON:. AN IMPROVED ARCHITECTURE FOR DATA-INTENSIVE APPLICATIONS
    Caulfield, Adrian M.
    Grupp, Laura M.
    Swanson, Steven
    IEEE MICRO, 2010, 30 (01) : 121 - 130