作者dick1024 (生活撐下去)
看板C_and_CPP
標題Re: [問題] 計算開關檔
時間Thu Sep 2 13:20:06 2010
在我程式某一部分 file.h 內容裡 我有自行寫了 如下
void D1<T>::WriteBinary(const char* filename){
ofstream fout(filename,ios::binary);
if(!fout.good()){
cout<<"ERROR::[D1<T>::WriteBinary] The output filename is error! -> ";
cout<<filename<<endl;
exit(EXIT_FAILURE);
}
fout.write(reinterpret_cast<char*>(_v),sizeof(T)*_n);
fout.close();
最後當掉 所以會有這訊息出現 ↓
ERROR::[D1<T>::WriteBinary] The output filename is error! -> output_111_40.raw
int main() {
for (m = 0; m < 360; m++){
for(n=20; n <= 50; n += 5){
do something.................
.............................
.............................
output_m_n.raw; // file name
fopen(output_m_n.raw);
fwrite(output_m_n.raw);
flcose(output_m_n.raw);
}
}
}
大致上簡單描敘 此程式結合了 MPI & GPU CUDA
MPI 部分 主要分配 m & n 兩值
GPU CUDA 就主要處理做些繁雜的事情 然後處理完後 回傳至Host
簡單來說數據寫入該檔是在非 gpu cuda內完成的
以這for loop來看 就可知 開關檔次數是如此的多 約2520檔
由於檔案那麼多 才想說 是不是有上限問題?
也基於好奇 想知道 程式跑到某部分時 我的開關檔 以多少次數了
不知道這樣的敘述 是否清楚 !?
※ 引述《dick1024 (生活撐下去)》之銘言:
: 請問版上的高手們 ...小弟不才有事請教
: C or C++ 有指令(寫法) 計算開關檔的次數嘛!?
: 由於我實驗的程式內有開關檔的動作
: 但每當程式跑到某部分時 就會error
: for ()
: {
: do something....
: .................
: .................
: fopen()
: fwrite()
: fclose()
: do something....
: .................
: .................
: }
: 都有確保有開關檔的動作
: 但for loop 跑到一定值後 卻會當掉了
: 開關檔 有上限制次數 ?
: 由於for loop 非常大 所以我才想說
: 看看有沒有指令(寫法) 可看出我的開關檔次數多少了
: 請問這方面的指令(寫法)嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.64.185.202
推 ericinttu:關於開關檔次數, 你把其他動作都拿掉, for-loop裡只放 09/02 15:32
→ ericinttu:開、寫、關的動作. 09/02 15:33
→ ericinttu:另外, fout.good() 做了什麼判斷? 09/02 15:33
→ dick1024:fout.good() 判斷開啟檔案失敗 09/02 16:46
→ loveme00835:is_open 才是判斷開檔成功與否 09/02 16:55
→ dick1024:恩 謝指教 我再去問了一下原始作者fout.good()這部分好了 09/02 17:15
→ dick1024:不過我主要想問的是..............= = " 09/02 17:15
→ dick1024:有沒有指令(寫法) 可看出我的開關檔次數多少了!? 09/02 17:16
→ dick1024:這才是我的重點啦 Orz 09/02 17:16
推 nowar100:程式中自己開檔關檔的時候拿個變數++就好啦 09/02 17:17
推 VictorTom:印象中系統可能會限制同時開檔不關的最大數量(還是那是 09/03 00:35
→ VictorTom:很古早的限制了??) 檔案你要連續開關應該沒有限制吧@_@" 09/03 00:35
→ nowar100:開檔不關有限制阿,那張表不可能無限大 09/03 00:52
→ nowar100:但是有正確關了再開,那就應該沒限制,我的想法同V大 09/03 00:53