トップページtech
920コメント252KB

Microsoft Visual C++ Toolkit 2003 質問箱

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん05/03/01 04:24:15
本家
http://msdn.microsoft.com/visualc/vctoolkit2003/

関連スレなどは>>2以降で
0464デフォルトの名無しさん2005/10/27(木) 03:32:00
「精度」と言う単語を誤用している人間が居るので話がややこしくなる。
0465デフォルトの名無しさん2005/10/27(木) 09:01:26
>>464
俺にはどうややこしくなるのかさっぱりわからんが?
何と混同するっていうの?
0466デフォルトの名無しさん2005/10/27(木) 09:35:51
>>464
ちょっと、どう誤用なのか説明してくれ
http://www.google.com/search?hl=ja&lr=lang_ja&safe=off&ie=sjis&oe=sjis&q=%97L%8C%F8%90%B8%93x
0467デフォルトの名無しさん2005/10/27(木) 10:43:07
>>466
計算精度、有効桁数と言えってことだろうね。
でも誰も意味を取り違えたりしないって。
はっきり言って議論に水さしする、瑣末にこだわる嫌な人って思われるさ。
0468デフォルトの名無しさん2005/10/27(木) 13:03:07
そんな事より >>462 の言っている事がサッパリ分からないヘタレな俺に
詳しく説明してくれまいか
0469デフォルトの名無しさん2005/10/27(木) 14:09:50
>>468
MPEGのデコーダーでそんなのがあった気がする。
32bit-MMXだと精度不足になるだとか。
俺がよく知ってる事例だと、YUV->RGB変換でのMMX計算とかかな?
04704682005/10/27(木) 15:38:00
>>469 さんありがとぅ、でもそう言うのじゃないんです

>>462
> 8bitで表わせる範囲の数(0-255)であっても
> 16bit(WORD)で演算するのはちょっと精度不足だよ。
この場合、最大8bitの整数同士の演算結果を16bitで表すのだから
オーバーフローやアンダーフローも起こり得ないのに「精度不足」
と言うのが分からない

> せいぜい10bit程度しかシフトできないんで、DWORDで計算するのとでは
> 誤差の出方が違ってくる。
整数演算の結果をなぜシフトする必要があるのか?整数演算での誤差?


まさかとは思うが、固定小数点での演算を整数演算と言っているの?
0471デフォルトの名無しさん2005/10/27(木) 16:53:12
「どんな演算をするか」を定義しないで話を進めても駄
目だろ。たとえば、Nbit同士の加算なら2Nbitのワーク
スペースで2^N回実行可能。

a_i, b_i をNbitとして c = Σa_i b_i を並列でやるな
ら各乗算結果は2Nbit幅必要。加算結果はΣの数に依る。

バタフライ演算とかでcを次段の乗算係数として用いる
場合、誤差を出さないよう幅を拡張したルーチンに切り
替える場合もあるし、誤差が許容範囲ならNbit演算ルー
チンを使いまわすためにNbitに丸めることもある。

但し、ただ丸めただけでは誤差がひどいので最上位ビッ
トがセットされている状態に丸め(もちろん四捨五入し
た後)、何bitシフトしたかを覚えておいたりする(仮
想的な浮動小数点数のようなもの)。

アルゴリズムによっては上記ビット数を厳密に守らなく
ても良い成果を出す方法もある(加減算を交互に配置す
る、など)。

MMXで誤差無くす方法なんてなんぼでもあるだろ。
面倒いけど。
0472デフォルトの名無しさん2005/10/27(木) 21:41:47
どうしていつの間にか整数演算になっちゃったんだろう?
MPEG音声圧縮の話なんだろ、元々は。
0473デフォルトの名無しさん2005/10/27(木) 21:45:42
しかもVCTKには関係ない話題だ。
なんかVC++のよろず質問スレと勘違いされている。
0474デフォルトの名無しさん2005/10/28(金) 02:05:29
元の質問はスレ違いでもないと思うけど
0475デフォルトの名無しさん2005/10/28(金) 17:08:48
VCTK2003でプリコンパイル済みヘッダ使う場合、/Ycと/YuのオプションつければOKですか?
あと、/Yuでパス指定する場合はフルパスじゃないとだめですか?

