• <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 空明流轉 閱讀(4745) 評論(0)  編輯 收藏 引用
            精品久久久久久成人AV| 久久精品国产久精国产一老狼| 久久这里只有精品首页| 久久综合久久综合亚洲| 久久99热这里只有精品66| 看久久久久久a级毛片| 国产99久久九九精品无码| 久久夜色撩人精品国产小说| 亚洲AV无码久久精品蜜桃| a高清免费毛片久久| 久久露脸国产精品| 久久w5ww成w人免费| 国内精品伊人久久久久影院对白| 超级97碰碰碰碰久久久久最新| 青青草国产精品久久久久| 麻豆精品久久久久久久99蜜桃| 热re99久久精品国产99热| 欧美一区二区三区久久综合| 久久涩综合| 国产成人久久精品二区三区| 少妇久久久久久被弄高潮| 欧美国产成人久久精品| 久久电影网一区| 久久久无码精品亚洲日韩按摩 | 亚洲日韩中文无码久久| 久久综合丁香激情久久| 无码国内精品久久人妻蜜桃 | 中文字幕久久精品| 久久久久久免费一区二区三区 | 夜夜亚洲天天久久| 久久精品中文騷妇女内射| 国产香蕉久久精品综合网| 久久青青草原亚洲av无码| 国产一区二区三精品久久久无广告| 国产综合久久久久| 久久香蕉国产线看观看精品yw| 国产精品久久新婚兰兰| 色诱久久av| 亚洲精品tv久久久久| 久久久这里有精品| 精品综合久久久久久98|