|
|
Log In | Not a Member? |
Contact ADC |
| < Previous PageNext Page > |
この付録の目的は、数学計算をアーキテクチャに依存しない部分とアーキテクチャ固有の部分に切り分ける方法を示すことです。一例として行列乗算を使用して、アーキテクチャ固有のコードを最低限に抑えながらPowerPCとx86の両方のアーキテクチャで機能する関数を作成する方法を紹介します。これを知ることができれば、このアプローチを複雑な他の数学計算に適用することができます。
以下の基本操作は両方のアーキテクチャで利用できます。
ベクトルロードおよびストア
乗算
加算
浮動小数をベクトルに展開する命令
他のタイプの計算では、別のコードを書く必要があるかもしれません。2つのアーキテクチャのレジスタ数とパイプラインの段数の違いのために、多くの場合は別々のバージョンを提供するほうが有益です。
注: Accelerateフレームワーク(vecLib)には、どちらのアーキテクチャにも調整された4×4の行列乗算関数があります。もっと大きな行列を演算するには、Basic Linear Algebra Subprograms (BLAS)のsgemm(Accelerateフレームワークでも利用可能)を呼び出すことができます。
アーキテクチャ固有コード
アーキテクチャに依存しない行列乗算
| < Previous PageNext Page > |
Last updated: 2006-03-08
|
Get information on Apple products.
Visit the Apple Store online or at retail locations. 1-800-MY-APPLE Copyright © 2007 Apple Inc. All rights reserved. | Terms of use | Privacy Notice |