OpenACC support in 4.9
Hi, all! What do you think about support of OpenACC 1.0 (http://www.openacc-standard.org/) in gcc? We're from Samsung Electronics and possibly we can allocate one or two full-time engineers for this task. We can try to implement it for 4.9 branch by the end of Stage 1. On my view, it's going to require some organizational help from your side: development branch, at least. Do you interested in getting OpenACC 1.0 support in 4.9 branch? -- Thanks, Evgeny.
Re: OpenACC support in 4.9
Evgeny Gavrin wrote: What do you think about support of OpenACC 1.0 (http://www.openacc-standard.org/) in gcc? I like the idea - though, I wonder whether OpenMP 4.0's "target"* would be the better choice as it looks a bit more flexible and better defined. (Conceptually, they are very similar; I think the middle-end/back-end/library part would even be the same.) Which accelerators do you intent to handle? "Accelerator" is a rather broad term, covering DSPs, GPUs, Intel's MIC, ... Tobias * http://openmp.org/wp/2013/03/openmp-40-rc2/ (GCC supports OpenMP 3.1. Support for OpenMP 4.0 is currently implemented in GCC's gomp-4_0-branch - but I don't think anyone will work on OpenMP 4.0's 'target' feature soon as the enough work on the non-'target' features remains.) PS: A nonexclusive copyright assignment to the Free Software Foundation is required for any any nontrivial code contribution. See http://gcc.gnu.org/contribute.html#legal - After the copyright issues are sorted out, you can apply for commit rights (write after approval status), which are sufficient to create a development branch.
Re: OpenACC support in 4.9
On 05/06/2013 07:41 AM, Tobias Burnus wrote: Evgeny Gavrin wrote: What do you think about support of OpenACC 1.0 (http://www.openacc-standard.org/) in gcc? I like the idea - though, I wonder whether OpenMP 4.0's "target"* would be the better choice as it looks a bit more flexible and better defined. (Conceptually, they are very similar; I think the middle-end/back-end/library part would even be the same.) We're certainly hoping that OpenACC & OpenMP 4 & Cilk+ can share certain parts of their implementations. We're already seeing OpenMP 4 and Cilk starting to converge on some stuff. In a perfect world, there'd only be one standard for this stuff. That's not likely, so I'd be happy with parsing/FE kinds of things being specific to each standard with everything from initial gimple generation through the optimizers being shared. That may not ultimately be possible, but I think that's the right way to look at the work. Jeff
Re: OpenACC support in 4.9
On Mon, 2013-05-06 at 16:17 +0400, Evgeny Gavrin wrote: > What do you think about support of OpenACC 1.0 > (http://www.openacc-standard.org/) in gcc? Is there a specific reason for targeting 1.0 instead of 2.0 (besides 2.0 still being declared as a draft)? Also, adding to Tobias' question: Which hardware or existing runtimes do you intend to target in the implementation? Torvald
init_priority across different namespaces
Hi, Is init_priority affects initialization order across different namespaces? Means in the code (the same file) namespace x_sp { Foo a_x __attribute__ ((init_priority (2000))); } namespace y_sp { Foo a_y __attribute__ ((init_priority (1000))); } which object will be initialized first? Sergey Kljopov
Re: init_priority across different namespaces
On Mon, May 6, 2013 at 3:30 PM, Sergey Kljopov wrote: > Hi, > > Is init_priority affects initialization order across different namespaces? > Means in the code (the same file) > namespace x_sp { Foo a_x __attribute__ ((init_priority (2000))); } > namespace y_sp { Foo a_y __attribute__ ((init_priority (1000))); } > which object will be initialized first? init_priority is global across all translation units. Thanks, Andrew > > Sergey Kljopov > >