<?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 There is a Posix Pthreads in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978700#M99192</link>
    <description>There is a Posix Pthreads library available for use with MSVC/Intel-C, but it has, obviously, a CDECL interface. DD will have to weigh the costs of writing interfaces to these for use from Fortran. If any callback functions are going to be passed to the Posix routines, they will have to be CDECL as well.

&lt;A href="http://www.sourceware.org/pthreads-win32/"&gt;Pthreads Library for MSVC&lt;/A&gt;</description>
    <pubDate>Mon, 03 Jun 2013 00:41:00 GMT</pubDate>
    <dc:creator>mecej4</dc:creator>
    <dc:date>2013-06-03T00:41:00Z</dc:date>
    <item>
      <title>POSIX tutorial</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978691#M99183</link>
      <description>&lt;P&gt;Today I'm looking into the POSIX routines, hoping to get multi-processor efficiency.&amp;nbsp; I have the standard documentation for all the library and function calls, but for a beginner I still have a zillion questions.&amp;nbsp; Can anyone point me to a good tutorial on the subject?&amp;nbsp; I'd hate to pester experts with dumb (to them) questions.&lt;/P&gt;
&lt;P&gt;DD&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 01 Jun 2013 18:58:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978691#M99183</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-01T18:58:43Z</dc:date>
    </item>
    <item>
      <title>Are you referring to the</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978692#M99184</link>
      <description>&lt;P&gt;Are you referring to the POSIX thread routines? I'm not aware of a tutorial on those. Use of OpenMP is more popular, or you could try using the compiler's autoparallel feature.&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 00:33:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978692#M99184</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2013-06-02T00:33:51Z</dc:date>
    </item>
    <item>
      <title>Steve:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978693#M99185</link>
      <description>&lt;P&gt;Steve:&lt;/P&gt;
