JavaでC++並みの実行速度を出すPGを組むスレ
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2007/02/18(日) 05:00:45どういう技術を駆使したり、どういうことをすればいいか考えるスレです。
0153デフォルトの名無しさん
2007/05/11(金) 23:32:09それのC++版があるんじゃないかと・・・・
0154デフォルトの名無しさん
2007/05/11(金) 23:35:36第3版なら持ってる。けど、仕様書じゃないね。
あと、それで仕様を確認する奴は殺しといた方が良いぞ。
0155デフォルトの名無しさん
2007/05/11(金) 23:36:40じゃあC++の仕様といえば何をみるのさ
0156デフォルトの名無しさん
2007/05/11(金) 23:42:240157デフォルトの名無しさん
2007/05/11(金) 23:45:16それに嫌気を指した香具師等がJavaという標準仕様を作ったんじゃなかったか?
0158デフォルトの名無しさん
2007/05/11(金) 23:46:15○同じC/C++というのが付いている処理系でも
0159デフォルトの名無しさん
2007/05/11(金) 23:47:550160デフォルトの名無しさん
2007/05/11(金) 23:49:270161デフォルトの名無しさん
2007/05/11(金) 23:51:250162デフォルトの名無しさん
2007/05/11(金) 23:52:32いちおー、>>151 の後半の疑問に答えてくれる人も継続して募集中。
0163デフォルトの名無しさん
2007/05/11(金) 23:53:22残念ながら自分で解明するしかないようだ
つーかそんなの知ったところで意味ないだろw
0164デフォルトの名無しさん
2007/05/11(金) 23:55:39pdf買うときに値段が 10倍ぐらい違うんだけど。
0165デフォルトの名無しさん
2007/05/11(金) 23:55:52http://www.jisc.go.jp/app/pager?%23jps.JPSH0090D:JPSO0020:/JPS/JPSO0090.jsp=&RKKNP_vJISJISNO=X3014
このJIS X 3014:2003は、ISO/IEC 14882:2003の翻訳。
0166デフォルトの名無しさん
2007/05/11(金) 23:57:17かってどおするよ
処理系の仕様を見ればいいんじゃねーの?
0167デフォルトの名無しさん
2007/05/11(金) 23:58:51処理系の仕様ってどこにあんの?
0168デフォルトの名無しさん
2007/05/12(土) 00:00:020169デフォルトの名無しさん
2007/05/12(土) 00:00:57あったとしても、コンパイラオプションとか
処理系依存のマクロ(__HOGE__)とかについてしか書いてないんじゃね?
0170デフォルトの名無しさん
2007/05/12(土) 00:01:39知りたい事は自分で調べろ
0171デフォルトの名無しさん
2007/05/12(土) 00:02:51と、思わなくも無い。
まぁ、場末のスレだしレベル低いのしか集まらんよね。俺も含めて。
0172デフォルトの名無しさん
2007/05/12(土) 00:03:450173デフォルトの名無しさん
2007/05/12(土) 00:05:030174デフォルトの名無しさん
2007/05/12(土) 00:12:360175デフォルトの名無しさん
2007/05/12(土) 00:39:52166が想像していたものかどうかは知らないが、例としてVisual C++のやつ。
http://msdn2.microsoft.com/en-us/library/dtefa218(VS.80).aspx
無論、規格が処理系定義と定めている事柄について、Visual C++の場合はどうなのかということも書いてある。
例)符号有り整数型の式に右シフト演算を行った場合の挙動
http://msdn2.microsoft.com/en-us/library/336xbhcz(VS.80).aspx
また、独自仕様の解説も当然付いている。
例)__if_exists キーワード
http://msdn2.microsoft.com/en-us/library/zxk0tw93(VS.80).aspx
ただし、全ての独自仕様がそうだと明記されていないのが玉に瑕。
例)整数リテラルに対する接尾辞の1つ「i64」
http://msdn2.microsoft.com/en-us/library/00a1awxf(VS.80).aspx
0176デフォルトの名無しさん
2007/05/12(土) 00:53:520177デフォルトの名無しさん
2007/05/12(土) 01:54:05C++の標準仕様を知ろうとするのは無駄だよ。
標準仕様に合わせて書いたところで、
皆が使っているC++コンパイラが、
標準仕様に100%対応していないんだから。
高い移植性を要求される場合には例外を使うな
なんていう話もあるしさ。
標準仕様よりも、
使おうとしているC++コンパイラの癖を知ったほうがいい。
>>142
んなわけない。
ルールが大杉。
>>145
すでに土台が継ぎ接ぎだらけだから、ゼロから作り直さないとダメでしょう。
ダメなものは、いくら磨いても手直ししても、ダメだよ。
0178デフォルトの名無しさん
2007/05/12(土) 07:45:51ある意味C++ありがとう
0179デフォルトの名無しさん
2007/05/12(土) 09:41:02だから、初期仕様のメモリ管理はグダグダ。
0180デフォルトの名無しさん
2007/05/12(土) 11:36:53実行環境が速くなってる分を引いたら、どのくらい速くなってるんよ?
0181デフォルトの名無しさん
2007/05/12(土) 14:12:07C++は必要に応じて何でもできる、その何でもありがいいんじゃないか。
0182デフォルトの名無しさん
2007/05/12(土) 15:14:090183デフォルトの名無しさん
2007/05/12(土) 15:18:10早くC++より早いJavaのコードをうpしろー
0184デフォルトの名無しさん
2007/05/12(土) 15:43:33必要に応じて何でもできる
裏を返せば
必要に応じて何でもしなきゃいけない
Windowsローカルの話で恐縮だが、
マイクロソフトのActiveXとかの土台になっているCOMに対応したプログラムを、
C++で書くと面倒くさいのよ。
Javaと同じことをするのに、大量のコードに注意を払う必要が出てくるのよ。
0185デフォルトの名無しさん
2007/05/12(土) 17:05:34当たり前だハゲ
っていうかCOMとJava比べてどーすんだよ
0186デフォルトの名無しさん
2007/05/12(土) 17:24:21> C++の標準仕様を知ろうとするのは無駄だよ。
標準規格を読んだ事がある人の発言だったら説得力もあるかもしらんけど……
ちなみに、
> 使おうとしているC++コンパイラの癖を知ったほうがいい。
の癖ってのも、どの程度知ってるん?
0187デフォルトの名無しさん
2007/05/12(土) 17:32:06JavaやるとC++がセピア色に見える
http://pc11.2ch.net/test/read.cgi/tech/1172317252/
0188デフォルトの名無しさん
2007/05/12(土) 17:34:23本当ですか。これ聴いて、Cを読む気になりません。
0189デフォルトの名無しさん
2007/05/12(土) 17:35:130190デフォルトの名無しさん
2007/05/12(土) 17:38:31いってらっしゃーい。もう帰って来なくて良いよ。
0191デフォルトの名無しさん
2007/05/12(土) 17:42:350192デフォルトの名無しさん
2007/05/12(土) 17:51:42両方とも厨しかいないから、ぶっちゃけどっちでも良いっす。
隔離スレとして機能してくれれば。
0193デフォルトの名無しさん
2007/05/12(土) 17:53:260194デフォルトの名無しさん
2007/05/12(土) 17:53:56スルーでお願いします。
0195デフォルトの名無しさん
2007/05/12(土) 17:58:59…ゴクリ
∩___∩ |
| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ >>192 両方とも厨しかいないから・・・
彡、 |∪| | >>193 もう少しまともな人はC++0xスレとか見
/ ∩ノ ⊃ ヽ J
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0196デフォルトの名無しさん
2007/05/12(土) 18:09:40C++でJavaに近いことをやろうとすると、COMのような仕組みが必要でしょ。
Windows向けにC++でプログラムを書く場合、
人様に使ってもらうDLLでは、C++のクラスをExportしてはいけない
という作法があるわけでさ。
>>186
↓の程度は知ってるよ
ttp://www.mozilla.org/hacking/portable-cpp.html
0197デフォルトの名無しさん
2007/05/12(土) 18:13:02ActiveX使えよ
0198デフォルトの名無しさん
2007/05/12(土) 18:19:12Javaの世界も同じだがな
0199デフォルトの名無しさん
2007/05/13(日) 23:53:450200デフォルトの名無しさん
2007/05/14(月) 22:03:570201デフォルトの名無しさん
2007/05/14(月) 22:33:55∩___∩ |
| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ >>200 ・・・ここのJava厨の程度が分かるわな
彡、 |∪| | |
/ ∩ノ ⊃ ヽ J
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0202デフォルトの名無しさん
2007/05/14(月) 22:36:100203デフォルトの名無しさん
2007/05/15(火) 00:08:22じゃあ何かコードはってよくまさん
0204デフォルトの名無しさん
2007/05/15(火) 00:11:28∩___∩ |
| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ >>203 じゃあ何かコードはってよくまさん
彡、 |∪| | |
/ ∩ノ ⊃ ヽ J
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0205デフォルトの名無しさん
2007/05/15(火) 00:12:000206デフォルトの名無しさん
2007/05/15(火) 00:27:32くま
くま
くま
0207デフォルトの名無しさん
2007/05/15(火) 00:30:350208デフォルトの名無しさん
2007/05/15(火) 00:46:19・消費メモリ
をどうにかしてくれ
0209デフォルトの名無しさん
2007/05/15(火) 00:50:55消費メモリ:メモリ増やせ
0210デフォルトの名無しさん
2007/05/15(火) 00:53:23つ 高速HDD or 大容量フラッシュメモリ
つ 増設メモリ
0211デフォルトの名無しさん
2007/05/15(火) 00:57:59ただ、実際に買われるハードがサンのモノじゃないところが、m9(^Д^) プギャー!! ってとこだけどw
0212デフォルトの名無しさん
2007/05/15(火) 01:06:340213デフォルトの名無しさん
2007/05/15(火) 01:08:500214デフォルトの名無しさん
2007/05/15(火) 01:16:440215デフォルトの名無しさん
2007/05/15(火) 01:19:420216デフォルトの名無しさん
2007/05/15(火) 01:56:59IBMには…惨敗だろうな
0217デフォルトの名無しさん
2007/05/15(火) 02:27:26まず、コーディングが速い。
C++よりも自由度が低いということは、考える余地がないということで、どんどん書ける。
次に、実行速度が速い。
まず、Javaの内蔵の文字列クラスが良くできていて速かった。
C++で参照カウンタを使って寿命を管理するオブジェクトを大量に構築・破棄するようなものも結構速かった。
そして何よりも、コーディングが速いので、その分、アルゴリズムを工夫するのに時間が使えて、より速くできた。
0218デフォルトの名無しさん
2007/05/15(火) 05:50:170219デフォルトの名無しさん
2007/05/15(火) 06:58:18彼女も出来たし。C++屋だけど。
0220デフォルトの名無しさん
2007/05/15(火) 07:35:140221デフォルトの名無しさん
2007/05/15(火) 07:49:08いろんな意味で
0222デフォルトの名無しさん
2007/05/15(火) 12:03:580223デフォルトの名無しさん
2007/05/15(火) 13:08:330224デフォルトの名無しさん
2007/05/15(火) 13:16:440225デフォルトの名無しさん
2007/05/15(火) 13:25:38ネイティブのVMはJavaで書けないがJavaで書いたVMは可能だろ?
0226デフォルトの名無しさん
2007/05/15(火) 13:28:530227デフォルトの名無しさん
2007/05/15(火) 13:29:420228デフォルトの名無しさん
2007/05/15(火) 13:34:55確かに、x86で動くx86エミュレータみたいなもんか。 単に殆どの命令はそのまま実行させるという
0229デフォルトの名無しさん
2007/05/15(火) 16:05:11確かに可能だろうが、それってメリットあるのか?
デバッグ専用に作れば使いようはあるかもしれないが
0230デフォルトの名無しさん
2007/05/15(火) 16:34:55事実上は不可能じゃないか。
VMの上にVMを乗せて、メモリ管理やGCはどーするのよ?
0231デフォルトの名無しさん
2007/05/15(火) 16:39:27すこし上のほうで、
静的な最適化よりも動的な最適化のほうが速くなる
という話があったろうに。
0232デフォルトの名無しさん
2007/05/15(火) 16:40:43そんなにC++が速いと思うのなら、
JavaからC++へのコード・トランスレータを使えよ。
0233デフォルトの名無しさん
2007/05/15(火) 16:42:13作れるか作れないか、だけで言えば
Java+極一部アセンブラでOS作ってる人がいるんだから、
Java+極一部アセンブラとかでVM作れそうな感じもするけど。
0234デフォルトの名無しさん
2007/05/15(火) 17:25:01そんなあなたにGCJ
0235デフォルトの名無しさん
2007/05/15(火) 17:47:40隔離スレだから仕方ないが
0236デフォルトの名無しさん
2007/05/15(火) 19:03:16x86上で比較すると、まだインテルのコンパイラで最適化した方が速いと聞く。
0237デフォルトの名無しさん
2007/05/15(火) 19:26:270238デフォルトの名無しさん
2007/05/15(火) 19:27:45機械語モジュールだろ
0239デフォルトの名無しさん
2007/05/15(火) 19:32:230240デフォルトの名無しさん
2007/05/15(火) 19:38:20当たり前だろうに。
0241デフォルトの名無しさん
2007/05/15(火) 19:41:11GCC自体が遅いからイヤ
0242デフォルトの名無しさん
2007/05/15(火) 20:45:160243デフォルトの名無しさん
2007/05/15(火) 20:48:55VMの変換するマシン語の最適化も人知では限界ということ
ジャワ厨の理論はそもそもから破綻しとるがな
0244デフォルトの名無しさん
2007/05/15(火) 20:51:03Intelの場合命令の並び替えは自分のCPUに特化出来るんだしJavaはMMXとか使えないんだから当然。
そうじゃなくて、もっと計算からかけ離れた業務アプリには向いてるんじゃないの?
ポリモフィズムを駆使したら、スコープ内で継承先が見えるような小さなルーチン以外はどうあがいたって静的には最適化出来ないの。JITでなければ不可能。
Expression Templateを動的にしてみれば分りやすい。
0245デフォルトの名無しさん
2007/05/15(火) 21:45:010246デフォルトの名無しさん
2007/05/15(火) 22:00:09こんな程度で最適化を語られてもねー。
バイトコードがそのまま動いてるとでも思ってるの?
0247デフォルトの名無しさん
2007/05/15(火) 22:01:290248デフォルトの名無しさん
2007/05/15(火) 22:02:390249デフォルトの名無しさん
2007/05/15(火) 22:04:040250デフォルトの名無しさん
2007/05/15(火) 22:04:580251デフォルトの名無しさん
2007/05/15(火) 22:08:30機械語で出来てると思ってる。
C++で書かれていると思ってる。
それが何か関係してくるの?
Perlでバイトコードを解釈してJITしてもいいんじゃないの?
まあ解釈が遅過ぎて足引っ張ると思うが。
0252デフォルトの名無しさん
2007/05/15(火) 22:16:50■ このスレッドは過去ログ倉庫に格納されています