13

重複の可能性:
AMDマルチコアプログラミング

Intel TBBプロセッサは依存していますか?それはamdまたはARMで動作しますか(たとえばmeeGoの下で?)

4

3 に答える 3

18

TBBは完全にプロセッサに依存しません。TBBの残りの部分をプロセッサアーキテクチャ(主にコンペアアンドスワップなどのアトミックな読み取り-変更-書き込み操作を提供するため)および特定のOSの特殊性から分離する(かなり小さい)層があります。このレイヤーの実装では、インラインアセンブラーや組み込み関数(組み込み関数)など、コンパイラー固有のものも使用します。

TBBは、命令のないかなり古いプロセッサを除いて、AMDのプロセッサを含むx86(32ビットおよび64ビット)プロセッサですぐに使用できますmfence

ARMに関しては、直接のサポートはありませんが、TBB 3.0 Update 7は、GCCアトミックビルトインを使用するTBBのプラットフォーム分離レイヤーの実装を追加しました。したがって、おそらくわずかな追加作業で、ARM上でTBBを実行することは間違いなく可能です。そして実際には、TBBフォーラムでそのようなポートでの特定の成功についての報告がありました。

また、Intel(R)AppUp SDK for MeeGoにはTBBも含まれていますが、これはIntelのAtomプロセッサー専用です。

于 2011-06-21T20:38:34.150 に答える
11

とにかくAMDにとって答えはイエスです。

ARMの場合、Intelフォーラムのフィードバックから判断すると、事態はより複雑です。誰もこれを機能させていないのですか?たとえば、http://software.intel.com/en-us/forums/showthread.php?t=74346を参照してください。

商用バージョン3.0のリリースノートには、推奨されるハードウェアに関するこれが含まれています。他のプラットフォームは、より大雑把にサポートされている可能性があると思います。

Microsoft* Windows* Systems
    Intel(R) Core(TM) 2 Duo processor or Intel(R) Xeon(R) processor
        or higher
Linux* Systems
    Intel(R) Core(TM) 2 Duo processor or Intel(R) Xeon(R) processor
        or Intel(R) Itanium(R) processor or higher
Mac OS* X Systems
    Intel(R) Core(TM) 2 Duo processor or higher

(2014年12月の更新情報) ARMは4.1 Update 3の時点でTBBでサポートされており、4.2 Update 3で修正されています。私はこれを自分で使用したことがないため、このポートの堅牢性を証明できません。

于 2011-06-21T15:43:46.163 に答える
4

いいえ、プロセッサに依存しません。使用しているコンパイラがコンパイルできる限り、これは単なるC++ライブラリです。リンクしたWebサイトのFAQから:

どのコンパイラ、オペレーティングシステム、プロセッサがサポートされていますか?

このプロジェクトは、プロジェクトの基本的な目的として、すべてのコンパイラ、すべてのOS、およびすべてのプロセッサをサポートすることに専念しています。ステータスに関する最新情報は、Webサイトで入手できます。

編集:もう少し調べてみると、ARMプロセッサでの動作に問題があるように見えますが、克服できないものは何もありません。

于 2011-06-21T15:44:12.710 に答える