<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic The following workaround may in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945737#M14873</link>
    <description>&lt;P&gt;The following workaround may help if you use a compiler supporting BIND statement. Firstly,&amp;nbsp;the Fortran program should&amp;nbsp;declare its use of the global structure declared in file mkl/include/fftw/fftw3_mkl.h, like this:&lt;/P&gt;
&lt;P&gt;[fortran]&lt;BR /&gt;common/fftw3_mkl/ignore(4),number_of_user_threads&lt;BR /&gt; integer*4 :: ignore, number_of_user_threads&lt;BR /&gt; bind (c) :: /fftw3_mkl/&lt;BR /&gt;[/fortran]&lt;/P&gt;
&lt;P&gt;Secondly, the number of&amp;nbsp;threads that are supposed to share concurrently an FFTW plan should be set *before* the plan is created with any of *fftw_plan_* functions:&lt;/P&gt;
&lt;P&gt;[fortran]&lt;BR /&gt;number_of_user_threads = nthreads&lt;BR /&gt;call dfftw_plan_dft(fft, ...)&lt;BR /&gt;[/fortran]&lt;/P&gt;
&lt;P&gt;Please let me know if this helps.&lt;/P&gt;
&lt;P&gt;Thanks&lt;BR /&gt;Dima&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 06 May 2013 08:50:07 GMT</pubDate>
    <dc:creator>Dmitry_B_Intel</dc:creator>
    <dc:date>2013-05-06T08:50:07Z</dc:date>
    <item>
      <title>Calls using FFTW wrapper don't seem to be thread safe</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945735#M14871</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I am attempting to add an OpenMP layer of parallelism into an MPI code writtten in Fortran. However, I am not doing this correctly as it does not appear to be thread safe. I can say this with some confidence as adding an !$OMP CRITICAL region around the library call results in a correct answer. I believe that this is a result of the FFTW wrappers.&lt;/P&gt;
&lt;P&gt;Having looked at the MKL documentation I see a mention of "fftw3_mkl.number_of_user_threads", I imagine that this would resolve the issue but I haven't been able to implement it sucuessfully. Is there any chance anyone has a working sample code (written in Fortran) that shows the correct use of this object?&lt;/P&gt;
&lt;P&gt;To clarify: I am attempting to execute iterations of a loop that contains calls to the FFT routines in parallel, this is essentially serial FFTs in parallel. I realise that there is an argument for using parallel FFTs here but that would require a substantially larger coding effort given the code surrounding the FFT library calls. That will be my next job.&lt;/P&gt;
&lt;P&gt;Many thanks,&lt;/P&gt;
&lt;P&gt;Karl&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2013 10:54:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945735#M14871</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2013-05-01T10:54:15Z</dc:date>
    </item>
    <item>
      <title>I noticed the same problem</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945736#M14872</link>
      <description>&lt;P&gt;I noticed the same problem and have attached a simple program demonstrating it. When linked with FFTW, there are no problems. When linked with MKL and compiled with -fpe0, the program crashes with a floating overflow error. I've tried ifort versions 11.1.073 and 13.0.1 running on Linux x86_64.&lt;/P&gt;</description>
      <pubDate>Wed, 01 May 2013 18:50:28 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945736#M14872</guid>
      <dc:creator>hawkins9</dc:creator>
      <dc:date>2013-05-01T18:50:28Z</dc:date>
    </item>
    <item>
      <title>The following workaround may</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945737#M14873</link>
      <description>&lt;P&gt;The following workaround may help if you use a compiler supporting BIND statement. Firstly,&amp;nbsp;the Fortran program should&amp;nbsp;declare its use of the global structure declared in file mkl/include/fftw/fftw3_mkl.h, like this:&lt;/P&gt;
