お願いします。
fortran全くの初心者です。
今、他人が作ったプログラムに苦戦中です(ーー;)
どなたか助けてください。。
プログラムをコンパイル後、実行すると以下のメッセージが返ってきます。
exec(2):insufficient swap or memory available
そこで、以下のプログラムの一部を修正することで回避できました。
parameter
# (nxdm=10,nydm=5,nzdm=5,ipdim=4
# ,nxd6=nxdm+6,nyd6=nydm+6,nzd6=nzdm+6
# ,nvcdim=6*ipdim+4,iatdim=1
# ,nhfdim=nvcdim*(nvcdim+1)/2+3)
プログラム中のnxdm nydm nzdmの値を小さくすることで回避できました。
なんとなくの修正で回避していますが、メッセージとの関係がわかりません。
どこかを見たりすると定義する数字の限度とかわかるのでしょうか?
ほんの一部なのでわかりずらいと思いますが、こういうことがありえる!って
程度でもいいので教えてください。
お願いします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
OSや処理系は何をお使いでしょうか?
私の数少ない経験では、大型計算機やワークステーションはメモリ管理がしっかりしているので、実行するたびにエラーメッセージが変わるというようなことは起きにくいのですが、RUN/FORTRANのような教育環境で使われるパソコン用の処理系ですと、少し大きなプログラムを作るとすぐにメモリを食い尽くしたり、プログラムを終了してもメモリリーク(メモリをつかんだまま解放しないこと)が発生したり、モニタモードなんてものがあったりして、初心者の場合、実行環境が裏で動いているにもかかわらず、それを知らずに新たにモニタを起動してしまったりしてメモリを食い尽くすことはあります。OSがWindowsなら、その可能性は大きいです。
こういうことは、あまりあってはいけないことなのですが、出来の悪いソフトを動かすと遭遇します。残念ながら。
No.3
- 回答日時:
配列が(dimension文で)大きくとってあるのです。
コンパイル時は正常に済んでも、実行時に、他のウィンドウで別のプログラムが動作しているとかで、メモリ不足になったりならなかったりするのです。
No.2
- 回答日時:
たぶん、3次元配列を処理しているのだと思うのですが、そういうのは、メモリを大量に消費します。
エラーメッセージは、単にメモリが足りないということを意味しているので、配列を少なくすることでエラーを回避できるのは、道理にかなっていると思います。ちなみに、使えるメモリの量というものは、OSやコンパイラに依存するものなので、ソースだけではなんともいえません。はい。
この回答への補足
ありがとうございます。
もうちょっと教えていただけますか?
初めの実行で正常に実行できて、実行を繰り返すたびに
配列を少なくしないと実行が出来なくなってしまう。
実行のたびに使えるメモリ数が減ってしまうというのも
普通のことなのでしょうか?
お願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 3 2022/10/04 15:07
- その他(プログラミング・Web制作) FORTRAN77の配列(除算) 2 2023/02/01 14:34
- その他(プログラミング・Web制作) pythonのプログラムについての質問です。 1 2023/05/26 10:31
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
- Visual Basic(VBA) VBAプログラム初心者です。 以下の問題のプログラムを表記してみたのですが、実行するためには、どこを 4 2023/01/19 20:04
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Windows 10 パソコンが立ち上がりません 6 2022/10/06 00:30
- 仕事術・業務効率化 効率的な勉強方法(分野問わず)を教えてください 1 2023/08/16 01:33
- Java Java 配列<選挙> 4 2023/07/31 15:07
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAの配列サイズとメモリに関して
-
C言語で、メモリを解放しないで...
-
AIXでのプロセス使用メモリの最...
-
メモリが不足しています(VBA)
-
エクセルのメモリ使用状況/Appl...
-
C言語における再帰呼び出しの...
-
大容量のメモリ確保をスワップ...
-
EXCEL-VBAにてADOのレコードセ...
-
メモリを解放しないとどうなる?
-
GetAdapterInfoによりマックア...
-
C#のOutOfMemoryException発生...
-
mallocとfree
-
ちなみに、for (i = 0; str[i] ...
-
C言語:関数のメモリ上でのサイ...
-
クリスタルレポートでメモリ不...
-
メモリ不足
-
メモリの消費量について
-
ファミコンって8ビットしかない...
-
Javaでメモリ不足を引き起こす方法
-
【C言語】再帰が時間がかかる...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語で、メモリを解放しないで...
-
VBAの配列サイズとメモリに関して
-
【C言語】再帰が時間がかかる...
-
C言語における再帰呼び出しの...
-
メモリが不足しています(VBA)
-
メモリのセグメント違反の解決...
-
メモリ不足
-
エクセル キャッシュメモリー...
-
ファイルマッピング関数で失敗
-
動的メモリとexit(C言語)
-
エクセルVBA 大容量CSVファイル...
-
メモリの解放の仕方
-
「ヒープサイズの設定」て何?
-
EXCEL-VBAにてADOのレコードセ...
-
LoadLibraryしたらFreeLibrary
-
マインスイーパ、自動解析プロ...
-
バッチファイルでの実行EXEのメ...
-
C言語:関数のメモリ上でのサイ...
-
エクセルのメモリ使用状況/Appl...
-
大容量のメモリ確保をスワップ...
おすすめ情報