変数の容量について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
キャラクタ

変数の容量について

#1

投稿記事 by キャラクタ » 12年前

変数の容量を節約するために、容量の小さい変数型に変えたら計算時間が長くなる事があるようですが何故ですか?分かる方いらっしゃいますか?

例えば16バイトの変数を使っていたが、4バイト変数に変えて計算したら計算時間が長くなったというようなケースです。

アバター
みけCAT
記事: 6734
登録日時: 15年前
住所: 千葉県
連絡を取る:

Re: 変数の容量について

#2

投稿記事 by みけCAT » 12年前

C言語やJavaの基本型の中で、1個のサイズが16バイトのものを知らないのですが、どの言語の何という型でしょうか?

計算時間が長くなる原因は、そのプログラム次第だと思います。
例えば、スタックに格納するときに型変換が生じる、CPUで扱う基本的なサイズでないから、などの理由が考えられると思います。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

キャラクタ

Re: 変数の容量について

#3

投稿記事 by キャラクタ » 12年前

すいません、バイト数は例えです。例えが悪かったですかね。
現実的には16ビットですかね。
原因はそれくらいでしょうか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 変数の容量について

#4

投稿記事 by softya(ソフト屋) » 12年前

昔と違い現在のCPUだとCPUキャッシュで大半の問題は吸収されると思います。
ただ、メモリにランダムアクセスするなら出来るだけ大きな単位のデータで取り扱ったほうが効率が良くなるでしょう。
それでも、ハードやアルゴリズム不明の条件だと、これが悪いと決めづらいです。

こういうのは一般論では想定が難しく、特定条件下で効率のよい方法を考えるべきだと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

“C言語何でも質問掲示板” へ戻る