今までVC++6.0ばっかり使ってきたんで、この辺さっぱりわからないですorz
0476デフォルトの名無しさん2005/10/28(金) 17:26:38
VC++6でプロジェクト作ったらわかりそうなもんだが
0477デフォルトの名無しさん2005/10/28(金) 20:17:31
>>475
VC6のプロジェクトの設定(プロパティかも)をじっくり見ろ。
0478デフォルトの名無しさん2005/10/28(金) 21:15:57
ブルジョワどもめ。
0479デフォルトの名無しさん2005/10/29(土) 09:31:16
あるえ
0480デフォルトの名無しさん2005/11/01(火) 20:43:08
>>459
Pentium4のデータだが、全命令でそうだとは言わないが、
大体、MMXは汎用IA32命令の4倍の時間がかかるよ。
これでも、嘘つくなってって言うのか?

汎用命令
MOV レイテンシ 0.5 スループット 0.5
ADD レイテンシ 0.5 スループット 0.5

MMX整数命令
MOVD mm,r32 レイテンシ 2 スループット 1
MOVD r32,mm レイテンシ 5 スループット 1
PADDD/PANDなど レイテンシ 2 スループット 1
0481デフォルトの名無しさん2005/11/01(火) 21:12:47
>>480
レイテンシの意味わかってる?
0482デフォルトの名無しさん2005/11/01(火) 22:29:13
レイテンシ:
 IA-32 命令を構成しているすべてのマイクロオペレーション
 (μOP) の実行が実行コアで完了するのに要するクロック・サイクル数。
スループット:
 発行ポートが同じ命令を再度自由に受け入れられるようにな
 るまで待たなければならないクロック・サイクル数。多くの
 IA-32 命令は、命令のスループットのほうがレイテンシより
 もかなり小さい。
0483デフォルトの名無しさん2005/11/01(火) 22:42:53
いかにレイテンシを隠蔽するかが問題。
・実行コアへのμOPの流入量を最大にする
・インターリーブしてリソースの競合(ポート、実行ユニット)を避ける。
・クリティカルパス上の依存関係チェーンのレイテンシを最小にする。

俺はスループットは殆ど考慮しない。
0484デフォルトの名無しさん2005/11/02(水) 00:59:59
ALUとSSE2を同時に回せ
0485デフォルトの名無しさん2005/11/02(水) 11:06:09
アルゴリズムレベルから最適化すべし。
終了。
0486デフォルトの名無しさん2005/11/23(水) 02:26:10
ハイキョってるなあ・・・
0487デフォルトの名無しさん2005/11/23(水) 03:14:05
まぁ2005Express出ちゃったしねぇ…。
0488デフォルトの名無しさん2005/11/23(水) 04:57:20
Microsoft Visual C++ Toolkit 2005は出るの?
0489デフォルトの名無しさん2005/11/23(水) 09:26:01
そのうち
0490デフォルトの名無しさん2005/11/23(水) 11:34:34
Expressがこのままフリー提供になってVCTKの代わりになっちゃうんじゃねぇかしら。
0491デフォルトの名無しさん2005/11/23(水) 12:10:04
フル機能を持つMicrosoft Visual C++ Toolkit 2005が出るとしたら
8Pro以上がそれなりに無意味になるな。
Expressか、せいぜいクラスデザイナのあるStandard辺りを買っておけば良いわけだ。

そんなわけでやっぱりVCTK2005は出さないかもなぁ…。
0492デフォルトの名無しさん2005/11/23(水) 12:11:52
いやでもそれをやったのがVCTK2003+VC7 Standardなのか
とはいえそれも他社に押される形だったし、
最初からその辺考えられる今回は無理かねぇ。

