No.3ベストアンサー
- 回答日時:
先ほど書いたmanの内容の2000Mの表記ですが、あまりあてにならないようです。
WindowsVistaでは1500Mが限界、自宅のDebian(物理メモリは512M)では2600Mまでいけました。
やはり4Gが成功したのは、あくまでも私の経験として参考にしてもらうのがいいと思います。
もしもソフトだけではなくハードによっても左右されるとしたら、ブレードサーバで、めちゃくちゃ性能がよかったから可能だったのかもしれませんし。。
環境によって大きく左右されるようなので、質問者さんの環境で実際に試してしてみるのが一番早いと思います。
答えられることは以上です。。
何度も回答いただいて大変助かります。
SunのJDKではバージョン、VMの実装にかなり依存するようですね。
こちらもJRockitのメモリ制限を調べてたところ、
http://edocs.beasys.co.jp/e-docs/jrockit/geninfo …
「通常は、ヒープのページアウトが発生しない限り、大きなヒープによるオーバーヘッドは、ガベージコレクション頻度の増加や割り当て速度によって発生するオーバーヘッドよりも小さくてすみます。このように、ヒープサイズは、利用可能な物理メモリを超えない範囲でできるだけ大きく設定するのがよいでしょう。」
とありました。JRockitでは物理的な制限が占有メモリの制限となるように
解釈できるのですが、どうなんでしょうかね。実際に検証してみました。
4GBのマシンで初期占有メモリ、最大占有メモリを3GBで起動したところ、起動できませんでした。
[WARN ] Failed to create memory pool for code.
Could not create the Java virtual machine.
ログでは単にメモリが足りなかったからっぽいですね。
No.4
- 回答日時:
使う環境はLinux?Windows?どちらでしょうか?
OSは32bit?64bit?
OSが32bitなら2GBや3GB辺りにOS側の制限があるので注意しないと物理的にメモリを積んでいてもアプリ(JAVA)側で利用できませんよ
http://www.microsoft.com/japan/whdc/system/platf …
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.ph …
No.2
- 回答日時:
JDKは、Eclipseの亜種に付属のものを使い、Java1.4のプログラミングを行いました。
JREはSunのものだと思いますが、環境の構築はしていなかったので、定かではないです。
JRokitなるものがあるとは知りませんでした。
SunのJavaのmanを見てみましたが、ちょっと気になる一文を発見しました。
-Xmxn Specifies the maximum size, in bytes, of the memory allocation pool.
This value must be a multiple of 1024 greater than 2 MB. Append the let-
ter k or K to indicate kilobytes or the letter m or M to indicate
megabytes. The default value is 64MB. Examples:
-Xmx83886080
-Xmx81920k
-Xmx80m
On Solaris 7 and Solaris 8 SPARC platforms, the upper limit for this value is
approximately 4000m minus overhead amounts. On Solaris 2.6 and x86 platforms,
the upper limit is approximately 2000m minus overhead amounts. On Linux plat-
forms, the upper limit is approximately 2000m minus overhead amounts.
これによると上限が大体2000メガと書いてあるので、ひょっとすると4Gとかは無理かもしれませんね。(あくまでもSunの場合で、JRokitはわかりませんが)
私の経験上4Gは可と書きましたが、自信が無くなってきました。
その時の環境についての担当ではなかったので、ひょっとすると誤りかもしれません。
はっきりとしない答えで申し訳ないです。
JRockitについても、manを見れば一発で分かるのではないでしょうか。
JRockitですが、私の経験をお伝えしますと、
WebASP製品をJavaで動かしていて、JDKをSunのJDKからJRockitに移行した
ところパフォーマンスが30%向上しました。Tomcatや常駐プログラム、
クライアントサーバ方のサーバサイドプログラムにはかなりの向上が見込
めますよ。(私の経験上ですが。)
ちょっとJRockitのマニュアル見てみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語で、メモリを解放しないで...
-
VBAの配列サイズとメモリに関して
-
closeとメモリの開放について
-
大容量のメモリ確保をスワップ...
-
PIC 文字 を 数値に 変換
-
メモリのセグメント違反の解決...
-
プログラム実行中に強制終了
-
動的メモリとexit(C言語)
-
malloc関数の使い終わった後の...
-
main関数内のローカル変数につ...
-
メモリ不足
-
ノートパソコン CPU、メモリ、...
-
ファイルマッピング関数で失敗
-
ウインドウズのシステムにおけ...
-
値のコピーについて
-
解放と開放 漢字について
-
Apacheでバーチャルホストの最...
-
メモリマップ
-
エクセルのメモリ使用状況/Appl...
-
C言語初心者です。debug assert...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAの配列サイズとメモリに関して
-
C言語で、メモリを解放しないで...
-
C言語における再帰呼び出しの...
-
メモリ不足
-
「ヒープサイズの設定」て何?
-
動的メモリとexit(C言語)
-
エクセルのメモリ使用状況/Appl...
-
大容量のメモリ確保をスワップ...
-
【C言語】再帰が時間がかかる...
-
バッチファイルでの実行EXEのメ...
-
メモリのセグメント違反の解決...
-
「memcpy」と「strcpy」について
-
ExcelのVBAでメモリ解放できない
-
これて逆じゃないですか?
-
メモリを解放しないとどうなる?
-
ファイルマッピング関数で失敗
-
エクセルVBA 大容量CSVファイル...
-
メモリアロケーション異常の発...
-
エクセル キャッシュメモリー...
-
Apacheでバーチャルホストの最...
おすすめ情報