<?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 PARDISO Parallel problem in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/PARDISO-Parallel-problem/m-p/959132#M15736</link>
    <description>&lt;DIV&gt;Hey all,&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I am using PARDISO in IMKL 8.01 for my program on Pentium Dual Core 3.2 G (no HT) platform.&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;The program is win32 console by VC.net 2005. &lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I followed the instructions by setting OMP_NUM_THREADS = 2.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I tried my program using IA32 lib on winxp pro and EMT64 lib on Winserver 2003 x64 and got the same strange results.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;From the solving statistics below, most of the time spent on step 1: reorder However, the cpu usage of this step is only 50%. &lt;BR /&gt;Step 3 can use 100% cpu. I am not quite sure about step 2 cpu usage.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;So from here seems little meanings using multiprocessor for PARDISO.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;My questions are:&lt;/DIV&gt;
&lt;DIV&gt;1) How can I make full use of dual core resource for sparse matrix solving in IMKL? &lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;2) Could you explain my results?&lt;BR /&gt;Did I neglect some important settings supporting multi-threads &lt;BR /&gt;or PARDISO reorder step can not be parallelled?&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;3) There are some link warning when I use VC.net 2005 as below: &lt;BR /&gt;Does it relate to my results. I don't have such warnings in VC 6.0.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Any suggestion to speed the program is welcome!&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;Thanks.&lt;/DIV&gt;
&lt;DIV&gt;Regards,&lt;/DIV&gt;
&lt;DIV&gt;Ray&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;***************&lt;BR /&gt;Link warnings&lt;BR /&gt;***************&lt;/DIV&gt;
&lt;DIV&gt;1&amp;gt;libguide.lib(kmp_csupport.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_sched.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_ftn_cdecl.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_dispatch.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_runtime.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_global.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_lock.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_debug.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(z_Windows_NT-586_util.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_alloc.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_i8_dispatch.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_i8_sched.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_ssp.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_statgen.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_error.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_threadprivate.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_utility.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_ftn_extra.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;**************************************&lt;BR /&gt;The solving Statistics&lt;BR /&gt;**************************************&lt;/DIV&gt;
&lt;DIV&gt;================ PARDISO: solving a symmetric indef. system ================&lt;/DIV&gt;
&lt;DIV&gt;Summary PARDISO: ( reorder to reorder )&lt;BR /&gt;
================&lt;BR /&gt;Times:&lt;BR /&gt;======&lt;BR /&gt; Time fulladj: 0.251597 s&lt;BR /&gt; Time reorder: 1829.120878 s&lt;BR /&gt; Time symbfct: 3.429548 s&lt;BR /&gt; Time parlist: 0.303471 s&lt;BR /&gt; Time malloc : -0.957534 s&lt;BR /&gt; Time total : 1837.942776 s total - sum: 5.794816 s&lt;BR /&gt;Statistics:&lt;BR /&gt;===========&lt;BR /&gt;&amp;lt; Parallel Direct Factorization with #processors: &amp;gt; 2&lt;BR /&gt;&amp;lt; Hybrid Solver PARDISO with CGS/CG Iteration &amp;gt;&lt;BR /&gt;&amp;lt; Linear system Ax = b&amp;gt;&lt;BR /&gt; #equations: 3838560&lt;BR /&gt; #non-zeros in A: 10111477&lt;BR /&gt; non-zeros in A (%): 0.000069&lt;BR /&gt; #right-hand sides: 1&lt;BR /&gt;&amp;lt; Factors L and U &amp;gt;&lt;BR /&gt; #columns for each panel: 80&lt;BR /&gt; #independent subgraphs: 0&lt;BR /&gt;&amp;lt; Preprocessing with state of the art partitioning metis&amp;gt;&lt;BR /&gt; #supernodes: 3194983&lt;BR /&gt; size of largest supernode: 1861&lt;BR /&gt; number of nonzeros in L 104270391&lt;BR /&gt; number of nonzeros in U 1&lt;BR /&gt; number of nonzeros in L+U 104270392&lt;BR /&gt;================ PARDISO: solving a symmetric indef. system ================&lt;/DIV&gt;
&lt;DIV&gt;Summary PARDISO: ( factorize to factorize )&lt;BR /&gt;================&lt;BR /&gt;Times:&lt;BR /&gt;======&lt;BR /&gt; Time A to LU: 0.000000 s&lt;BR /&gt; Time numfct : 106.131564 s&lt;BR /&gt; Time malloc : 0.898005 s&lt;BR /&gt; Time total : 107.030807 s total - sum: 0.001238 s&lt;BR /&gt;Statistics:&lt;BR /&gt;===========&lt;BR /&gt;&amp;lt; Parallel Direct Factorization with #processors: &amp;gt; 2&lt;BR /&gt;&amp;lt; Hybrid Solver PARDISO with CGS/CG Iteration &amp;gt;&lt;BR /&gt;&amp;lt; Linear system Ax = b&amp;gt;&lt;BR /&gt; #equations: 3838560&lt;BR /&gt; #non-zeros in A: 10111477&lt;BR /&gt; non-zeros in A (%): 0.000069&lt;BR /&gt; #right-hand sides: 1&lt;BR /&gt;&amp;lt; Factors L and U &amp;gt;&lt;BR /&gt; #columns for each panel: 80&lt;BR /&gt; #independent subgraphs: 0&lt;BR /&gt;&amp;lt; Preprocessing with state of the art partitioning metis&amp;gt;&lt;BR /&gt; #supernodes: 3194983&lt;BR /&gt; size of largest supernode: 1861&lt;BR /&gt; number of nonzeros in L 104270391&lt;BR /&gt; number of nonzeros in U 1&lt;BR /&gt; number of nonzeros in L+U 104270392&lt;BR /&gt; gflop for the numerical factorization: 32.926163&lt;BR /&gt; gflop/s for the numerical factorization: 0.310239&lt;BR /&gt;================ PARDISO: solving a symmetric indef. system ================&lt;/DIV&gt;
&lt;DIV&gt;Summary PARDISO: ( solve to solve )&lt;BR /&gt;================&lt;BR /&gt;Times:&lt;BR /&gt;======&lt;BR /&gt; Time cgs : 5.478609 s cgx iterations 2&lt;BR /&gt; Time malloc : 0.055662 s&lt;BR /&gt; Time total : 5.727567 s total - sum: 0.193296 s&lt;BR /&gt;Statistics:&lt;BR /&gt;===========&lt;BR /&gt;&amp;lt; Parallel Direct Factorization with #processors: &amp;gt; 2&lt;BR /&gt;&amp;lt; Hybrid Solver PARDISO with CGS/CG Iteration &amp;gt;&lt;BR /&gt;&amp;lt; Linear system Ax = b&amp;gt;&lt;BR /&gt; #equations: 3838560&lt;BR /&gt; #non-zeros in A: 10111477&lt;BR /&gt; non-zeros in A (%):
 0.000069&lt;BR /&gt; #right-hand sides: 1&lt;BR /&gt;&amp;lt; Factors L and U &amp;gt;&lt;BR /&gt; #columns for each panel: 80&lt;BR /&gt; #independent subgraphs: 0&lt;BR /&gt;&amp;lt; Preprocessing with state of the art partitioning metis&amp;gt;&lt;BR /&gt; #supernodes: 3194983&lt;BR /&gt; size of largest supernode: 1861&lt;BR /&gt; number of nonzeros in L 104270391&lt;BR /&gt; number of nonzeros in U 1&lt;BR /&gt; number of nonzeros in L+U 104270392&lt;BR /&gt; gflop for the numerical factorization: 32.926163&lt;BR /&gt; gflop/s for the numerical factorization: 0.310239&lt;BR /&gt;&lt;/DIV&gt;</description>
    <pubDate>Mon, 05 Dec 2005 15:55:51 GMT</pubDate>
    <dc:creator>ray_fl</dc:creator>
    <dc:date>2005-12-05T15:55:51Z</dc:date>
    <item>
      <title>PARDISO Parallel problem</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/PARDISO-Parallel-problem/m-p/959132#M15736</link>
      <description>&lt;DIV&gt;Hey all,&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I am using PARDISO in IMKL 8.01 for my program on Pentium Dual Core 3.2 G (no HT) platform.&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;The program is win32 console by VC.net 2005. &lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I followed the instructions by setting OMP_NUM_THREADS = 2.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;I tried my program using IA32 lib on winxp pro and EMT64 lib on Winserver 2003 x64 and got the same strange results.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;From the solving statistics below, most of the time spent on step 1: reorder However, the cpu usage of this step is only 50%. &lt;BR /&gt;Step 3 can use 100% cpu. I am not quite sure about step 2 cpu usage.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;So from here seems little meanings using multiprocessor for PARDISO.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;My questions are:&lt;/DIV&gt;
&lt;DIV&gt;1) How can I make full use of dual core resource for sparse matrix solving in IMKL? &lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;2) Could you explain my results?&lt;BR /&gt;Did I neglect some important settings supporting multi-threads &lt;BR /&gt;or PARDISO reorder step can not be parallelled?&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;3) There are some link warning when I use VC.net 2005 as below: &lt;BR /&gt;Does it relate to my results. I don't have such warnings in VC 6.0.&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;Any suggestion to speed the program is welcome!&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;Thanks.&lt;/DIV&gt;
&lt;DIV&gt;Regards,&lt;/DIV&gt;
&lt;DIV&gt;Ray&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;***************&lt;BR /&gt;Link warnings&lt;BR /&gt;***************&lt;/DIV&gt;
&lt;DIV&gt;1&amp;gt;libguide.lib(kmp_csupport.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_sched.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_ftn_cdecl.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_dispatch.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_runtime.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_global.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_lock.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_debug.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(z_Windows_NT-586_util.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_alloc.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_i8_dispatch.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_i8_sched.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_ssp.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_statgen.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_error.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_threadprivate.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_utility.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;BR /&gt;1&amp;gt;libguide.lib(kmp_ftn_extra.obj) : warning LNK4224: /COMMENT is no longer supported; ignored&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;/DIV&gt;
&lt;DIV&gt;**************************************&lt;BR /&gt;The solving Statistics&lt;BR /&gt;**************************************&lt;/DIV&gt;
&lt;DIV&gt;================ PARDISO: solving a symmetric indef. system ================&lt;/DIV&gt;
&lt;DIV&gt;Summary PARDISO: ( reorder to reorder )&lt;BR /&gt;
================&lt;BR /&gt;Times:&lt;BR /&gt;======&lt;BR /&gt; Time fulladj: 0.251597 s&lt;BR /&gt; Time reorder: 1829.120878 s&lt;BR /&gt; Time symbfct: 3.429548 s&lt;BR /&gt; Time parlist: 0.303471 s&lt;BR /&gt; Time malloc : -0.957534 s&lt;BR /&gt; Time total : 1837.942776 s total - sum: 5.794816 s&lt;BR /&gt;Statistics:&lt;BR /&gt;===========&lt;BR /&gt;&amp;lt; Parallel Direct Factorization with #processors: &amp;gt; 2&lt;BR /&gt;&amp;lt; Hybrid Solver PARDISO with CGS/CG Iteration &amp;gt;&lt;BR /&gt;&amp;lt; Linear system Ax = b&amp;gt;&lt;BR /&gt; #equations: 3838560&lt;BR /&gt; #non-zeros in A: 10111477&lt;BR /&gt; non-zeros in A (%): 0.000069&lt;BR /&gt; #right-hand sides: 1&lt;BR /&gt;&amp;lt; Factors L and U &amp;gt;&lt;BR /&gt; #columns for each panel: 80&lt;BR /&gt; #independent subgraphs: 0&lt;BR /&gt;&amp;lt; Preprocessing with state of the art partitioning metis&amp;gt;&lt;BR /&gt; #supernodes: 3194983&lt;BR /&gt; size of largest supernode: 1861&lt;BR /&gt; number of nonzeros in L 104270391&lt;BR /&gt; number of nonzeros in U 1&lt;BR /&gt; number of nonzeros in L+U 104270392&lt;BR /&gt;================ PARDISO: solving a symmetric indef. system ================&lt;/DIV&gt;
&lt;DIV&gt;Summary PARDISO: ( factorize to factorize )&lt;BR /&gt;================&lt;BR /&gt;Times:&lt;BR /&gt;======&lt;BR /&gt; Time A to LU: 0.000000 s&lt;BR /&gt; Time numfct : 106.131564 s&lt;BR /&gt; Time malloc : 0.898005 s&lt;BR /&gt; Time total : 107.030807 s total - sum: 0.001238 s&lt;BR /&gt;Statistics:&lt;BR /&gt;===========&lt;BR /&gt;&amp;lt; Parallel Direct Factorization with #processors: &amp;gt; 2&lt;BR /&gt;&amp;lt; Hybrid Solver PARDISO with CGS/CG Iteration &amp;gt;&lt;BR /&gt;&amp;lt; Linear system Ax = b&amp;gt;&lt;BR /&gt; #equations: 3838560&lt;BR /&gt; #non-zeros in A: 10111477&lt;BR /&gt; non-zeros in A (%): 0.000069&lt;BR /&gt; #right-hand sides: 1&lt;BR /&gt;&amp;lt; Factors L and U &amp;gt;&lt;BR /&gt; #columns for each panel: 80&lt;BR /&gt; #independent subgraphs: 0&lt;BR /&gt;&amp;lt; Preprocessing with state of the art partitioning metis&amp;gt;&lt;BR /&gt; #supernodes: 3194983&lt;BR /&gt; size of largest supernode: 1861&lt;BR /&gt; number of nonzeros in L 104270391&lt;BR /&gt; number of nonzeros in U 1&lt;BR /&gt; number of nonzeros in L+U 104270392&lt;BR /&gt; gflop for the numerical factorization: 32.926163&lt;BR /&gt; gflop/s for the numerical factorization: 0.310239&lt;BR /&gt;================ PARDISO: solving a symmetric indef. system ================&lt;/DIV&gt;
&lt;DIV&gt;Summary PARDISO: ( solve to solve )&lt;BR /&gt;================&lt;BR /&gt;Times:&lt;BR /&gt;======&lt;BR /&gt; Time cgs : 5.478609 s cgx iterations 2&lt;BR /&gt; Time malloc : 0.055662 s&lt;BR /&gt; Time total : 5.727567 s total - sum: 0.193296 s&lt;BR /&gt;Statistics:&lt;BR /&gt;===========&lt;BR /&gt;&amp;lt; Parallel Direct Factorization with #processors: &amp;gt; 2&lt;BR /&gt;&amp;lt; Hybrid Solver PARDISO with CGS/CG Iteration &amp;gt;&lt;BR /&gt;&amp;lt; Linear system Ax = b&amp;gt;&lt;BR /&gt; #equations: 3838560&lt;BR /&gt; #non-zeros in A: 10111477&lt;BR /&gt; non-zeros in A (%):
 0.000069&lt;BR /&gt; #right-hand sides: 1&lt;BR /&gt;&amp;lt; Factors L and U &amp;gt;&lt;BR /&gt; #columns for each panel: 80&lt;BR /&gt; #independent subgraphs: 0&lt;BR /&gt;&amp;lt; Preprocessing with state of the art partitioning metis&amp;gt;&lt;BR /&gt; #supernodes: 3194983&lt;BR /&gt; size of largest supernode: 1861&lt;BR /&gt; number of nonzeros in L 104270391&lt;BR /&gt; number of nonzeros in U 1&lt;BR /&gt; number of nonzeros in L+U 104270392&lt;BR /&gt; gflop for the numerical factorization: 32.926163&lt;BR /&gt; gflop/s for the numerical factorization: 0.310239&lt;BR /&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 05 Dec 2005 15:55:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/PARDISO-Parallel-problem/m-p/959132#M15736</guid>
      <dc:creator>ray_fl</dc:creator>
      <dc:date>2005-12-05T15:55:51Z</dc:date>
    </item>
  </channel>
</rss>