それとも一度やったことは続けるのかね。
0493デフォルトの名無しさん2005/11/23(水) 19:50:02
VCTKを無償公開したときの口実に、2003stdのユーザにも最適化コンパイラを
提供するとかいうのがあったはずなので、VCTK2005は出ないと思う。
たぶん>>490の通りになるかと。
0494デフォルトの名無しさん2005/11/23(水) 20:28:43
どうせ2005 Expressも今までと同等の最適化はある。
0495デフォルトの名無しさん2005/11/23(水) 23:00:03
>>493
その理屈だと、Express、2005stdユーザにもPGOコンパイラを、ってならないのか
0496デフォルトの名無しさん2005/11/23(水) 23:49:47
PGOはコンパイラ単体の機能実現できないんだし、いいんじゃね?
さすがにPGO欲しいなら買えばいいとおもうんだが。
0497デフォルトの名無しさん2005/11/23(水) 23:50:28
修正:

PGOはコンパイラ単体の機能じゃ実現できないんだし、いいんじゃね?
さすがにPGO欲しいなら買えばいいとおもうんだが。
0498デフォルトの名無しさん2005/11/23(水) 23:54:46
> PGOはコンパイラ単体の機能じゃ実現できない
ほんとかよ
0499デフォルトの名無しさん2005/11/24(木) 01:02:33
そらそうだろ。
プロファイル結果に基づいて最適化する機能なんだから。
プロファイラがなくてどうするよ。
0500デフォルトの名無しさん2005/11/24(木) 01:09:16
なんでVCTKがコンパイラ単体の機能しか付かない事になってんのよ
0501デフォルトの名無しさん2005/11/24(木) 01:13:15
ttp://www.microsoft.com/japan/msdn/vs/vc/profileguidedoptimization.asp
ここを見る限りコンパイラ単体の機能じゃないな。
プロファイラって言うよりリンカが特別なコードを挿入して
一度アプリケーションを実行することで、PGOに必要なファイル(.pgc)を生成。
その後再コンパイルする時に、プロファイル結果(.pgc)を利用するという動作みたい。
ってことでPGOを行うには、コンパイラとリンカが対応する物の必要がありそう。
0502デフォルトの名無しさん2005/11/24(木) 01:20:13
>>500
それもそうだな。
495のPGOコンパイラって表現に反応しすぎた。失礼。

まぁどの道ExpressじゃPGOは利用できないだろうしなぁ。
VCに限って言えば、今回の目玉だろうしなぁこれ。
0503デフォルトの名無しさん2005/11/24(木) 01:23:28
うんだからVCTK2003にもリンカくらいついているという話
0504デフォルトの名無しさん2005/11/24(木) 01:25:10
おっと503は501宛ね
0505デフォルトの名無しさん2005/11/24(木) 03:13:55
っていうか2003で十分じゃない?おまいらも.NETなんてどうでもいいんだべ?
0506デフォルトの名無しさん2005/11/24(木) 04:01:37
VCTK+WinSDKでは、リソース関連のヘッダが不足してて苦労しない?
どうしてる?
0507デフォルトの名無しさん2005/11/24(木) 04:46:26
どうせ自分で組むので気にならない
0508デフォルトの名無しさん2005/11/24(木) 07:54:08
ぷらっとふぉ〜むSDKとだいれくとえっきすSDKをフルインスコしても無理か?
0509デフォルトの名無しさん2005/11/24(木) 15:52:54
Expressには単純なプロファイラも付かないの?
0510デフォルトの名無しさん2005/11/24(木) 16:29:26
Express期限があるから安心して使えねえ
0511デフォルトの名無しさん2005/11/29(火) 01:11:45
これでコンパイルしたLAMEのバイナリでエンコしたMP3ファイルと
公式(?)バイナリでエンコしたMP3ファイルが一致しない件ですが

cl のオプションで浮動小数点の精度に関するものは
/Op と /QIfist しかないよう。どちらか片方と両方同時も
試しましたがやはり一致しませんでした。

