• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            歲月流轉,往昔空明

            C++博客 首頁 新隨筆 聯系 聚合 管理
              118 Posts :: 3 Stories :: 413 Comments :: 0 Trackbacks
            最近由于一些實驗要用到線性代數庫,因此便要找一個性能優良的,同時有公信力的線性代數庫。
            很早就知道了ATLAS的大名,在跨平臺的高性能線性代數數學包中,可能要屬ATLAS最有名了。因此從一開始便決定了要用ATLAS BLAS作為CPU的線性代數部分的性能和數學基準。
            只是我在shell下面的經驗太少,所以編譯的時候被狠狠郁悶了一把。

            因此這篇文章將以我的血淚史為一些E文和我一樣爛的人鋪好前進的道路。

            ATLAS的版本里面,我推薦ATLAS 3.6.0的版本。不僅僅是因為這個版本是Stable的,更重要的是,3.7的版本安裝方式有了不小的變化,一切都需要命令行直接設置,不像360可以依靠它所帶的向導可以一步步的完成設置工作。因此安裝起來頗為頭大。所以以下的例子將以360為準。并且,如果需要支持多核或者多CPU,建議使用ScaLAPACK。

            下載好ATLAS 360以后,第一反應自然是看Install.txt。

            Install.txt里面說,如果你是在Windows系統下工作的話,需要參考另外一個幫助文檔。實際上另外一個幫助文檔只告訴你兩件事情:

            第一是如果你使用cygwin的話,那么一切都as normal,就是和Linux/Unix平臺一樣;
            第二是如果你使用其它的編譯器,如msvc或者icc(intel c++ compiler)的話,請參見XXX云云。

            盡管理論上說支持MSVC和ICC,但是我覺得想用MSVC的同學還是先忍一忍,因為所有的編譯參數都已經不是默認的了,需要重新設置,比方說INCLUDE和LIB,又比方說編譯器選項。我又是個比較笨的人,所以就選擇了as normal的cygwin。理論上說mingw也可以,但是mingw的sh不太好用,因此我也就沒有在mingw上面順利通過。同時如果你的機器上已經有mingw,記得安裝完cygwin以后,把path這個環境變量里面mingw的路徑替換成cygwin的路徑。

            先下載CYGWIN。gcc, g77, gnu make, mingw-gcc, mingw-g77, mingw-runtime這幾項是必須要的。建議大家先選擇Download without installing,把需要下載的東西準備好,然后在選擇第三項從本地install。服務器很多人都推薦kernel.org。實際用來效果也不錯。

            cygwin下載,安裝都OK了以后,先要補丁兩個文件:
            Assembler renaming problem for Windows machine“ 和
            String overrun in config for long compiler paths”。
            我之所以失敗了無數次就是因為把這個給漏掉了。

            補丁打好以后,先測試一下make,gcc,g77能不能正常工作。
            如果無誤以后,就可以動手了。

            先啟動cygwin,bash進入atlas的安裝目錄(就是install.txt所在的目錄)
            然后就是直接運行
            make
            這一步是全部向導,按照向導的說明完成配置就好了,正常來說,這一步不會出現任何錯誤。
            然后便是運行
            make install arch=<ARCH>
            這里的arch在上一步make完成的時候已經給了個樣例,抄下來就可以了。
            然后就是漫長又漫長的編譯過程。。。

            編譯好以后,可以在$atlas/lib/<arch>下面見到一些.a文件。對于gcc來說,這些就足夠用了,但是對于msvc來說,這一步還不行。我們還需要把.a文件轉換成dll+lib的方式,vc才能使用。

            posted on 2007-05-21 21:17 空明流轉 閱讀(4739) 評論(0)  編輯 收藏 引用
            久久久久久综合网天天| 久久免费的精品国产V∧| 99久久www免费人成精品| 国产精品成人99久久久久 | 久久影视国产亚洲| 99蜜桃臀久久久欧美精品网站 | 久久久久亚洲Av无码专| 伊人久久大香线蕉精品| 一97日本道伊人久久综合影院| 久久婷婷五月综合成人D啪| 久久精品视频免费| 99久久免费国产精品特黄| 韩国无遮挡三级久久| 久久精品人妻中文系列| a级毛片无码兔费真人久久| 伊人久久综合无码成人网| 国产精品内射久久久久欢欢 | 久久亚洲高清综合| 99精品久久精品一区二区| 久久久噜噜噜久久中文字幕色伊伊 | 超级97碰碰碰碰久久久久最新| 亚洲午夜久久久久妓女影院 | 久久免费高清视频| 色综合久久中文字幕无码| 亚洲精品无码久久毛片| 久久e热在这里只有国产中文精品99| 少妇高潮惨叫久久久久久| 国产A三级久久精品| 一级做a爰片久久毛片看看| 国内精品伊人久久久久网站| 国产精品久久一区二区三区| 久久99精品久久久久久hb无码| 九九精品久久久久久噜噜| 久久精品亚洲精品国产欧美| 青青青青久久精品国产h| 国产精品久久久久久久久| 久久久久免费看成人影片| 精品人妻伦九区久久AAA片69| 亚洲乱码日产精品a级毛片久久| 久久一区二区三区99| 亚洲综合久久夜AV |