&lt;P&gt;[fortran]&lt;BR /&gt;common/fftw3_mkl/ignore(4),number_of_user_threads&lt;BR /&gt; integer*4 :: ignore, number_of_user_threads&lt;BR /&gt; bind (c) :: /fftw3_mkl/&lt;BR /&gt;[/fortran]&lt;/P&gt;
&lt;P&gt;Secondly, the number of&amp;nbsp;threads that are supposed to share concurrently an FFTW plan should be set *before* the plan is created with any of *fftw_plan_* functions:&lt;/P&gt;
&lt;P&gt;[fortran]&lt;BR /&gt;number_of_user_threads = nthreads&lt;BR /&gt;call dfftw_plan_dft(fft, ...)&lt;BR /&gt;[/fortran]&lt;/P&gt;
&lt;P&gt;Please let me know if this helps.&lt;/P&gt;
&lt;P&gt;Thanks&lt;BR /&gt;Dima&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 06 May 2013 08:50:07 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945737#M14873</guid>
      <dc:creator>Dmitry_B_Intel</dc:creator>
      <dc:date>2013-05-06T08:50:07Z</dc:date>
    </item>
    <item>
      <title>Thanks for the response. The</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945738#M14874</link>
      <description>&lt;P&gt;Thanks for the response. The workaround solves the immediate problem. It remains that an FFTW user who counts on the &lt;A href="http://www.fftw.org/doc/Thread-safety.html"&gt;thread-safety of the fftw_execute function&lt;/A&gt;&amp;nbsp;and reads the&amp;nbsp;statement from the MKL &lt;A href="http://software.intel.com/sites/products/documentation/hpc/mkl/mklman/GUID-A23603DA-B6D1-48AA-90D2-A415302F27D9.htm"&gt;documentation&lt;/A&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;The only change required to use Intel MKL through the FFTW3 wrappers is to link your application using FFTW3 against Intel MKL&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;is in for a surprise. &amp;nbsp;Deeper in the docs I do see the thread safety caveat, though it lacks instructions for Fortran.&lt;/P&gt;
&lt;P&gt;In my case I was actually totally ignorant of the MKL FFTW interface but happened to put MKL before FFTW on my link line and ended up spending a lot of time trying to figure out why my program was crashing. &amp;nbsp;Eventually I figured out I was using MKL and just changed my link order. &amp;nbsp;It would be great if the MKL FFTW interface included both the syntax and semantics of FFTW.&lt;/P&gt;</description>
      <pubDate>Mon, 06 May 2013 19:20:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945738#M14874</guid>
      <dc:creator>hawkins9</dc:creator>
      <dc:date>2013-05-06T19:20:06Z</dc:date>
    </item>
    <item>
      <title>Thank you very much for your</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945739#M14875</link>
      <description>&lt;P&gt;Thank you very much for your comments. We will respond to them in a future release of MKL.&lt;/P&gt;
&lt;P&gt;Dima&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 07 May 2013 04:10:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945739#M14875</guid>
      <dc:creator>Dmitry_B_Intel</dc:creator>
      <dc:date>2013-05-07T04:10:38Z</dc:date>
    </item>
    <item>
      <title>Dear Dmitry,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945740#M14876</link>
      <description>&lt;P&gt;Dear Dmitry,&lt;/P&gt;