こんな状況ではLAMEで作ったMP3の音質をああだこおだ議論している
人たちがうさんくさくて仕方がありません。
0512デフォルトの名無しさん2005/11/29(火) 01:44:20
>>440 の方? 試したコンパイラはこれ?
ICL (RareWareで配布されているバイナリ)
Services for Unixに付属 gcc-3.3
VB.NET Standard付属のcl.exe
MSVC 2003

このうち MSVC 2003 のだけ結果が違うの?
0513デフォルトの名無しさん2005/11/30(水) 00:45:56
以前試したときはSFUのとICLのは一致していたのですが曲によっては
一致しないらしく今回は一致しませんでした。つまりすべて一致せずです。
0514デフォルトの名無しさん2005/12/12(月) 17:18:24
素直にFIIS console(v3以降)CBR320Kで。
0515デフォルトの名無しさん2005/12/13(火) 05:35:50
Platform SDKのサンプルのVListVwをmakeしようとすると

LINK : fatal error LNK1104: cannot open file 'LIBCMTD.lib'
NMAKE : fatal error U1077: 'link' : return code '0x450'
Stop.
ってエラーが出ます。助けてください
0516デフォルトの名無しさん2005/12/13(火) 14:58:19
>>515
どっか弄った?
どうやってmakeした?nmake?
そのままmakeしたのならデバッグバージョンのlibmtを使うとは思えないんだけど?
VCTK2003にはlibmtdは付属してないんでね。
まあ何にしろretailビルドに変えてみては。
0517デフォルトの名無しさん2005/12/13(火) 15:19:03
retailビルドって何か新鮮だな、bulkビルドみたいな
0518デフォルトの名無しさん2005/12/13(火) 15:39:39
>>516
nmake -f makefile
でやったのだけど・・・
0519デフォルトの名無しさん2005/12/13(火) 16:07:35
>>518
えっと、じゃあ環境を変えて再チャレンジ。
Set Windows XP 32-bit Build Environment (Retail)
からやってみそ。
0520デフォルトの名無しさん2005/12/13(火) 16:19:07
あと
>>517
Debug Build / Retail Build
っていつも言ってるけど、そんなに新鮮に聞こえるほど
ローカルな用語だったの?
0521デフォルトの名無しさん2005/12/13(火) 16:32:16
普通はdebug/releaseを使うだろ
0522デフォルトの名無しさん2005/12/13(火) 16:34:57
Retailなんて初めて聞いたな
PCパーツか
0523デフォルトの名無しさん2005/12/13(火) 16:54:47
そんなこと無いだろ。
debug/retailって使うよ。
スイッチだって/debugと/retailだし。
debug/releaseというよりdebug/retailというほうがメジャーだよ。
確かに、Visual Studioではdebug/releaseだったけど。
0524デフォルトの名無しさん2005/12/13(火) 19:10:16
debug/release の検索結果 約 33,500 件中 1 - 10 件目 (0.19 秒)

debug/retail の検索結果 約 422 件中 1 - 10 件目 (0.07 秒)
0525デフォルトの名無しさん2005/12/13(火) 19:29:59
debug release 約 7,160,000 件
debug retail 約 482,000 件

そりゃまあ検索したらreleaseが多いのは当然だろう。
Visual Studio使ってる奴が一杯いるから。
でもWindows VisualStudioを除くとどうなることやら。
同じWindowsでもCEとかembeddingだとまた違ってくるぞ。
0526デフォルトの名無しさん2005/12/13(火) 19:40:08
retail版ならおかしくないが、retailビルドって変な気がする
0527デフォルトの名無しさん2005/12/13(火) 19:44:50
>>525
> Visual Studio使ってる奴が一杯いるから。
いっぱいいるならdebug/releaseの方がメジャーだろうに。