&lt;P&gt;I already use OpenMP, and for some tasks it's great.&amp;nbsp; But now I'm working on a feature that really requires multiprocesses, not multithreads.&amp;nbsp; I found the list of POSIX Library Procedures, and it has lots of features.&amp;nbsp; But, for example, how do I arrange for separate processes to share a block of memory -- for updating data that each should know about?&amp;nbsp; A tutorial would be very helpful here.&amp;nbsp; Can you point me to one?&lt;/P&gt;
&lt;P&gt;DD&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 11:27:50 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978693#M99185</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-02T11:27:50Z</dc:date>
    </item>
    <item>
      <title>You might want to look at MPI</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978694#M99186</link>
      <description>&lt;P&gt;You might want to look at MPI (Message Passing Interface). Intel has a version of MPI (&lt;A href="http://software.intel.com/en-us/intel-mpi-library"&gt;http://software.intel.com/en-us/intel-mpi-library&lt;/A&gt;) and there are other open source versions of MPI (start with &lt;A href="http://www.open-mpi.org/"&gt;http://www.open-mpi.org/&lt;/A&gt;)&lt;/P&gt;
&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 13:34:27 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978694#M99186</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2013-06-02T13:34:27Z</dc:date>
    </item>
    <item>
      <title>Well, that's a step forward -</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978695#M99187</link>
      <description>&lt;P&gt;Well, that's a step forward -- but it seems like overkill.&amp;nbsp; I only need to read and change the values in an array of 10 real numbers.&amp;nbsp; That may be possible using PXFSTRUCTCREATE....&amp;nbsp; Is there a more direct way you can recommend?&lt;/P&gt;
&lt;P&gt;DD&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 13:48:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978695#M99187</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-02T13:48:19Z</dc:date>
    </item>
    <item>
      <title>Now I'm in real trouble.  I</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978696#M99188</link>
      <description>&lt;P&gt;Now I'm in real trouble.&amp;nbsp; I cannot get PXFPIPE, PXFFORK, or PXFWAIT to link.&amp;nbsp; Here are my declarations:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; USE IFPOSIX&lt;BR /&gt;...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTEGER(4) IPID,ISTAT,IERROR,IPID_RET,ISTAT_RET,IREADFD,IWRITEFD,JHANDLE&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL PXFPIPE(IREADFD,IWRITEFD,IERROR)&amp;nbsp;&amp;nbsp; &amp;nbsp;! CREATE PIPE FOR SENDING DATA&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL PXFFORK(IPID,IERROR)&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;! FORK NEW PROCESS HERE&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CALL PXFWAIT(ISTAT,IPID_RET,IERROR)&lt;BR /&gt;&lt;BR /&gt;Error&amp;nbsp;&amp;nbsp; &amp;nbsp;11&amp;nbsp;&amp;nbsp; &amp;nbsp;error LNK2019: unresolved external symbol _PXFPIPE@12 referenced in function _DSEARCH&amp;nbsp;&amp;nbsp; &amp;nbsp;C:\SYNOPSYSV14\SYNOPSYS200_lib_.lib(Automf.obj)&amp;nbsp;&amp;nbsp; &amp;nbsp;SYNOPSYS200&lt;BR /&gt;Error&amp;nbsp;&amp;nbsp; &amp;nbsp;12&amp;nbsp;&amp;nbsp; &amp;nbsp;error LNK2019: unresolved external symbol _PXFFORK@8 referenced in function _DSEARCH&amp;nbsp;&amp;nbsp; &amp;nbsp;C:\SYNOPSYSV14\SYNOPSYS200_lib_.lib(Automf.obj)&amp;nbsp;&amp;nbsp; &amp;nbsp;SYNOPSYS200&lt;BR /&gt;Error&amp;nbsp;&amp;nbsp; &amp;nbsp;13&amp;nbsp;&amp;nbsp; &amp;nbsp;error LNK2019: unresolved external symbol _PXFWAIT@12 referenced in function _DSEARCH&amp;nbsp;&amp;nbsp; &amp;nbsp;C:\SYNOPSYSV14\SYNOPSYS200_lib_.lib(Automf.obj)&amp;nbsp;&amp;nbsp; &amp;nbsp;SYNOPSYS200&lt;BR /&gt;&lt;BR /&gt;What's going on?&lt;/P&gt;
&lt;P&gt;DD&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 14:30:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978696#M99188</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-02T14:30:55Z</dc:date>
    </item>
    <item>
      <title>Do you have the CVF calling</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978697#M99189</link>
      <description>&lt;P&gt;Do you have the CVF calling mechanism option set? Turn it off.&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 17:18:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978697#M99189</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2013-06-02T17:18:39Z</dc:date>
    </item>
    <item>
      <title>Yes.  I have /iface:cvf</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978698#M99190</link>
      <description>&lt;P&gt;Yes.&amp;nbsp; I have /iface:cvf turned on.&amp;nbsp; Have to, or nothing works.&amp;nbsp; This is a huge project ported from CVF.&amp;nbsp; Is there any way to rewrite the calls so they work in my case?&lt;/P&gt;
&lt;P&gt;DD&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 17:29:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978698#M99190</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-02T17:29:43Z</dc:date>
    </item>
    <item>
      <title>Oh, I see. The routines you</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978699#M99191</link>
      <description>&lt;P&gt;Oh, I see. The routines you want to use aren't supported on Windows. Sorry.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;I see the documentation doesn't mention that they are Linux/OS X only. I will ask that this be corrected.&lt;/P&gt;
&lt;P&gt;You could use Windows API threads.&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jun 2013 22:46:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978699#M99191</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2013-06-02T22:46:52Z</dc:date>
    </item>
    <item>
      <title>There is a Posix Pthreads</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978700#M99192</link>
      <description>There is a Posix Pthreads library available for use with MSVC/Intel-C, but it has, obviously, a CDECL interface. DD will have to weigh the costs of writing interfaces to these for use from Fortran. If any callback functions are going to be passed to the Posix routines, they will have to be CDECL as well.

&lt;A href="http://www.sourceware.org/pthreads-win32/"&gt;Pthreads Library for MSVC&lt;/A&gt;</description>
      <pubDate>Mon, 03 Jun 2013 00:41:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978700#M99192</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2013-06-03T00:41:00Z</dc:date>
    </item>
    <item>
      <title>Ugggh... this doesn't look</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978701#M99193</link>
      <description>&lt;P&gt;Ugggh... this doesn't look good.&amp;nbsp; Thanks, everyone, for clearing up the fog.&amp;nbsp; I'll study the API approach.&amp;nbsp; Grrrr.&lt;/P&gt;
&lt;P&gt;DD&lt;/P&gt;</description>
      <pubDate>Mon, 03 Jun 2013 11:56:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978701#M99193</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-03T11:56:01Z</dc:date>
    </item>
    <item>
      <title>Do you really wish to develop</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978702#M99194</link>
      <description>&lt;P&gt;Do you really wish to develop, in the year 2013, code tied to STDCALL conventions? Have you noted that if, down the road, you wish to move to x64 code, you will have to redo much of what you are now doing?&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Writing to the Pthreads API will give you better portability to Linux. Writing to the Windows threads API will let you target 32- or 64-bit Windows only, but may give you slightly better performance than with Pthreads.&lt;/P&gt;</description>
      <pubDate>Mon, 03 Jun 2013 14:04:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978702#M99194</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2013-06-03T14:04:33Z</dc:date>
    </item>
    <item>
      <title>The documentation does</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978703#M99195</link>
      <description>&lt;P&gt;The documentation does indicate that PXFFORK and PXFWAIT are supported on Linux and OS X only. But PXFPIPE is not so noted. I also found PXFLINK and PXFSIGACTION missing this notation. I have found some other errors in the POSIX routine documenattion and have notified our writers.&lt;/P&gt;</description>
      <pubDate>Mon, 03 Jun 2013 16:13:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978703#M99195</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2013-06-03T16:13:13Z</dc:date>
    </item>
    <item>
      <title>Quote:mecej4 wrote:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978704#M99196</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;mecej4 wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Do you really wish to develop, in the year 2013, code tied to STDCALL conventions? Have you noted that if, down the road, you wish to move to x64 code, you will have to redo much of what you are now doing?&lt;/P&gt;
&lt;P&gt;Writing to the Pthreads API will give you better portability to Linux. Writing to the Windows threads API will let you target 32- or 64-bit Windows only, but may give you slightly better performance than with Pthreads.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Thank you for your cogent question, mecej4 -- and if I were starting today I would certainly use modern tools and protocols.&amp;nbsp; But what would you do if you were maintaining and developing a huge code that started in 1962, first on vacuum tubes, and over the years migrated to Honeywell mainframes, IBM minicomputers, CDC mainframes, Unix, DOS, and then Windows about 15 years ago?&amp;nbsp; Would you re-write thousands of subroutines, weeding out all the legacy code and obsolete calling conventions?&amp;nbsp; The program works as it is now, and any major overhaul would take months of effort and would introduce countless new bugs.&amp;nbsp; It ain't broke, so I don't want to fix it.&lt;/P&gt;
&lt;P&gt;But I do want to enhance the speed by a factor of 2 to 10, and this requires farming out a group of very time-consuming calculations to separate processes.&amp;nbsp; Logically it would be quite simple.&amp;nbsp; But Windows apparently does not support the fork() feature found on Unix.&amp;nbsp; I was hoping there was an efficient way to do just that.&amp;nbsp; Looks like there isn't.&amp;nbsp; Oh, well.&amp;nbsp; Thank you for the comment, anyway.&lt;/P&gt;
&lt;P&gt;DD&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 03 Jun 2013 16:46:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978704#M99196</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-03T16:46:39Z</dc:date>
    </item>
    <item>
      <title>Today I have interesting</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978705#M99197</link>
      <description>&lt;P&gt;Today I have interesting results.&amp;nbsp; Since there is no fork() option on Win32, I&amp;nbsp; tried the spawnl() function in C++ instead, called by a Fortran routine.&amp;nbsp; It works, the new process starts, and I send a command argument that tells the new process to look in a named file for all of the initializations that it needs in order to start up where the parent process did the spawn.&amp;nbsp; It's not all that much work, and it runs just fine.&amp;nbsp; Most of the time.&lt;/P&gt;
&lt;P&gt;And there's the rub.&amp;nbsp; The processes call many subroutines, some of which read and write disk files, and if it ever happens that two processes want the same access at the same time, I either get a crash or incorrect data.&amp;nbsp; So .... Is there any way you can think of whereby I can tell a process to wait for a few milliseconds because a different process is accessing a resource?&amp;nbsp; Since there is no PIPE in my emulation, it's hard to implement inter-process communication.&lt;/P&gt;
&lt;P&gt;Any ideas?&lt;/P&gt;
&lt;P&gt;DD&lt;/P&gt;</description>
      <pubDate>Fri, 07 Jun 2013 20:34:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978705#M99197</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-07T20:34:21Z</dc:date>
    </item>
    <item>
      <title>You probably need to add</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978706#M99198</link>
      <description>&lt;P&gt;You probably need to add mutexes to synchronize access to the files. Windows treatment of shared ordinary files isn't all that good. You may also want to consider the use of a shared global variable in a DLL - see the sample DLL_Shared_Data for ideas.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 08 Jun 2013 13:06:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978706#M99198</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2013-06-08T13:06:38Z</dc:date>
    </item>
    <item>
      <title>Quote:DonDilworth wrote:Is</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978707#M99199</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;DonDilworth wrote:&lt;BR /&gt;Is there any way you can think of whereby I can tell a process to wait for a few milliseconds...&lt;/BLOCKQUOTE&gt;There are various "sleep.." functions available, but I doubt that you should think in terms of time rather than a sequence of events that should occur. You can use mutexes, semaphores, etc., as Steve already suggested. Another way, which is simpler, &amp;nbsp;if it can be used&amp;nbsp;&amp;nbsp;in your application, is to have the main thread make all decisions as to when to read or write files and calling other threads.&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 08 Jun 2013 14:09:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978707#M99199</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2013-06-08T14:09:00Z</dc:date>
    </item>
    <item>
      <title>Remember, these are not</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978708#M99200</link>
      <description>&lt;P&gt;Remember, these are not &lt;EM&gt;threads&lt;/EM&gt;, they are different &lt;EM&gt;processes&lt;/EM&gt;.&amp;nbsp; So the tools are different.&lt;/P&gt;
&lt;P&gt;Here's an idea I am trying now:&amp;nbsp; Subroutine A wants to open and read from file 23.&amp;nbsp; Subroutine B may have that open at the moment.&amp;nbsp; So in A, I have&lt;/P&gt;
&lt;P&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLOSE (23,ERR=10)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OPEN (23)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (Use this file)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLOSE(23)...&lt;/P&gt;
&lt;P&gt;If the file is currently open in a different process, the first CLOSE will fail.&amp;nbsp; So it keeps trying until it works (subroutine B closes it when finished).&amp;nbsp; Is there anything wrong with this trick?&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 08 Jun 2013 16:49:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978708#M99200</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-08T16:49:18Z</dc:date>
    </item>
    <item>
      <title>Quote:DonDilworth wrote:10   </title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978709#M99201</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;DonDilworth wrote:&lt;BR /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLOSE (23,ERR=10)&lt;/BLOCKQUOTE&gt; This is, in effect, a "polling loop". Depending upon what else is going on on the computer on which this statement is part of just one process, it could eat up lots of CPU time with little output for the resources consumed. There are many discussions available concerning the tradeoffs between interrupt (or event) driven I/O versus program loop I/O.&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 08 Jun 2013 17:31:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978709#M99201</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2013-06-08T17:31:30Z</dc:date>
    </item>
    <item>
      <title>The tradeoff here is pretty</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978710#M99202</link>
      <description>&lt;P&gt;The tradeoff here is pretty simple: most of the cores are idle most of the time.&amp;nbsp; I spawn to some cores to do a job that might run for an hour.&amp;nbsp; If a given core has to spin for a few milliseconds now and then, it's not an issue.&amp;nbsp; And the code is very simple.&lt;/P&gt;
&lt;P&gt;But now I have a new question:&amp;nbsp; in my spawn() call, I need the full path to the exe code.&amp;nbsp; Is there any way for the program to know what that path is?&amp;nbsp; I don't want to hard-code it, since installations can vary.&amp;nbsp; What kind of system calls will tell me that path?&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 08 Jun 2013 20:28:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/POSIX-tutorial/m-p/978710#M99202</guid>
      <dc:creator>dondilworth</dc:creator>
      <dc:date>2013-06-08T20:28:44Z</dc:date>
    </item>
  </channel>
</rss>