&lt;P&gt;I was wondering if you could give me some feedback regarding progress on this issue? We have implemented the workaround detailed above but see the followng error when compilng for MIC:&lt;/P&gt;
&lt;P&gt;x86_64-k1om-linux-ld: Warning: alignment 8 of symbol `fftw3_mkl' in /local/software/intel/2013.2.146/composer_xe_2013.2.146/mkl/lib/mic/libmkl_intel_lp64.so is smaller than 32 in fourier_mod.o&lt;/P&gt;
&lt;P&gt;Many thanks,&lt;/P&gt;
&lt;P&gt;Karl&lt;/P&gt;</description>
      <pubDate>Fri, 14 Jun 2013 10:24:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945740#M14876</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2013-06-14T10:24:51Z</dc:date>
    </item>
    <item>
      <title>Hi Karl,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945741#M14877</link>
      <description>&lt;P&gt;Hi Karl,&lt;/P&gt;
&lt;P&gt;Implementation of the fix is in progress. The warning that linker issues is annoying, I agree. The appication shall work nevertheless, because assignment to an integer*4 needs an alignment of multiple of 4, which both 8 and 32 have. For Intel compiler, the following should remove this warning, and the warning about the different size of the symbol:&lt;/P&gt;
&lt;P&gt;!dec$ attributes align : 8 :: fftw3_mkl&lt;BR /&gt;common/fftw3_mkl/ignore(4),number_of_user_threads,ignore2(7)&lt;BR /&gt;integer*4 :: ignore, number_of_user_threads, ignore2&lt;BR /&gt;bind (c) :: /fftw3_mkl/&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;Dima&lt;/P&gt;</description>
      <pubDate>Fri, 14 Jun 2013 11:26:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945741#M14877</guid>
      <dc:creator>Dmitry_B_Intel</dc:creator>
      <dc:date>2013-06-14T11:26:04Z</dc:date>
    </item>
    <item>
      <title>I see, I misunderstood the</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945742#M14878</link>
      <description>&lt;P&gt;I see, I misunderstood the nature of the error but that makes things a lot clearer. Thank you for your help.&lt;/P&gt;</description>
      <pubDate>Fri, 14 Jun 2013 11:32:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945742#M14878</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2013-06-14T11:32:23Z</dc:date>
    </item>
    <item>
      <title>I thought I would put this</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945743#M14879</link>
      <description>&lt;P&gt;I thought I would put this here rather than create a new thread:&lt;/P&gt;

&lt;P&gt;I've reached the point where I am trying to call threaded FFTs from multiple OpenMP threads, unfortunately it is not working. Both levels of parallelism work independently of the other and give a noticeable increase in performance but when combining the two the "normal" OpenMP code works in a nested fashion but the FFTs appear to execute sequentially, giving performance similar to the code when only the upper level of parallelism is used.&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;I am creating a stripped down code at the moment and will post it once finished if necessary.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Many thanks,&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;Karl&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 02 May 2014 14:01:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945743#M14879</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2014-05-02T14:01:00Z</dc:date>
    </item>
    <item>
      <title>Hi Karl,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945744#M14880</link>
      <description>&lt;P&gt;Hi Karl,&lt;/P&gt;

&lt;P&gt;To enable nested OpenMP parallelism in MKL, environment variable MKL_DYNAMIC should be set to FALSE, or equivalently a call of mkl_set_dynamic(0) should be made, otherwise MKL will not go parallel inside when called from an omp parallel region. And OpenMP runtime itself should be enabled to do nested parallelism (OMP_NESTED=true or omp_set_nested(1)).&lt;/P&gt;

&lt;P&gt;If that does not work, please give more details.&lt;/P&gt;

&lt;P&gt;Thanks&lt;BR /&gt;
	Dima&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 05 May 2014 03:27:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945744#M14880</guid>
      <dc:creator>Dmitry_B_Intel</dc:creator>
      <dc:date>2014-05-05T03:27:43Z</dc:date>
    </item>
    <item>
      <title>Hi Dima,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945745#M14881</link>
      <description>&lt;P&gt;Hi Dima,&lt;/P&gt;

&lt;P&gt;That did the trick, thank you very much!&lt;/P&gt;

&lt;P&gt;Cheers,&lt;/P&gt;

&lt;P&gt;Karl&lt;/P&gt;</description>
      <pubDate>Tue, 06 May 2014 10:02:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945745#M14881</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2014-05-06T10:02:05Z</dc:date>
    </item>
    <item>
      <title>Hi Dima,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945746#M14882</link>
      <description>&lt;P&gt;Hi Dima,&lt;/P&gt;

&lt;P&gt;Do you know if there is a particular reason this wouldn't work on a Xeon Phi? I haven't looked at it in great detail yet but an initial test with a native Phi binary didn't work. I've been told by a colleague that parallel FFTs on the Phi are not currently supported so I just wanted to quickly confirm this before pushing any further.&lt;/P&gt;

&lt;P&gt;All the best,&lt;/P&gt;

&lt;P&gt;Karl&lt;/P&gt;</description>
      <pubDate>Fri, 09 May 2014 08:37:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945746#M14882</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2014-05-09T08:37:20Z</dc:date>
    </item>
    <item>
      <title>Dear Karl,A priori your code</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945747#M14883</link>
      <description>&lt;P&gt;Dear Karl,&lt;/P&gt;
&lt;P&gt;A priori your code should work just find on Xeon Phi. MKL supports parallel FFTs on Xeon Phi :)&lt;/P&gt;
&lt;P&gt;Should you have further questions, please provide us with a build/link line and sample code that behaves unexpectedly.&lt;/P&gt;
&lt;P&gt;Thank you.&lt;/P&gt;
&lt;P&gt;Evgueni.&lt;/P&gt;</description>
      <pubDate>Mon, 12 May 2014 04:44:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945747#M14883</guid>
      <dc:creator>Evgueni_P_Intel</dc:creator>
      <dc:date>2014-05-12T04:44:03Z</dc:date>
    </item>
    <item>
      <title>Dear Evgueni,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945748#M14884</link>
      <description>&lt;P&gt;Dear Evgueni,&lt;/P&gt;

&lt;P&gt;Thanks for the note, I'll spend a bit more time working on it and get back to you soon. I'll also tell my colleague he needs to try harder!&lt;/P&gt;

&lt;P&gt;All the best,&lt;/P&gt;

&lt;P&gt;Karl&lt;/P&gt;</description>
      <pubDate>Mon, 12 May 2014 11:44:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945748#M14884</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2014-05-12T11:44:43Z</dc:date>
    </item>
    <item>
      <title>Dear Evgueni,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945749#M14885</link>
      <description>&lt;P&gt;Dear Evgueni,&lt;/P&gt;

&lt;P&gt;I'm afraid I haven't been able to get this to work and I'm struggling to create a test case.&lt;/P&gt;

&lt;P&gt;I just want to confirm that the problem I am seeing is that parallel FFTs work on the Phi when called from a serial region, but not from a parallel region, even when the advice given above is followed. The code does work as expected on a normal processor, although not on all machines.&lt;/P&gt;

&lt;P&gt;I will continue to work on a test case but any other advice you may have in the meantime will be gratefully received.&lt;/P&gt;

&lt;P&gt;All the best,&lt;/P&gt;

&lt;P&gt;Karl&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 19 May 2014 12:36:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945749#M14885</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2014-05-19T12:36:42Z</dc:date>
    </item>
    <item>
      <title>Dear Karl,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945750#M14886</link>
      <description>&lt;P&gt;Dear Karl,&lt;/P&gt;

&lt;P&gt;The MKL FFTW3 wrappers are built from the source code in mkl/interfaces/fftw3xf on both Xeon and Xeon Phi.&lt;/P&gt;

&lt;P&gt;The MKL FFTW3 wrappers are expected to behave identically on Xeon and on Xeon Phi (native execution.)&lt;/P&gt;

&lt;P&gt;Thank you.&lt;/P&gt;

&lt;P&gt;Evgueni.&lt;/P&gt;</description>
      <pubDate>Tue, 20 May 2014 13:37:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945750#M14886</guid>
      <dc:creator>Evgueni_P_Intel</dc:creator>
      <dc:date>2014-05-20T13:37:19Z</dc:date>
    </item>
    <item>
      <title>Dear Evgueni and Dima,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945751#M14887</link>
      <description>&lt;P&gt;Dear Evgueni and Dima,&lt;/P&gt;

&lt;P&gt;I have managed to see some good scaling in my nested OpenMP code using the following environment variables :D&lt;/P&gt;

&lt;P&gt;Essentially it came down to the affinity of the threads. Unfortunately none of the standard affinities give satisfactory performance on a Phi and I had to resort to using proclist. As you can see this ended up quite messy. Would it be possible to request a format such as "n,scattered,m,subcompact" that would automatically generate such affinities?&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;export OMP_NUM_THREADS=8
export I_MPI_PIN_DOMAIN=omp
export KMP_AFFINITY="VERBOSE,granularity=fine,proclist=[0,1,2,3,4,5,6,7],explicit"
mpirun -np 4 ../../bin/onetep.iridis4.mic onetep_8loop_1data.dat &amp;gt; manual_4mpi_8loop_1data.out

export OMP_NUM_THREADS=16
export KMP_AFFINITY="VERBOSE,granularity=fine,proclist=[0,2,4,6,8,10,12,14,1,3,5,7,9,11,13],explicit"
mpirun -np 4 ../../bin/onetep.iridis4.mic onetep_8loop_2data.dat &amp;gt; manual_4mpi_8loop_2data.out

export OMP_NUM_THREADS=32
export KMP_AFFINITY="VERBOSE,granularity=fine,proclist=[0,4,8,12,16,20,24,28,1,2,3,5,6,7,9,10,11,13,14,15,17,18,19,21,22,23,25,26,27,29,30,31],explicit"
mpirun -np 4 ../../bin/onetep.iridis4.mic onetep_8loop_4data.dat &amp;gt; manual_4mpi_8loop_4data.out&lt;/PRE&gt;

&lt;P&gt;Any comments you may have to improve performance here would be gratefully received.&lt;/P&gt;

&lt;P&gt;All the best and thank you for your help,&lt;/P&gt;

&lt;P&gt;Karl&lt;/P&gt;</description>
      <pubDate>Wed, 28 May 2014 15:37:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945751#M14887</guid>
      <dc:creator>Karl_W_2</dc:creator>
      <dc:date>2014-05-28T15:37:09Z</dc:date>
    </item>
    <item>
      <title>Dear Karl,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945752#M14888</link>
      <description>&lt;P&gt;Dear Karl,&lt;/P&gt;

&lt;P&gt;In theory, the affinity for OMP_NUM_THREADS=8 is equivalent to verbose,compact.&lt;/P&gt;

&lt;P&gt;The affinity for OMP_NUM_THREADS=16 lists only 15 CPUs -- this is&amp;nbsp;likely an error.&lt;/P&gt;

&lt;P&gt;Such irregular affinities may indicate data alignment issues.&lt;/P&gt;

&lt;P&gt;What rank and dimension(s) of the FFTs are you doing?&lt;/P&gt;

&lt;P&gt;Thank you.&lt;/P&gt;

&lt;P&gt;Evgueni.&lt;/P&gt;</description>
      <pubDate>Mon, 02 Jun 2014 05:43:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Calls-using-FFTW-wrapper-don-t-seem-to-be-thread-safe/m-p/945752#M14888</guid>
      <dc:creator>Evgueni_P_Intel</dc:creator>
      <dc:date>2014-06-02T05:43:00Z</dc:date>
    </item>
  </channel>
</rss>