参考までに
debug release -Visual -Studio の検索結果 約 4,780,000 件中 1 - 10 件目 (0.30 秒)
debug retail -Visual -Studio の検索結果 約 286,000 件中 1 - 10 件目 (0.26 秒)
0528デフォルトの名無しさん2005/12/13(火) 20:00:59
なんか急に強気になったよな。>>520と同一人物とは思えないくらい。
まさか複数居るわけ無いし。

debug/release組は、複数居るのは確かだけど。
0529デフォルトの名無しさん2005/12/13(火) 20:05:46
retail という用語には、商業上の「小売り」の意味合いが出てくる。
有償・無償の意味を一切もたない release の方が、Linuxなどでも使うべき汎用的な用語だと思う。
そんなわけでreleaseの勝利。

以下、スレテーマに戻る
0530デフォルトの名無しさん2005/12/13(火) 20:17:35
なんでもいいよ。バグが入ってることには変わりないんだから。
0531デフォルトの名無しさん2005/12/13(火) 20:41:58
>>519
ありがとうございます凡ミスしてますた。
setenv /XP32 /RETAIL
で起動してみたらエラーが出てPlatform SDKのインストール作業をしてなかったことに気がつきますた(HDに入っているだけの状態)。
パスは正常に通してあって、今まで何事もなく使ってたので大丈夫かと思ってました。

setenv /XP32 /RETAIL
nmake /f makefile

