- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Wednesday August 30th
9:00am US PDT
Townhall with the Intel® Fortran Compiler Developers
You have heard all about The Next Chapter for the Intel® Fortran Compiler. Now it’s your turn to give us your feedback on our compiler in this townhall webinar with the developers behind the Intel® Fortran Compiler. We will have a short preview of what is coming in version 2024.0. And we will show off our new uninitialized memory checking feature in our Linux* compiler version 2023.2.0. But the real focus of this meeting is to give you a chance get your questions answered. Bring your questions, bring your suggestions, and we look forward to a sharing the latest information on our Fortran compiler.
Click here to watch the replay on demand. Other webinars are also listed there that you may find interesting.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This sounds really interesting! Do you know if it will be recorded for on-demand viewing?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
A recording would be great. This is at 02:00 on the east coast of Australia.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, the same applies to Japan @ 1am JST, it would be nice to view the recording afterwards.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Likewise for Europe ;). Less awkward, perhaps, still not very practical.
But aside from that, could you refer to the time of this and future events also in UTC? Then people around the world will only have to convert from one fixed timezone to their own. Timezones and their abbreviations may be standardised, but that does not mean that they are unequivocal or that people have them memorised.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, it will be recorded. BUT to watch the recording you need to register for the webinar. You will later get an email when the recording is available and how to watch it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I registered for this when it was announced, never got confirmation nor day-of notice. I tried again - nothing. Have others received their link?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oh, no! Ron says that this is a new webinar platform. Wonder if that's the problem.
There were over 100 people on the live webinar.
Ron says a link to the recording will be posted here when it's available.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'm sorry to have missed it - was looking forward to it. The link will be appreciated when available.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We'll follow up and see if there was some sort of glitch in the registration/notification process. the Webinar was part of Tech Decoded and the recording should show up there soon. we will create a new post with the link to the recording.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The replay of the Fortran Townhall webinar is now available. Click here. Other webinars are also listed there that you may find interesting.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Having watched the video, it was good to get a brief historical context on the ifort --> ifx transition. The hands-on demo about sanitizers (uninitialised memory) was informative - I wasn't aware of these new capabilities. Plus the enhanced "do concurrent" (Fortran 2023 standard is coming soon) with OpenMP directives and off-load - learnt some new things. Thank you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This begs the question: what is the difference between the enhanced do concurrent and an OpenMP parallel do? For the 1D case (i.e. i = 1:N, no other indexes) there does not seem to be much difference now. Perhaps things get more complicated in higher dimensions.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
DO CONCURRENT is part of the Fortran standard, OpenMP is not. DO CONCURRENT does not require parallelism and does not have as fine-grained controls as OMP PARALLEL DO. Its features are modeled after OpenMP, however.
Note that with Intel Fortran DO CONCURRENT doesn't parallelize unless you have asked for parallelization on the command line.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
"Note that with Intel Fortran DO CONCURRENT doesn't parallelize unless you have asked for parallelization on the command line."
Yes, that's true for the ifort which needs the flag "-parallel". The ifx, on the other hand, parallelises DO CONCURRENT by default. It seems the lines are getting blurred between DO CONCURRENT and the OMP PARALLEL DO.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@jvo203, regarding your statement "ifx, on the other hand, parallelises DO CONCURRENT by default." I can't duplicate that. Do you have a reproducer?
On Linux I used ldd to confirm the libraries that are required at runtime. libiomp5.so is the library required for OpenMP. I only see that library when I compile/link with the -qopenmp compiler option.
+ ifx test_doconcurrent.f90
+ a.out
sumc = 300,000 = 300000.0
+ ldd a.out
linux-vdso.so.1 (0x00007ffef43d1000)
libimf.so => /nfs/pdx/disks/cts2/tools/oneapi/2023.2.0/compiler/2023.2.0/linux/compiler/lib/intel64_lin/libimf.so (0x00007f8b8d660000)
libm.so.6 => /lib64/libm.so.6 (0x00007f8b8d563000)
libc.so.6 => /lib64/libc.so.6 (0x00007f8b8d385000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f8b8d35f000)
libintlc.so.5 => /nfs/pdx/disks/cts2/tools/oneapi/2023.2.0/compiler/2023.2.0/linux/compiler/lib/intel64_lin/libintlc.so.5 (0x00007f8b8d2e7000)
/lib64/ld-linux-x86-64.so.2 (0x00007f8b8da4c000)
+ ifx -qopenmp test_doconcurrent.f90
+ a.out
sumc = 300,000 = 300000.0
+ ldd a.out
linux-vdso.so.1 (0x00007ffd7f9d3000)
libimf.so => /nfs/pdx/disks/cts2/tools/oneapi/2023.2.0/compiler/2023.2.0/linux/compiler/lib/intel64_lin/libimf.so (0x00007f7bce310000)
libm.so.6 => /lib64/libm.so.6 (0x00007f7bce213000)
libiomp5.so => /nfs/pdx/disks/cts2/tools/oneapi/2023.2.0/compiler/2023.2.0/linux/compiler/lib/intel64_lin/libiomp5.so (0x00007f7bcdc00000)
libc.so.6 => /lib64/libc.so.6 (0x00007f7bcda22000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f7bce1ed000)
libintlc.so.5 => /nfs/pdx/disks/cts2/tools/oneapi/2023.2.0/compiler/2023.2.0/linux/compiler/lib/intel64_lin/libintlc.so.5 (0x00007f7bce175000)
/lib64/ld-linux-x86-64.so.2 (0x00007f7bce6fc000)
librt.so.1 => /lib64/librt.so.1 (0x00007f7bce170000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7bce16b000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f7bce166000)
Note: -parallel is not supported with ifx.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Barbara, yes the sample reproducer is included in my bug report about OpenMP nested parallelism and DO CONCURRENT. Please see the code and a lively discussion here: community.intel.com/t5/Intel-Fortran-Compiler/ifx-OpenMP-compilation-segmentation-fault/m-p/1512952#M167649
Yes, my Makefile uses "-qopenmp" by default. With "-qopenmp" the DO CONCURRENT seems to get auto-parallelised by the ifx (and yes, the "-parallel" flag got axed in ifx).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ah! I remember that topic. Ron is on top of that one, nested parallelism. That's a different issue than what you wrote here.
With a straight DO CONCURRENT, no nesting within !$OMP, -qopenmp is required for parallelism.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have a question about the DO CONCURRENT example from the "Town Hall".
The example is a very simple loop, (from memory):
DO CONCURRENT (i = 1:N) shared (a,b,c)
c(i) = a(i) + b(i)
end do
My question relates to the overhead of implementing this loop and the lack of computation per cycle. Basically this loop could never be practical in !$OMP DO PARALLEL, where
For small N : can never overcome the startup overhead of about 20,000 processor cycles
For large N : memory bandwidth is not sufficient to improve computation speed. (memory bandwidth would kill any similar loop!)
Would this DO CONCURRENT example of off-loading ever achieve a performance advantaged ?
What is an estimate of the startup overhead in processor cycles ?
If the answer is similar to achieving a practical OpenMP example, how do you scale up the computation per cycle, given possible limitations on what can be included in a DO C.. loop ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
For the small amount of compute in that vector add loop, the overhead to offload the data will likely negate any performance improvement. The more compute you can do on the offloaded data, the better.
With OpenMP directives you have control over what data you move back to the host at the end of the compute kernel. I don't see that with DO CONCURRENT. Depending on the application that can make a performance difference.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
My impression of "DO CONCURRENT" is that with it's "pure" limitations, it is positioned to do a small amount of compute in each loop itteration.
Not really the type of loop for OpenMP, except for examples ?
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page