十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專(zhuān)業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
Release 模式:

x方向2*1024
t方向1024?
z方向1024
運(yùn)行過(guò)程中總耗時(shí)460ms/step
進(jìn)程內(nèi)存867M

t100處場(chǎng)強(qiáng)分布
波浪認(rèn)為是周期性導(dǎo)致的干涉條紋,其它分布大概沒(méi)問(wèn)題
Debug模式:
在:
H5File file( FILE_NAME, H5F_ACC_TRUNC);
處
0x00007FFC50A5428C 處(位于 main_loop.exe 中)有未經(jīng)處理的異常: Microsoft C++ 異常: H5::FileIException,位于內(nèi)存位置 0x000000026DBBEED0 處。
運(yùn)行界面圖:

該錯(cuò)誤在分辨率下調(diào)至1024處仍然有。應(yīng)該是源程序就有的bug,估計(jì)不影響計(jì)算和儲(chǔ)存,需要考慮怎么在debug模式下忽略該錯(cuò)誤
解決參考1:
Windows下將PyTorch模型轉(zhuǎn)成Libtorch并使用C++進(jìn)行讀取 - 知乎
文內(nèi)第三條:
解決辦法:1.檢查自己的程序語(yǔ)句是否有問(wèn)題,關(guān)鍵是檢查,舉例:檢查imread(“xx.jpg”) 的圖片引入路徑。
2.手動(dòng)添加符號(hào)文件:
Visual studio 工具欄里: 調(diào)試(D) --->選項(xiàng)(O)--->
安裝如上圖,勾選 Microsoft符號(hào)服務(wù)器。
完成之后,在程序第一次執(zhí)行,會(huì)花費(fèi)一定時(shí)間去從服務(wù)器上加載符號(hào)文件,會(huì)比較慢,加載完成后,程序會(huì)繼續(xù)執(zhí)行。
##############
手動(dòng)添加符號(hào)文件方法測(cè)試:
1、真慢,加載了起碼五分鐘
2、雖然上一個(gè)bug沒(méi)有出現(xiàn),但有一個(gè)替代bug出現(xiàn),估計(jì)不是這個(gè)錯(cuò)誤
3、在運(yùn)行到step20時(shí),又一次跳bug(該運(yùn)行分辨率6*1024 ps:2*1024分辨率下也會(huì)在step20時(shí)跳該錯(cuò)誤,只是不是0.0ms)
?call ? ?__NLG_Return2 ? ? ? ? ? ? ? ? ? ; notify debugger : eh return
隨后繼續(xù):
沒(méi)有為 hdf5_cpp.dll 加載的符號(hào)文件

也就是說(shuō),該方法不行,回退取消勾選
現(xiàn)在還是懷疑是? ? H5File file( FILE_NAME, H5F_ACC_TRUNC); 命令中沒(méi)有給路徑的問(wèn)題
解決!
https://blog.csdn.net/houwenbin1986/article/details/78960131
修改點(diǎn):
將std::string轉(zhuǎn)成char*
就是在使用H5std_string賦值的名字用時(shí)候加【.c_str()】
原程序
? const H5std_string FILE_NAME(filename_str);
? const H5std_string DATASET_NAME("FloatArray");
? H5File file( FILE_NAME, H5F_ACC_TRUNC);
修改后
? const H5std_string FILE_NAME(filename_str);
? const H5std_string DATASET_NAME("FloatArray");
? H5File file( FILE_NAME.c_str(), H5F_ACC_TRUNC);
暫時(shí)像素?cái)?shù)2*1024能用,接下來(lái)嘗試6*1024
又變成0.0ms
禁掉傅里葉變換后,仍然0.0ms(1024*2就沒(méi)問(wèn)題),所以不是傅里葉變換空間不夠問(wèn)題
1024*3仍然沒(méi)問(wèn)題
1024*4有問(wèn)題
把memory尺寸從1806變到806,1024*3仍然沒(méi)問(wèn)題
####################
cudaMemcpy(dev_laser_paras, host_laser_paras, 15*sizeof(double), cudaMemcpyHostToDevice);
從15修改到25
無(wú)效
這個(gè)數(shù)據(jù)是給固定參數(shù)用的
0.0ms對(duì)應(yīng)的能量是這樣的

n_imag也是這個(gè)值,現(xiàn)在有理由相信這個(gè)是因?yàn)槟撤N數(shù)據(jù)溢出導(dǎo)致的全部被電腦設(shè)為大值了
找到bug了,在calexp_linear里,idx的值被我改了,給忘了,不知道為啥前幾個(gè)分辨率都能正常算數(shù)
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