[Cplex] Keywords, compliance, and a parallel UNCOL.

Geva, Robert robert.geva at intel.com
Sat Jun 29 20:59:47 CEST 2013

Yes, I think so:
1. OpenMP 4.0 support for offload is distinct from its support for shared memory parallelism, it is not the case that they extended the same pragmas to also apply to offloading. This is also the case for the Intel implementation supporting Xeon Phi as a coprocessor which was used prior to the OpenMP 4.0 standard.
2. Managing the heterogeneous HW, the distinct memory and the overhead of copying are fundamental to programming these systems, so abstracting these away and making them look the same as multi core parallelism is unlikely to be the desired direction.
3. A system that treats GPU and shared memory multi cores the same does not exist, or at least is not being proposed. I agree with others who said it before, that the CPLEX is too large of the committee to invent a solution. It would be an effective place to endorse and make incremental improvements to proposal coming in, hopefully based on implementations.

By the way, the question of GPUs came up in the WG21 SG1 and it was unanimously agreed upon to not try to standardize GPU programming. I am hoping for the same agreement in CPLEX.


-----Original Message-----
From: Matthew Markland [mailto:markland at cray.com] 
Sent: Saturday, June 29, 2013 10:04 AM
To: Geva, Robert; Nelson, Clark; cplex at open-std.org
Subject: RE: Keywords, compliance, and a parallel UNCOL.

> -----Original Message-----
> From: Geva, Robert [mailto:robert.geva at intel.com]
> Sent: Saturday, June 29, 2013 2:43 AM
> To: Matthew Markland; Nelson, Clark; cplex at open-std.org
> Subject: RE: Keywords, compliance, and a parallel UNCOL.
> The problem address by OpenACC is support for accelerators / 
> coprocessors / etc, mostly with either non shared memory or 
> heterogeneous execution units (or both).
> This problem is not in the scope of what WG14 asked this study group 
> to work on.
> We need to solve the "simpler" problem of shared memory parallel 
> programming.

But I believe we should keep in mind whether the syntax/concepts added to the language can extend to the accelerator/coprocessor model also. In 5 years would another extension be needed (offload), or can we make spawn general enough even in this design so that it could be reused for a future model? 


More information about the Cplex mailing list