- PR -

未だに "Javaは遅い" と言う人を説得するには?

投稿者投稿内容
sgwrhrs
会議室デビュー日: 2001/08/10
投稿数: 3
投稿日時: 2001-08-10 10:59
過去にJavaを使用したことからか、
新しいものに対する抵抗からか
わかりませんが
"Javaは遅い"
という人(教授や学生など)を説得してある研究のために
Javaを使わせようと思っています。
あるものを作るその研究には、それをWeb上でも動かせるようにする、
3D表示する、
リアルタイムでサーバサイドを利用してWeb上で3D表示で、物理現象の干渉や回折などの複雑な処理を再現することなどを目的としています。
私は、Web上で動かす、と聞いたときJavaが一番良い、と即座に思ったのですが、"Javaは遅い"
という人たちはそれを理由に "Cでコーディングする"
と言っています。
最近、Javaの速度のJDKの進化によりそれほどCと変わらなくなって来たようですが、
新しいJDK1.4はさらに速くなり、"Javaは遅い"
と言っている人たちを説得する材料になるのでしょうか?


_________________
yamachan
会議室デビュー日: 2001/08/02
投稿数: 18
お住まい・勤務地: 東京に生息
投稿日時: 2001-08-10 12:30
Java の掲示板にふさわしい例ではありませんが、Crusoe というプロセッサの話。CMS というソフトで x86 の命令を解読して実行するので Java VM に似た概念だと思います。 (関係ないですが CMS for Java が欲しいです)

個人的に期待していたのは、ネイティブの Linux、つまり CMS で実現したカーネルです。でも Transmeta社の言うには、試作してみたけれどあまりパフォーマンスが上がらなかったとか。

Cコンパイラの最適化は実行する前に行う静的なものですよね?それに対してCMSは実行時に変換するので、動的な最適化を行っている、つまりよく使われる部分を認識してそこを効率化できる。なのでCMSによる変換のデメリットをある程度打ち消せるぐらいの効果が出た、と。

20-80 の法則、コードの20%の部分が80%の処理時間を使う。その20%を完全に把握できるのは実行時だけですね。(プロファイリング結果を参照するCコンパイラって聞いたこと無いので。最近はあるんですかね?)

最近の Java VM にはこの動的な変換技術が使われています。コードが繰り返し使われることの少ない、巨大なアプリケーションだと効果は薄いと思いますが、科学技術計算のほとんどは、シンプルなコードで長時間の計算を行うものが多いはず。けっこう早く動くことが期待できます。

・・・と、僕だったらこう説明するかなぁ? (笑
mk9
会議室デビュー日: 2001/07/27
投稿数: 17
投稿日時: 2001-08-10 13:50
Javaが遅いって問題は、たいていは作りの問題であることが多いと思いますが、いかがなものでしょうか?ただ、GUIを伴うものはJavaは遅いですね。3Dの描画も、CおよびJavaともに同じレベルのスキルが前提であれば(たいていはJavaの経験がなかったり、Cでバグが出まくったりと、なかなかに同じ品質が提供できないかと思います)、Cで書いたほうが「GUI」モノは速いです。ハードに近いところはJavaはつらいですから。ただ、ネットワークとI/O周りはJavaではかなり高速なんで、クラスライブラリの質の差でJavaが圧倒的に生産性高く、そこそこCに比しても高速なものができます。
GUI速度だけならCのほうが速いでしょうけど、その開発にどれだけのコストと時間かけるかってことになると、Javaで開発したほうが総合的にプラスかと思います。CでWEB書くのってつらい!Javaがむちゃんこ楽なだけに!
ちょっと抽象的ですね〜。玉虫色に、場合によって選ぼうってことになると思います。こういうのって残念ながら宗教みたいなもんなんで、説得は難しいんですよね。私なら間違いなくJavaでやると思いますが、C教徒の方の説得は難しいでしょうねぇ。がんばってください。
tasuku
常連さん
会議室デビュー日: 2001/08/11
投稿数: 28
投稿日時: 2001-08-11 11:32
Javaは、その仕組み上JVMをロードしてからClassを実行するので、簡単なテストプログラムを作って動かすと、(感覚的に)とっても遅いです。
仕掛けがわかっている人には、当たり前ですが、わかっていない人にとっては、「遅い」という評価になっても仕方ないでしょう。

意外と、こんなところが「遅い」の評価になっているんじゃないかと...。


[ メッセージ編集済み 編集者: tasuku 編集日時 2001-08-11 11:33 ]
JUN
会議室デビュー日: 2001/08/12
投稿数: 1
投稿日時: 2001-08-12 08:47
やはりJavaが遅いと言われる理由は、GUI部分が大きいですね。遅いというよりトロイですね。

描画系はそんなに遅くないのでは?
下記の右上に出るAppletは、昔私が作ったアニメーションですが、遅いcpuでも結構早く動作します。(3Dではないですけどね!)

http://www.njk.co.jp/otg/Study/JavaStudy/f270h.html

CAD製品なんかもJavaに移植されています。

最近では、アプリケーションサーバー環境でJavaが使われるようになり、この欠点も気にしない人たちも増えてきましたが、、


_________________


[ メッセージ編集済み 編集者: JUN 編集日時 2001-08-12 08:48 ]

[ メッセージ編集済み 編集者: JUN 編集日時 2001-08-12 08:56 ]
serious
常連さん
会議室デビュー日: 2001/08/22
投稿数: 31
投稿日時: 2001-08-22 09:49
JAVAはやっぱり遅いです。
JAVAで作られたJAVA開発ツールをよく見かけますが
VisualStudioと比べると全体的に使えるレベルではありません。スクロール時に残像が決まって残ったりします。私の使用しているPCはP4 1.5とAthlon1.2です。それでもダメです。やっぱりそういう見た目で判断されると思います。JSPもASPも対して変わらないしservletやbeanを使用してもISAPIの方が当然早いしASP.NETではそれも使わなくともC++,C#等でコンパイルした形で使用できるし、なんか言語自体ではなくそれを取り巻くものに問題があるのでは・・・
taka
会議室デビュー日: 2001/08/28
投稿数: 2
投稿日時: 2001-08-28 23:18
はじめまして
P4でもJavaIDEは使い物にならないのですか?
XP発売という事で、新しいパソコンに買い替えようと思い、期待していたのですが・・・
メモリーは関係ないのでしょうか?
よろしければ、メモリーの量も教えていただけませんか?
あと、IDEは何を使ってみたのでしょうか?
serious
常連さん
会議室デビュー日: 2001/08/22
投稿数: 31
投稿日時: 2001-08-30 09:39
メモリは両方とも512MBです。
VisualStudioのようにはいきません。

スキルアップ/キャリアアップ(JOB@IT)