No.1
- 回答日時:
同時並行処理可能な仕事でなければ、マルチコアにしてもその効果は得られません。
仮に、1,2,3,4という仕事があったとします。
これらの仕事が、1 - 2 - 3 - 4 のように、前の仕事が完了しないと、開始できないようなものである場合、シングルでも、マルチでも、処理時間に変わりはありません。
しかし、1 の仕事が完了すれば、2、3、4 の仕事はいつでも開始できる状態になるようなものであれば、
2 -
1 - 3 -
4 -
のように並行処理が可能になるので、マルチの恩恵を受けることができます。
No.2
- 回答日時:
ざっくり言えばマルチスレッドで記述できるような問題なら各スレッドを複数のコアで実行できる可能性があります。
(もちろん複数のスレッドが意味あるように書けていないとダメですけど。)
あと、コンパイラによっては繰り返しなどの処理を自動的に並行実行できるコードに変換したりすることがありますが、VS6ではそんなことはしてくれないと思います。
ですから、
for (sum=0, i=0; i < 10000; i++) sum += i;
みたいなコードを書いても(全ての足し算はシーケンシャルに実行されるので)一つのコアしか使われません。
しかし、複数(例えば二つ)のスレッドを作って各スレッドがこのループを実行するようにコーディングすれば、違いを実感できるかもしれません。(論理スレッドが実コアに割り当たるかどうかは保証の限りでないので、実感できるかどうかは状況次第です。そういう意味で、割り振りはOSがやるので気にする必要はありません。)
No.3ベストアンサー
- 回答日時:
>CPUへの割り振りはOS(Windows)が行うので、
>アプリ開発の際は気にする必要はないのでしょうか
普通はそうなります。
こんな部分の制御までプログラマが気にしていては生産性が上がりません。
>特別な手法あるいは開発環境が必要なのでしょうか
当然あります。といってもOSは究極にいえば自作になりますが・・・
OSの担当する部分を自分達でコードして、
その分のオーバーヘッドをカットすれば、かなり高速になります。
また、ソフトの部分をハードに置き換えればかなり高速になります。
グラフィックボードにみられるように、ファームウェアで組むこともありましょう。
このような開発言語はアセンブラをおいて他にないでしょう。
結局、特殊用途というのは相手の構成を決め打ちして強制させる部分もあります。
そうした前提があってプログラムも有効になります。
VBみたいな汎用の言語を使って汎用のOSに依存する形だと限定的にならざるを得ません。
それでも言語の方で最新のアーキテクチャをサポートしているかどうかは大切ですから、
こういった方面を重視するのであれば言語のバージョンもなるべく最新のものを用意します。
こういった観点からするとVB6は時代遅れという感は否めません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Android(アンドロイド) Androidアプリの開発用PCのスペックが知りたい 1 2022/07/20 22:16
- アプリ iPhone処理速度について 最新iPhoneからcpu性能どれだけ上げでもあまりアプリを開く速度が 3 2023/02/07 03:48
- ソフトウェア 移行PCにDockerがインストールされていても各種開発環境のアプリはインストールが必要? 2 2023/05/21 21:53
- アプリ swiftでスマホアプリを開発した時の動作確認 1 2023/02/14 11:37
- CPU・メモリ・マザーボード パソコン購入でCPUについて(長文ですいません。) 26 2022/04/05 15:26
- iPhone(アイフォーン) 容量は半分以上あるのにアプリが強制終了する理由はなんですか? CPUがどのような状態なのでしょうか? 8 2023/08/27 00:50
- その他(インターネット接続・インフラ) 教えてGOOをずっと利用していますが、接続速度が遅いです。 5 2022/12/31 18:03
- CPU・メモリ・マザーボード 2009年のHPのデスクトップPCはCPU交換等して活用できますか/する価値はありますか? 9 2022/09/27 16:43
- ノートパソコン ホグワーツレガシー PC版必要スペックについて ホグワーツレガシーをPCでプレイしたいのですが、PC 3 2023/02/09 21:11
- その他(プログラミング・Web制作) dockerとは? 新しい配属先でテレワークになり、テレワーク用のpcにdockerを入れたのですが 2 2022/09/22 07:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ftp 同時複数接続の負荷テスト...
-
アコーディオンメニューをアン...
-
tryの終了
-
switch文の中に、throws new Ex...
-
スレッド
-
ファイルの排他
-
Ajaxの実行速度と読み方について
-
onBlurとonFocusの処理順序につ...
-
エクセルVBAで、条件に一致する...
-
3年間同じクラスになる確率
-
インスタンス参照でアクセスで...
-
c++,ある関数のクラスから別の...
-
ワイルドカード<?>と型パラメー...
-
「天声人語」をインターネット...
-
DataGridViewでセルクリックイ...
-
string formatについて
-
クラス間でのデータ参照
-
変数の参照でエラーが出てしま...
-
VBA 同じ名前のオブジェクトを...
-
String型の日付(2005/11/25)の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
tryの終了
-
数値の定数を付ける時
-
Javaでのデバッグコード削除
-
C#で別スレッドの終了を知りたい
-
[Java] while(true)の意味
-
Javaプログラムからポップアッ...
-
Tomcatのスレッドを破棄する方法
-
ラジオボタンの選択判定
-
JavaScriptからJAVAクラスを呼...
-
素数判定を再帰処理で
-
PHPでDB処理中にプログレスバー...
-
Javaアプリケーション実行の返...
-
WPF C#でF10のイベント取得方法...
-
doGetとdoPostの違い
-
switch文の中に、throws new Ex...
-
Tomcat高負荷時の設定について
-
ラベルの表示までが異常に遅い...
-
ExcelVBA で文字列の特定の文字...
-
JDBCでテーブルUPDATE後の再検...
-
SwingUtilities.invokeLater(ne...
おすすめ情報