SC17 bof139s1 / Distributed & Heterogeneous Programming in C++ (DHPC++) for HPC questions
 Share
The version of the browser you are using is no longer supported. Please upgrade to a supported browser.Dismiss

View only
 
ABCDEFGHIJKLMNOPQRSTUVWXYZAA
1
#Upvote
Question: What are the biggest challenges for heterogeneous and distributed computing in C++ (DHPC++) for HPC? And how do we approach the solution?
2
215
What is the preferred way to expose massive parallelism: Directive based (OpenMP/ACC) (in C++, likely through attributes), thread/task based(TBB, Fibers, C++11 threads), explicit parallel API (C++ AMP/HCC, CUDA, SYCL, Kokkos, C++17 ParallelSTL), stream (for DSP and FPGA over continuous stream of data), dispatch (Networking TS using runtime executor of function object on remote device via network)
3
311
Is Performance Portability across heterogeneous devices really possible? Under what constraints?
4
1410
Do you see this ever replacing MPI or OpenMP/ACC
5
19
What is the preferred Data movement if any: user directed with appropriate API (explicit e.g. most models) or runtime directed (implicit e.g. SYCL, C++AMP)
6
58
Should C++ change its memory model from flat/single cache coherent address space (OpenMP/ACC, HSA, OPenCL 2.x, C/C++) to Multiple hierchcical memory model (SYCL, C++AMP, OpenCL 1.x) or some other form like non-coherent single address space (CUDA)
7
47
Is there a preferred way of compiling source code for a sub-architecture/node (Separate source: OpenCL C,/C++, GLSL), Single Source (CUDA, OpenMP/ACC, SYCL, C++ AMP), Embedded DSL expressions constructed from C++ operator overloading (RapidMind, Halide). Should we support different separate host and device compilers instead of monolothic tool chain?
8
207
Should we design heterogeneous C++ programming models to accomodate hardware that lacks support for existing C++ features (i.e. virtual functions, unified memory, C+11 atomics, hardware floating point) or simply restrict support to more capable devices?
9
136
Parallel patterns: should we make greater use of them? can they be used for an intuitive API?
10
156
What challenges you have in adopting to Modern C++ (C++11/14/17) in HPC, whats missing, what doesn’t work, what does better in other languages, what works well, what would you say to the Standard committee to do for HPC
11
65
C++ lacks affinity, locality of reference, how should we add these support or should we? Should an offload node just be expressed as an affinity problem?
12
74
C++ prioritize standardizing heterogeneous, distributed, or both? Which is a higher priority?
13
184
How important is ISO standardized support for heterogeneous compute, as opposed to third-party extensions such as OpenMP or CUDA?
14
274
What about complexity of the language and programmer productivity?
15
243
What steps should we take to enable concurrent execution across heterogeneous computing resources, e.g. across a single STL data collection? How optimistic are you that we can accomplish this?
16
82
Features you might want in C++: Channels, pipelines,
17
92
How to describe the dimension/shape
18
112
What about data placement, layout, memory space, execution space
19
162
Is this still important given that Linux will support HMM and Nvidia has Unified Virtual Memory?
20
172
How important is exception handling for DHPC++ computing? Or should we use exception-less error handling?
21
192
Given that self-driving cars are supercomputer on wheels, do you feel we need to enhance DHPC++ for safety and security, i.e. in a modular fashon (HiHat?)
22
262
Could you tell us what you think about HPX as a C++ Standard Library for Concurrency and Parallelism ?
23
282
Follow-up to (3): Do you see portability layers (e.g. Kokkos) being required as HPC plarforms diverge?
24
292
How far are we from having a true C++ distributed, parallel runtime and library which could compete with and beat MPI?
25
302
How about having a helping guidline for people used to write Fortran scientific code to cover their code to modern C++ without the harm of performance ?
26
332
How do we express vector constructs such as "vector permute" without resorting to (non-portable) instrinsics?
27
362
Thoughts on embedded domain specific languages for parallelism
28
101
Is Heterogeneous computing a subcase of distributed computing, can we combine them
29
121
Asynchronous algorithm and futures, how important are they to DHPC++
30
211
What is the feature of your work that you feel is the most important to be added to future ISO C++ DHPC++
31
221
Would you want this work to be done for a TS or straight into ISO C++? How would you feel if your work disappears into ISO C++?
32
231
Should asynchrony have first-class support in C++, e.g. for allocation, invocation, data movement, error handling?
33
251
Should we support real-time dynamic onlining and offlining of devices (plastic parallelism), and how would we do that? What about selection based on energy consumption, safety security requirements?
34
311
What is the easiest programming model to learn and use among yours?
35
321
Is there a chance that we won't end up with several standards for single-source C++ proggraming, locked to specific vendors (CUDA, AMD HC, SYCL)?
36
341
Is SYCL easier than OpenCL?
37
351
What future has SYCL in the HPC market without any support from major GPU vendors?
38
37
39
38
40
39
41
40
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
Loading...