で無事にいけますたありがとうございます。
0532デフォルトの名無しさん2005/12/13(火) 20:45:42
Microsoft Platform SDK\Samples\Begin\Simple
ぼっきしますた
0533デフォルトの名無しさん2005/12/13(火) 21:03:56
release build の検索結果 約 134,000,000 件
retail build の検索結果 約 34,800,000 件
約4倍の差だけど、逆にたった4倍しか差が無いのって思わん?>みんな
0534デフォルトの名無しさん2005/12/13(火) 21:08:47
"release build" 272000
"retail build" 11200
0535デフォルトの名無しさん2005/12/13(火) 21:11:07
>>534
俺の言いたいことを見事に表してくれたな
533に意味が分かるだろうか
05365332005/12/13(火) 21:15:15
>>535
なんか俺に含むところでもあるの?
0537デフォルトの名無しさん2005/12/13(火) 21:19:06
"release build" の検索結果のうち microsoft.com からの約 528 件
"retail build" の検索結果のうち microsoft.com からの約 127 件
debug release の検索結果のうち microsoft.com からの約 66,100 件
debug retail の検索結果のうち microsoft.com からの約 11,000 件
0538デフォルトの名無しさん2005/12/13(火) 21:19:43
>>536
(ノ∀`) アチャー
0539デフォルトの名無しさん2005/12/13(火) 21:22:47
たった27倍の差しか無いってさ。

例えば
microsoft+buildだと226,000件
linux+buildだと375,000件
こういうのと同列で
retail+buildやrelease+buildの件数を比較しても
全然意味無いんだよ。

release buildとretail buildという熟語同士で比較するならともかく、ね。
0540デフォルトの名無しさん2005/12/13(火) 21:29:58
まあMSはリテール版のWindowsも作っているわけで。
リテール版Windowsの対義語はデバッグ版Windowsなのかな、と。

日本語(カタカナ)になるとニュアンスが変わるのかもしれないけどね。
0541デフォルトの名無しさん2005/12/13(火) 21:43:39
でもさあ、確かにMSも"retail build"って単語使ってるね。
0542デフォルトの名無しさん2005/12/13(火) 21:47:21
まあ何はともあれ、retailビルドってのをはじめて聞いただなどとほざく輩はおよびじゃないな。
0543デフォルトの名無しさん2005/12/13(火) 21:54:07
retail buildってrelease buildを標準語とすると、広島弁みたいなもんでしょ?
0544デフォルトの名無しさん2005/12/13(火) 21:55:17
失笑はしたけど意味は通じたしな。
0545デフォルトの名無しさん2005/12/13(火) 22:03:13
retail <-> bulk
って直結する短絡的な頭は幸せだなあ。
0546デフォルトの名無しさん2005/12/13(火) 22:13:26
どこにbulkなんて書いてあるんだろう・・・
0547デフォルトの名無しさん2005/12/13(火) 22:20:00
>>546
ちゃんと見直せよ。最初にあっただろ。

数が少なかろうがMSがretail bulidって言葉を使ってる限り
それを笑うのはいかがなもんだろうか?
逆に己の知識の狭さを披露してることになりはしないのだろうか?
一つのことしか許容できないってのは精神の未熟を示してるぞ。
なので、俺はどっち派でも無いのである。
0548デフォルトの名無しさん2005/12/14(水) 00:03:33
>>543
いや、標準語、公用語に対する東京弁みたいなものがより近い。
0549デフォルトの名無しさん2005/12/14(水) 00:04:12
>>547
俺はどっちでもいい派
0550デフォルトの名無しさん2005/12/14(水) 00:11:50
>>547
そういう連中の釣り行為を放置できないお前の精神も未熟だと思うぞ。
そろそろ終わってくれないか、ビルド呼称に関する口論。
0551デフォルトの名無しさん2005/12/14(水) 00:33:46
retailビルドだって言ってた奴のおかげで大元の質問者は解決したようで役立ってるんだけども
その他の奴ってしょうもない奴ばっかりだな。
0552デフォルトの名無しさん2005/12/14(水) 00:45:52
今回のビルド騒ぎでこのスレにも結構人がいるんだってことが判ったよ。
なんかRetail擁護派も一人だけじゃ無かったようだし。
0553デフォルトの名無しさん2005/12/14(水) 00:52:48
VC.NET買い控えたほぼ全てのWin32・Cプログラマが見てるよ。
0554デフォルトの名無しさん2005/12/14(水) 09:03:20
コマンドライン見ると/retailがあるからいいじゃない
0555デフォルトの名無しさん2005/12/14(水) 10:17:10
パラメタなんかみんなretailだよね。
/releaseなんて指定するものは無いのに。
05565172005/12/14(水) 13:24:28
うぉぉ、なんだこの展開w

パラにあるのはここの住人なら知ってるっしょ
ビルド名として耳慣れないってだけで笑ったつもりは無いんだが…いくらなんでも過剰反応すぎないかw
0557デフォルトの名無しさん2005/12/14(水) 13:50:31
この業界、変なプライド持ってる奴が結構いるからな。
くだらないことで、しばしば人間関係が最悪になる・・・・。
0558デフォルトの名無しさん2005/12/14(水) 15:28:02
研究室の教官が昔を美化した話しててひいた
しかも学生の前で平気で昔のアングラの話とかするの

ほんとちっちゃなことで人間関係は最悪になります
0559デフォルトの名無しさん2005/12/14(水) 17:09:47
単に突っこみやすい話題だったってだけでしょ。
いつもは閑散としてるが、ここ見てる人は結構居るんだね。
0560デフォルトの名無しさん2005/12/14(水) 17:30:10
>>556
なんつーか、俺が見るに、周りが騒いでるだけで最初の人はそれっきり沈黙を守ってると思うんだが?
0561デフォルトの名無しさん2005/12/14(水) 17:33:52
俺が見るにそうでも無さそうだ
0562デフォルトの名無しさん2005/12/14(水) 17:41:34
まあ、あくまで俺が読んだ感想だしね。
最初の人の性格からだと、きっと解決したことに対して、おめでとう、ってレスしそうな感じを受けたもんで。
0563デフォルトの名無しさん2005/12/14(水) 18:10:31
釣り師は、retailという表現がメジャーな存在ということを知りつつ、わざと煽ってたのに、
それに乗せられ続ける異常者がいたことが原因だな。

コマンドライン開発環境のスレに書き込みする者が、retailを知らないわけないだろ。
あまりに必死すぎてretail支持者の精神疾患を疑いたくなる。マジで病院行け。
■ このスレッドは過去ログ倉庫に格納されています