問題タブ [intel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
assembly - Pentium IA-32 でバイトをスタックにプッシュできないのはなぜですか?
Intel Pentium のスタックに 1 バイトを直接プッシュできないことを知りました。これについて誰か説明してもらえますか?
私が与えられた理由は、esp レジスタがワード アドレス指定可能 (または、モデルの仮定) であり、「偶数アドレス」でなければならないためです。32 ビットの 2 進数の値をデクリメントしても、レジスターのアライメントが乱れることはないと思っていたのですが、どうやら十分に理解できていないようです。
NASM テストをいくつか試してみたところ、変数を宣言し (db 123 を噛む)、それをスタックにプッシュすると、esp が 4 減ります (32 ビットをプッシュしたことを示していますか?)。しかし、「プッシュ バイト バイト」(変数名の選択については申し訳ありません) は一種のエラーになります。
test.asm:10: エラー: サポートされていない非 32 ビット ELF 再配置
この困難な時期に知恵の言葉をいただければ幸いです。私は学部 1 年生です。
assembly - パイプラインの深さの増加が必ずしもスループットの増加を意味するとは限らないのはなぜですか?
これはおそらく議論の質問ですが、stackoverflowがそれを尋ねるのに適切な場所である可能性があると思いました。私は命令パイプラインの概念を研究しています。パイプラインのステージ数を増やすと、パイプラインの命令スループットが上がると教えられてきましたが、スループットが変わらない場合もあります。どのような条件下で、これは起こりますか?ストールと分岐が質問の答えになると思いますが、重要な何かが欠けているのではないかと思います。
windows - Intel Visual FORTRAN for X64 によるコードのベクトル化
Windows Server 2003 Enterprise X64 Edition で Intel Visual FORTRAN を使用して fortran90 コードをコンパイルしています。32 ビット構造のコードをコンパイルし、自動および手動のベクトル化オプションを使用する場合。コードはコンパイルされ、ベクトル化されます。8 コア システムで実行すると、コンパイルされたコードは CPU の 70% を使用し、ベクトル化が機能していることを示しています。しかし、64 ビット コンパイラでコードをコンパイルすると、コードがベクトル化されていると表示されますが、実行すると、CPU 使用率が約 12% しか表示されず、8 つのコアのうち 1 つのコアが完全に使用されます。は、コードがベクトル化されていることを示していますが、ベクトル化は機能していません。
X64 Edition Windows 上にあり、逆の結果が表示されることを期待していたので、私にとっては奇妙です。64 ビット Windows で 64 ビット アーキテクチャ用にコンパイルされたコードを実行する方がよいと考えました。
コンパイルされたコードが 64 ビットのコンパイル済みバージョンで複数のコアをフルに活用できない理由を知っている人はいますか?
architecture - マルチコアプロセッサ:各「コア」はフルクロック速度で動作しますか、それともフルクロック周波数の一部で動作しますか?
単一のIntel/AMDx86-64ビット2GHz8コアプロセッサがあるとします。
8つのコアのそれぞれがすべてフル2GHzで動作しますか、それとも各コアがフル2 GHzクロックの一部(たとえば250 MHz)で動作しますか?
debugging - Intel AT&T アセンブラーの段階的な実行?
ソース コード (小さな命令型プログラミング言語で記述) を Intel AT&T 32 ビット アセンブラに変換するコンパイラを作成しています。
生成されたコードに厄介なオフセットミスなどがあるため、デバッグに多くの時間を費やす傾向があります。生成されたアセンブラコードを段階的に「ウォークスルー」するツールを誰かが知っているかどうか知りたいのですが、スタック上にあるものを視覚化するなど。
私は開発プラットフォームとして Ubuntu Linux を使用していますが、端末には慣れていますが、GUI プログラムは便利です。それは存在しますか?それとも、そうでない正当な理由がありますか (おそらく、問題はそれほど単純ではありません..?)
アセンブリ コードでタスクをデバッグするための良いアイデアがあれば、喜んでお知らせします。
c++ - GCC を使用して Mac OS X で Intel TBB にリンクするにはどうすればよいですか?
Mac で Intel TBB ライブラリをコンパイルしてリンクする方法を、一生理解できません。商用インストーラーと tbbvars.sh スクリプトを実行しましたが、これがわかりません。私はそれが本当に明白なことだと感じています.
tbb_test.cpp
g++ tbb_test.cpp -I /Library/Frameworks/TBB.framework/Headers -ltbb
...シンボルが見つかりません。
乾杯!
アップデート:
g++ tbb_test.cpp -I /Library/Frameworks/TBB.framework/Headers -L /Library/Frameworks/TBB.framework/Libraries/libtbb.dylib
動作します!
intel - 64 ビット アプリケーションをロードしようとすると、この CPU が 64 ビット モードと互換性がない理由
Dell Studio 540、64 ビット OS Windows Home Premium を使用しています。私の CPU は Intel の仮想化テクノロジをサポートしていますが、自分のマシンでそれを有効にする方法がわかりません。BIOS を介して実行できることがわかりましたが、BIOS を調べたときにこのオプションが表示されませんでした。この機能を有効にする別の方法はありますか? 私にお知らせください。Vircutal PC 2007 経由で Windows Server 2008 をインストールしようとしています。
ありがとうございました、
memory-management - アドレッシングモードは物理レベルでどのように機能しますか?
私は、すべての大学のすべての CS 部門で教えられるべき、プロセッサに関するこの基本的なことを学ぼうとしています。それでも、ネット上で見つけることができず (Google は役に立ちません)、クラスの資料でも見つけることができません。
アドレッシングモードが物理レベルでどのように機能するかについての良いリソースを知っていますか? 特にインテルのプロセッサーに興味があります。
opengl - OpenGL / GLSLは、シェーダーがIntelカードで正常にコンパイルされているかどうかをチェックします
このコードを使用して、glslシェーダーが正常にコンパイルされたかどうかを確認しています。
返される文字列の長さは、nvidiaおよびATIカードでは空ですが、Intelカードでは、これは「エラーなし」の文字列を返します。
本当にエラーがないかどうかを確認するための最良の方法は何ですか?この文字列をチェックする必要がありますか?または、この関数glGetInfoLogARBが返す必要のある規則はありますか?
assembly - Intel の IA-32 ソフトウェア開発者マニュアルに関する質問
Intel の IA-32 ソフトウェア開発者マニュアルを勉強しています。特に、次のマニュアルを読んでいます: http://www.intel.com/Assets/PDF/manual/253666.pdf。例として、ADD 命令を考えてみましょう。79 ページには、r8 (8 ビット レジスタ) を r/m8 (8 ビット レジスタまたはメモリ位置) に追加できると書かれています。下の数行には、r8 に r/m8 を追加できることも書かれています。問題は、2 つの 8 ビット レジスタを追加する場合、どの命令を使用しているのかということです。ありがとう。