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のマニュアル見てみます。
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 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CPU・メモリ・マザーボード 質問お願いします 「「RAM2GB+拡張4GB」などと書いてあるのは、搭載されているメモリ(RAM) 6 2023/08/28 12:31
- ノートパソコン ノートパソコンに増設したメモリをWindowsに認識させる方法 5 2022/08/24 14:03
- CPU・メモリ・マザーボード メモリの増設について 6 2022/12/28 06:41
- CPU・メモリ・マザーボード ゲーミングpcのファンのことについて教えて欲しいです。 6 2023/03/05 07:44
- その他(パソコン・周辺機器) Windowsマシン。USBタップの「自動切れ、再接続」がうざい。解決策は? 7 2023/01/25 08:27
- ノートパソコン パソコンの買い換え アドバイスください。初心者です。 ・長く使いたいため 新品 Windows11ノ 4 2022/04/05 23:12
- CPU・メモリ・マザーボード Windows10 64bitパソコンのメモリ 4GBから8GBへ増設 11 2023/01/25 18:20
- CPU・メモリ・マザーボード Windows11アップデート後の不具合(メモリ不足)について 9 2023/01/04 11:34
- その他(コンピューター・テクノロジー) USBメモリのアクセスの遅い部分を避けて利用する方法 5 2022/10/18 13:32
- Windows 10 実装メモリとタスクマネージャーのメモリ使用量不一致について 4 2022/12/15 01:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAの配列サイズとメモリに関して
-
C言語で、メモリを解放しないで...
-
sil_rew_memのメモリアクセスに...
-
【C言語】再帰が時間がかかる...
-
C言語初心者です。debug assert...
-
エクセルのメモリ使用状況/Appl...
-
マインスイーパ、自動解析プロ...
-
メモリを解放しないとどうなる?
-
バッチファイルでの実行EXEのメ...
-
メモリ不足
-
ターボDelphi 独自カーソルの設定
-
C言語における再帰呼び出しの...
-
メモリのセグメント違反の解決...
-
メモリの解放の仕方
-
VB.netでUSBメモリの固有I...
-
GPUプログラミング時の表示用GPU
-
EXCEL-VBAにてADOのレコードセ...
-
ExitProcessの関数コールについ...
-
エクセルVBA 大容量CSVファイル...
-
C,C++プログラムの強制終了時の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語で、メモリを解放しないで...
-
VBAの配列サイズとメモリに関して
-
「ヒープサイズの設定」て何?
-
C言語における再帰呼び出しの...
-
エクセルVBA 大容量CSVファイル...
-
動的メモリとexit(C言語)
-
エクセルのメモリ使用状況/Appl...
-
メモリが不足しています(VBA)
-
ファイルマッピング関数で失敗
-
大容量のメモリ確保をスワップ...
-
メモリのセグメント違反の解決...
-
EXCEL-VBAにてADOのレコードセ...
-
メモリ不足
-
エクセル キャッシュメモリー...
-
【C言語】再帰が時間がかかる...
-
C#のOutOfMemoryException発生...
-
closeとメモリの開放について
-
バッチファイルでの実行EXEのメ...
-
メモリの解放について VB6 VBA
-
「memcpy」と「strcpy」について
おすすめ情報