<?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 I suggest you are a little in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182222#M149065</link>
    <description>&lt;P&gt;I suggest you are a little outside the computational capacity of the average intel computer -- GCEED&amp;nbsp; uses K Computer - of course there are some fast Intel Supercomputers but I have only seen such things.&amp;nbsp;&lt;/P&gt;&lt;P&gt;They will use a packing scheme, any sparse matrix with less than a 1/3 density needs to be triple - offset i, offset j value.&amp;nbsp; medej4 gave an excellent example in a forum post a few years ago for my program Magni.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Good luck&amp;nbsp;&lt;/P&gt;&lt;P&gt;John&lt;/P&gt;&lt;P&gt;----------------------------------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;The&amp;nbsp;K computer&amp;nbsp;– named for the Japanese word/numeral "kei"&amp;nbsp;(京), meaning 10&amp;nbsp;quadrillion&amp;nbsp;(1016)[4][Note 1]&amp;nbsp;– was a&amp;nbsp;supercomputer&amp;nbsp;manufactured by&amp;nbsp;Fujitsu, installed at the&amp;nbsp;Riken Advanced Institute for Computational Science&amp;nbsp;campus in&amp;nbsp;Kobe,&amp;nbsp;Hyōgo Prefecture,&amp;nbsp;Japan.[4][5][6]&amp;nbsp;The K computer was based on a&amp;nbsp;distributed memory&amp;nbsp;architecture with over 80,000 compute nodes.[7]&amp;nbsp;It was used for a variety of applications, including climate research, disaster prevention and medical research.[6]&amp;nbsp;The K computer's&amp;nbsp;operating system&amp;nbsp;was based on the&amp;nbsp;Linux kernel, with additional drivers designed to make use of the computer's hardware.[8]&lt;/P&gt;&lt;P&gt;In June 2011,&amp;nbsp;TOP500&amp;nbsp;ranked K the world's fastest supercomputer, with a computation speed of over 8&amp;nbsp;petaflops, and in November 2011, K became the first computer to top 10 petaflops.[9][10]&amp;nbsp;It had originally been slated for completion in June 2012.[10]&amp;nbsp;In June 2012, K was superseded as the world's fastest supercomputer by the American&amp;nbsp;IBM Sequoia.[11]&lt;/P&gt;&lt;P&gt;As of June&amp;nbsp;2019, K is the world's 20th-fastest computer, with the IBM's&amp;nbsp;Summit&amp;nbsp;&amp;amp;&amp;nbsp;Sierra&amp;nbsp;being the fastest supercomputers.[12][3]&lt;/P&gt;&lt;P&gt;As of November&amp;nbsp;2018, the K computer holds the third place for the&amp;nbsp;HPCG benchmark. It held the first place until June 2018, when it was superseded by&amp;nbsp;Summit&amp;nbsp;&amp;amp;&amp;nbsp;Sierra.[13][14]&lt;/P&gt;&lt;P&gt;The K supercomputer was decommissioned on the 30th of August 2019.[15][16]&amp;nbsp;In Japan, the K computer will be succeeded by the&amp;nbsp;Fugaku, expected to be 100 times faster, scheduled to be operational in 2021.&lt;/P&gt;</description>
    <pubDate>Mon, 03 Feb 2020 23:45:49 GMT</pubDate>
    <dc:creator>JohnNichols</dc:creator>
    <dc:date>2020-02-03T23:45:49Z</dc:date>
    <item>
      <title>How to allocate a matrix which size is on the order of 10^7 x 10^7?</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182217#M149060</link>
      <description>&lt;P&gt;An example of a program involving the use and manipulation of such a huge matrix is GCEED, for instance look at page 3 just before section 2.2 of this conference paper &lt;A href="https://journals.jps.jp/doi/pdf/10.7566/JPSCP.5.011010" target="_blank"&gt;https://journals.jps.jp/doi/pdf/10.7566/JPSCP.5.011010&lt;/A&gt;. There it is mentioned that the size of matrices can be up to 10^7 x 10^7. When I tried to invoke a double precision matrix around that size using allocate statement, that part of the code becomes an extremely tight, near closed, bottleneck during execution, even sometimes it prompts the execution to terminate due to insufficient virtual memory. Since my program will involve repeated eigenvalue calculations, any suggestion for how to do it efficiently (using MKL routines or any other method) given I only need around the 20 smallest eigenvalues?&lt;/P&gt;</description>
      <pubDate>Sun, 02 Feb 2020 20:26:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182217#M149060</guid>
      <dc:creator>efnacy</dc:creator>
      <dc:date>2020-02-02T20:26:42Z</dc:date>
    </item>
    <item>
      <title>A 10^7 x 10^7 double</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182218#M149061</link>
      <description>&lt;P&gt;A 10^7 x 10^7 double precision matrix would be about 727 TB of data. Current hardware can't support that. In the article, they also state this is a sparse matrix, so likely they are using alternative methods. I recommend contacting the authors.&lt;/P&gt;</description>
      <pubDate>Mon, 03 Feb 2020 02:26:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182218#M149061</guid>
      <dc:creator>Thomas_F_1</dc:creator>
      <dc:date>2020-02-03T02:26:17Z</dc:date>
    </item>
    <item>
      <title>You need software</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182219#M149062</link>
      <description>&lt;P&gt;You need software specifically&amp;nbsp;for large, sparse eigenvalue calculations.&amp;nbsp; Back in the day I used ARPACK&amp;nbsp;https://www.caam.rice.edu/software/ARPACK/&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 03 Feb 2020 05:08:57 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182219#M149062</guid>
      <dc:creator>David_Billinghurst</dc:creator>
      <dc:date>2020-02-03T05:08:57Z</dc:date>
    </item>
    <item>
      <title>Does it take input as</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182220#M149063</link>
      <description>&lt;P&gt;Do ARPACK routines take input as matrices? Because it seems like I need to find a way around invoking a 10^7 x 10^7 size matrix, this matrix is sparse.&lt;/P&gt;</description>
      <pubDate>Mon, 03 Feb 2020 05:15:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182220#M149063</guid>
      <dc:creator>efnacy</dc:creator>
      <dc:date>2020-02-03T05:15:00Z</dc:date>
    </item>
    <item>
      <title>I forget the details.  You</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182221#M149064</link>
      <description>&lt;P&gt;I forget the details.&amp;nbsp; You will need to RTFM.&amp;nbsp; As best I recall it uses reverse communication, so you may be able to use your existing data structures to calculate a matrix-vector product.&lt;/P&gt;&lt;P&gt;You could also look at the Intel MKL routines&amp;nbsp;https://software.intel.com/en-us/articles/intel-mkl-support-for-largestsmallest-eigenvalue-and-sparse-svd-problem&lt;/P&gt;</description>
      <pubDate>Mon, 03 Feb 2020 05:30:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182221#M149064</guid>
      <dc:creator>David_Billinghurst</dc:creator>
      <dc:date>2020-02-03T05:30:00Z</dc:date>
    </item>
    <item>
      <title>Hi @Nichols,</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182223#M149066</link>
      <description>&lt;P&gt;Hi @Nichols,&lt;/P&gt;&lt;P&gt;what do you mean by 1/3 density, the number of non-zero matrix elements being less than 1/3 of all elements? And by triple, would triple banded matrix like some finite-difference matrices be an example?&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2020 01:05:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182223#M149066</guid>
      <dc:creator>efnacy</dc:creator>
      <dc:date>2020-02-04T01:05:23Z</dc:date>
    </item>
    <item>
      <title>Look at this: https://en</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182225#M149068</link>
      <description>&lt;P&gt;Look at this: &lt;A href="https://en.wikipedia.org/wiki/Sparse_matrix#Compressed_sparse_row_(CSR,_CRS_or_Yale_format)" target="_blank"&gt;https://en.wikipedia.org/wiki/Sparse_matrix#Compressed_sparse_row_(CSR,_CRS_or_Yale_format)&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Numerical methods for big sparse matrices almost without exception use the CSR or CSC method (or something similar) to store the matrix.&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2020 20:18:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182225#M149068</guid>
      <dc:creator>gib</dc:creator>
      <dc:date>2020-02-04T20:18:17Z</dc:date>
    </item>
    <item>
      <title>Quote:gib wrote:</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182227#M149070</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;gib wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Numerical methods for big sparse matrices almost without exception use the CSR or CSC method ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A significant minority use a reverse communication interface.&amp;nbsp; For example&amp;nbsp;https://software.intel.com/en-us/mkl-developer-reference-c-iterative-sparse-solvers-based-on-reverse-communication-interface-rci-iss and&amp;nbsp;http://www.netlib.org/lapack/lawnspdf/lawn99.pdf&lt;/P&gt;&lt;P&gt;This can be particularly effective for a problem posed on a mesh,where the non-zero matrix coefficients relate to the interaction with neighbouring nodes and may be calculated and stored in advance.&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2020 23:22:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182227#M149070</guid>
      <dc:creator>David_Billinghurst</dc:creator>
      <dc:date>2020-02-04T23:22:53Z</dc:date>
    </item>
    <item>
      <title>I suggest you are a little</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182222#M149065</link>
      <description>&lt;P&gt;I suggest you are a little outside the computational capacity of the average intel computer -- GCEED&amp;nbsp; uses K Computer - of course there are some fast Intel Supercomputers but I have only seen such things.&amp;nbsp;&lt;/P&gt;&lt;P&gt;They will use a packing scheme, any sparse matrix with less than a 1/3 density needs to be triple - offset i, offset j value.&amp;nbsp; medej4 gave an excellent example in a forum post a few years ago for my program Magni.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Good luck&amp;nbsp;&lt;/P&gt;&lt;P&gt;John&lt;/P&gt;&lt;P&gt;----------------------------------------------------------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;The&amp;nbsp;K computer&amp;nbsp;– named for the Japanese word/numeral "kei"&amp;nbsp;(京), meaning 10&amp;nbsp;quadrillion&amp;nbsp;(1016)[4][Note 1]&amp;nbsp;– was a&amp;nbsp;supercomputer&amp;nbsp;manufactured by&amp;nbsp;Fujitsu, installed at the&amp;nbsp;Riken Advanced Institute for Computational Science&amp;nbsp;campus in&amp;nbsp;Kobe,&amp;nbsp;Hyōgo Prefecture,&amp;nbsp;Japan.[4][5][6]&amp;nbsp;The K computer was based on a&amp;nbsp;distributed memory&amp;nbsp;architecture with over 80,000 compute nodes.[7]&amp;nbsp;It was used for a variety of applications, including climate research, disaster prevention and medical research.[6]&amp;nbsp;The K computer's&amp;nbsp;operating system&amp;nbsp;was based on the&amp;nbsp;Linux kernel, with additional drivers designed to make use of the computer's hardware.[8]&lt;/P&gt;&lt;P&gt;In June 2011,&amp;nbsp;TOP500&amp;nbsp;ranked K the world's fastest supercomputer, with a computation speed of over 8&amp;nbsp;petaflops, and in November 2011, K became the first computer to top 10 petaflops.[9][10]&amp;nbsp;It had originally been slated for completion in June 2012.[10]&amp;nbsp;In June 2012, K was superseded as the world's fastest supercomputer by the American&amp;nbsp;IBM Sequoia.[11]&lt;/P&gt;&lt;P&gt;As of June&amp;nbsp;2019, K is the world's 20th-fastest computer, with the IBM's&amp;nbsp;Summit&amp;nbsp;&amp;amp;&amp;nbsp;Sierra&amp;nbsp;being the fastest supercomputers.[12][3]&lt;/P&gt;&lt;P&gt;As of November&amp;nbsp;2018, the K computer holds the third place for the&amp;nbsp;HPCG benchmark. It held the first place until June 2018, when it was superseded by&amp;nbsp;Summit&amp;nbsp;&amp;amp;&amp;nbsp;Sierra.[13][14]&lt;/P&gt;&lt;P&gt;The K supercomputer was decommissioned on the 30th of August 2019.[15][16]&amp;nbsp;In Japan, the K computer will be succeeded by the&amp;nbsp;Fugaku, expected to be 100 times faster, scheduled to be operational in 2021.&lt;/P&gt;</description>
      <pubDate>Mon, 03 Feb 2020 23:45:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182222#M149065</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2020-02-03T23:45:49Z</dc:date>
    </item>
    <item>
      <title> A dense matrix is one where</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182224#M149067</link>
      <description>&lt;P&gt;&amp;nbsp;A dense matrix is one where all of the elements are non-zero so a 3 by 3 matrix could have the form [[1,2,3], [3,4,5],[5,6,7]], which can then be placed in memory in connected&amp;nbsp;units. here we have 9 reals starting at an offset - all you need is a counter and offset.&amp;nbsp;&lt;/P&gt;&lt;P&gt;In Lisp the concept was developed for the linked list so the result could include a wide variety of arrays for tree and node analysis. As structural analysis programs have grown the number of zeros grows very quickly. So the array above could be listed as 1,1,1.0 :1,2,2.0: 1:3:3.0: 2:1:3.0:, 2:2:4.0: 2,3,5.0:, 3:1;5.0: 3:2:6.0: 3,3:7.0 so we now have 18 integers and 9 reals - not efficient at all&lt;/P&gt;&lt;P&gt;but if we are using a structural matrix the results might&amp;nbsp;be&amp;nbsp;1,1,1.0 :, 2:2:4.0: : 3,3:7.0, so we have 6 integers and 3 reals.&amp;nbsp; As soon as the real density drops below 0.33 then clearly the second method is better for memory usage. if the integers occupy less space than reals then the density number may change, but most structural matrices are less than 0.33 by a long way.&amp;nbsp; The problem would be that the search algorithm for 1 is going to be different to 2.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Refer to the Pardiso manual.&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is actually quite important as inversion routines to be fast.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2020 04:13:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182224#M149067</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2020-02-04T04:13:02Z</dc:date>
    </item>
    <item>
      <title>Pardiso uses CSR I think</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182226#M149069</link>
      <description>&lt;P&gt;Pardiso uses CSR I think&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2020 22:56:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-allocate-a-matrix-which-size-is-on-the-order-of-10-7-x-10/m-p/1182226#M149069</guid>
      <dc:creator>JohnNichols</dc:creator>
      <dc:date>2020-02-04T22:56:13Z</dc:date>
    </item>
  </channel>
</rss>

