From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.kundenserver.de (mout.kundenserver.de [217.72.192.75]) by sourceware.org (Postfix) with ESMTPS id 59C183858439 for ; Thu, 11 Jan 2024 20:38:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 59C183858439 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=net-b.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=net-b.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 59C183858439 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=217.72.192.75 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705005515; cv=none; b=t+N6Pw69i2+9CAGlT7MiZYVL9BLiyGql9ikJ5Orm1v/jxY14fqSrXqXjySy2gvrLy3Gt89h/UnxEgHkbszqnYFHn2LHeWcAfL3zDeWLNCaqzQecbTgaQC8nN7t151jt4t4T6ybvKaC3fCH+3pPVq7AFoJq0Y+Yqdr74B/sX7NZU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705005515; c=relaxed/simple; bh=ic6KCwNdMvGoMHLso2z3A6ywOAp4HiosAzPLvt4QRsY=; h=Message-ID:Date:MIME-Version:Subject:To:From; b=HaPvmnLmX4jklG58G0SdpwGhIx0hNKQ1HKGM1XI7LV4VRUlqHSKU1MpQ6BolH+RR+TEJLbt5xk4jSmMTOQP7FgpK2bWlQ49gh/lPhyvTmGEyH1IwbqI3oBUA7DJAVB8dku0RG1MiiTtYcRBOZOKU4Q/HtRgAMYdMpp615ClEjRM= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from [192.168.198.216] ([79.153.32.189]) by mrelayeu.kundenserver.de (mreue109 [213.165.67.113]) with ESMTPSA (Nemesis) id 1MHX3X-1rJv671KSX-00DbYu; Thu, 11 Jan 2024 21:38:30 +0100 Message-ID: Date: Thu, 11 Jan 2024 21:38:28 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Open MP offloading Content-Language: en-US To: Rheinhardt Matthias , "fortran@gcc.gnu.org" References: From: Tobias Burnus In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Provags-ID: V03:K1:tioHHvxJ2FfnvPl3eL2H9JxnXeEOk37e8dc5r7FFzXZoTxl/hBI a75MwmFvNWWMCz/yyG8Wu7/6cwgcO0ZyFSzrAEgOmjVpKWAqF1WtTdn+BJ2d/mT2I5Qg1dV CBPwXjeW13yI6glgzLlxx63LQOnmFScw/sKHELov/+kCjlNk+OBeEOYYeMCEROyn/mbduEl nETtxa3+2Uf1TOvRe9fKA== UI-OutboundReport: notjunk:1;M01:P0:EZ1WrL3vwbw=;xvg4SWp498uj2tE2YhTQk/UEPG/ 51D8s8wcKrK+P5l+KBoVbuIcym9fbLRSECi0Xi/a4Dd2hKEflxIgGLMjwK732kdPDW4XhbZ6h Y2+ipURLO2+GN6J2mJlHIb/rBw3F16FOWnEhqixdQ8Sk2gFpVtKt4/ROMfDR8vuuouTgecx3J uTjDNeY1OAmXZUp35HAGWYfnASx0jTeprp1Pfu9AvP5FXTyEKlTEupu4cYIPFqnBgH9G+gHgw vGPFI41QyyEXnYybLdZ9I3I2BSuNuH+Cfthf0fKvjTqqYg11UQ1L68/clYt8Bv9DBziNRhLYl tPY63P81w53W4oMyBjBk7DfsN1ZzTlm0C7wxGApNJhkoab2693gZ4gCTTTfmkIPHjz8OQq+TZ A8kH0sJXgsOkvQGffILCDTjVDY8OVUECkvCaeCLhN/pH0May838oTCQxog47nhlNR9eyYHBNV NOjXW4GiiRyXco7D8Nd9ecLSQt5ACRlYRExVEG/Yg6cLLLqHFYUF/XY16W+e4oVEsDuZ4swNB 7MBcPx/e1ENdj7QFyaJSPMDI/8wgcJMuCDm/JfOp3vBXAdfhu8r6nkVVXDe9Q5L0hC7C0Wl4F 1mldvBHw8iO3CwoGCsbGhzRP/JzHWtAMv/loC013VY8wt9N8si/FNLB43nn7i3XAdia7JARcg t5f1odd/BSZrIM8vmpxepShbHvh857eKaPq4s9RkCQgb/tNCe5pd0ndbqQ7EXYSPNrcJMZI9o lasOL5FmfPJyuDM7HrViA2KW5BTv/HBivpBrkyyJhqizZTqZcezl0EEIDfCbh/wfG3uoCkp0p aUFnuXREPJQ6zaj6yjMLr5BTWXNcrKEQ2/b2IA4ndAXPeBr/+7PphJw4GcwKul6YOFkWQGCtF VPqgNC4LdsAfwKg== X-Spam-Status: No, score=-3.8 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi, Rheinhardt Matthias wrote: > at the moment, offloading Open MP workshare section is not supported, > nor can implicit do-loops from expressions with array syntax be delt > with in another way for offloading. Are there any plannings to lift this > restriction, which is rather severe for - in particular scientific - > Fortran codes? I think the real solution is 'coexecute' that can also be used as 'target teams coexecute'. However, 'coexecute' was only added to the second preview of OpenMP (TR/Technical Report 12); thus, it will take a while until it is implemented and even longer until compiler produce optimized code. The first preview of OpenMP 6.0 was released in November 2022, TR12 last November and the final OpenMP 6.0 is expected for this November (2024). The TR12 specification can be found at https://www.openmp.org/specifications/ (as can all other OpenMP versions and also an a separate document with OpenMP examples). * * * With regards to 'workshare', I might miss something but I don't see a reason why: !$omp target ... !$omp workshare !$omp end workshare ... !$omp end target wouldn't work. * * * With regards to GCC's OpenMP implementation status, see http://gcc.gnu.org/projects/gomp/ – some more items have been implemented but still need to be merged (they are in the OG13 / devel/omp/gcc-13 vendor branch) or are already work in progress. GCC 14 is expected to be released in late spring and has currently the following new features: https://gcc.gnu.org/gcc-14/changes.html (release notes not yet fully updated, albeit OpenMP is nearly complete) - note that certain features like memory management (like whether pinning supported etc.) do not show up in the list above as a compliant implementation does not have to support it; those get mentioned in the release notes and more details can be found in the manual. For GCC 15, I hope to see a full support of OpenMP 5.x (x=0,1,2), but essentially no OpenMP 6 features like 'coexecute'. Thanks, Tobias