• <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)  編輯 收藏 引用
            69SEX久久精品国产麻豆| 久久午夜无码鲁丝片午夜精品| 国产精品一区二区久久精品无码 | 国产精品禁18久久久夂久| 精品伊人久久久| 久久精品黄AA片一区二区三区| 久久男人Av资源网站无码软件| 色欲综合久久躁天天躁蜜桃| 99久久99这里只有免费的精品| 久久久久久a亚洲欧洲aⅴ| 久久久久免费视频| 亚洲狠狠婷婷综合久久蜜芽| 久久成人影院精品777| 久久久无码精品午夜| 精品久久久无码21p发布| 久久久久人妻一区精品色 | 99久久香蕉国产线看观香| 人妻精品久久无码区| 韩国三级中文字幕hd久久精品 | 亚洲精品无码久久千人斩| 一本大道久久a久久精品综合| 久久久国产视频| 国产成人AV综合久久| 欧洲人妻丰满av无码久久不卡| 久久久久女教师免费一区| 99精品久久精品一区二区| 欧美伊人久久大香线蕉综合| 久久99精品国产麻豆宅宅| 99精品国产99久久久久久97 | 久久综合伊人77777麻豆| 精品久久久久久久久午夜福利| 三级片免费观看久久| 久久久久久狠狠丁香| 久久免费的精品国产V∧| 久久笫一福利免费导航| 久久影院午夜理论片无码| 久久不射电影网| 久久99精品国产麻豆| 久久青青草原精品国产| 久久久久人妻一区精品色| av色综合久久天堂av色综合在|