<?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 passing strings to MKL in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/passing-strings-to-MKL/m-p/778344#M1247</link>
    <description>Note that CVF/DVF used a calling convention for character arguments that is different from that used by Intel Fortran: the hidden string lengths are passed immediately after each character argument in CVF/DVF; in Intel Fortran, all the lengths are appended to the end of the explicit argument list.&lt;BR /&gt;&lt;BR /&gt;I suspect that, since STDCALL name decoration is used and you use the Lahey compiler, you have modified the source code by adding DLLIMPORT directives. That is one way to do things, but you may have to remove those directives if you want to use the Intel compiler.&lt;BR /&gt;&lt;BR /&gt;Read about the /iface: mixed_str_len_arg to /iface:nomixed_str_len_arg options of the Intel compiler.&lt;BR /&gt;</description>
    <pubDate>Mon, 19 Jul 2010 19:18:29 GMT</pubDate>
    <dc:creator>mecej4</dc:creator>
    <dc:date>2010-07-19T19:18:29Z</dc:date>
    <item>
      <title>passing strings to MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/passing-strings-to-MKL/m-p/778342#M1245</link>
      <description>&lt;P&gt;The MKL routines that accept a string seem to expect more parametersthan the documentation shows. As I understand it _DGESDD@60 would imply 60 bytes are passed, but only 56 are documented.&lt;/P&gt;&lt;P&gt;I'm missing something.&lt;/P&gt;&lt;P&gt;The Lahey compiler expects a 32 bit integer to be passed by value after the argument list to indicate the length of a string when called from another language. Does MKL expect something like that?&lt;BR /&gt;&lt;BR /&gt;I'm using MKL in a Windows DLL. Calls that do not pass strings work fine.&lt;/P&gt;</description>
      <pubDate>Sat, 17 Jul 2010 23:34:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/passing-strings-to-MKL/m-p/778342#M1245</guid>
      <dc:creator>Paul_Calvert</dc:creator>
      <dc:date>2010-07-17T23:34:46Z</dc:date>
    </item>
    <item>
      <title>passing strings to MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/passing-strings-to-MKL/m-p/778343#M1246</link>
      <description>It expects integer (4-byte unsigned). This is just Fortran requirenment, to pass length of the string, as hidden argument, by default.&lt;BR /&gt;&lt;BR /&gt;here you have some discussion on &lt;A href="http://msdn.microsoft.com/en-us/library/aa236488%28VS.60%29.aspx"&gt;that on MSDN&lt;/A&gt; and &lt;A href="http://www.intel.com/software/products/compilers/flin/docs/main_for/mergedprojects/bldaps_for/pgwchars.htm"&gt;Intel&lt;/A&gt;. You can also use BIND options to improve interoperability with C.&lt;BR /&gt;&lt;BR /&gt;A.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Sun, 18 Jul 2010 06:13:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/passing-strings-to-MKL/m-p/778343#M1246</guid>
      <dc:creator>ArturGuzik</dc:creator>
      <dc:date>2010-07-18T06:13:04Z</dc:date>
    </item>
    <item>
      <title>passing strings to MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/passing-strings-to-MKL/m-p/778344#M1247</link>
      <description>Note that CVF/DVF used a calling convention for character arguments that is different from that used by Intel Fortran: the hidden string lengths are passed immediately after each character argument in CVF/DVF; in Intel Fortran, all the lengths are appended to the end of the explicit argument list.&lt;BR /&gt;&lt;BR /&gt;I suspect that, since STDCALL name decoration is used and you use the Lahey compiler, you have modified the source code by adding DLLIMPORT directives. That is one way to do things, but you may have to remove those directives if you want to use the Intel compiler.&lt;BR /&gt;&lt;BR /&gt;Read about the /iface: mixed_str_len_arg to /iface:nomixed_str_len_arg options of the Intel compiler.&lt;BR /&gt;</description>
      <pubDate>Mon, 19 Jul 2010 19:18:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/passing-strings-to-MKL/m-p/778344#M1247</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2010-07-19T19:18:29Z</dc:date>
    </item>
  </channel>
</rss>

