国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

AMGX運行時segmentation violation錯誤解決及example的運行問題

2019-11-08 01:56:39
字體:
來源:轉載
供稿:網友

一  AMGX環境搭配好之后,按照網頁上readme.txt 編譯example時會出現錯誤,因為最后一個運行選項 -c ../configs/FGMRES_AGGREGATION在configs目錄下是沒有的 可以加上后綴名 如-c../configs/FGMRES_AGGREGATION.json  運行即可。

二 由于example比較復雜 ,想自己寫一個小程序 將AMGX的求解過程理一下,自己寫了一個小矩陣,對照manual文檔和example程序 編譯沒有問題,運行時出現segmentation violation( __libc_start_main()+0xf5)錯誤,后來定位在矩陣讀取造成的, 矩陣讀取使用命令,AMGX_matrix_upload_all_global,完全根據manual文檔寫的(value用double,col及row用int),檢查了很多遍,卡了好幾天,由于example能運行 ,所以排除改命令本身的問題,然后懷疑是config或者resource的問題,于是將自己的矩陣數據寫入到example中segmentation violation.c中,將里面的AMGX_matrix_upload_all_global語句中的數組換成包含自己的矩陣數據的數組,結果同樣出現segmentation violation錯誤,所以基本判斷是自己的數據存儲有問題,但是數據的存儲的結構按照manual來看肯定是沒有問題的。最后實在沒辦法,決定將example程序中的矩陣讀入的各個數組打印出來(value強制轉換為double row及col強制轉換成int),對照網上的下載的矩陣看,其中values及row數組均沒有問題,但是col數組與矩陣文件中數據不一致,如本來應為0 1 3 8的數據 變成了 0 0 1 0 3 0 8 0 這樣子,相信大家能看出來了,和正確的數據相比,后者每個中間都多一個0,于是馬上知道是數據類型不對,原來AMGX_matrix_upload_all_global語句中的col數組默認使用長整形的數據 long int 將數據修改后程序順利運行

其實在manual里提到過用于索引的數據為32位的整型,但是自己計算機基礎不牢,沒有意識到這其實是長整形,慚愧。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 碌曲县| 溆浦县| 永清县| 墨玉县| 灵台县| 和静县| 罗定市| 加查县| 神木县| 成都市| 青州市| 宁津县| 白朗县| 文山县| 桂阳县| 灵寿县| 定安县| 昌黎县| 永新县| 壤塘县| 图木舒克市| 馆陶县| 昔阳县| 临汾市| 樟树市| 黄浦区| 怀来县| 东乡| 吴旗县| 吴川市| 历史| 郓城县| 花莲市| 德保县| 漳浦县| 丰原市| 海淀区| 吕梁市| 弥渡县| 长垣县| 鄂托克旗|