ビジネス・インテリジェンス[BI] のリーディング・カンパニー | SAS Japan SAS Japan
「THE POWER TO KNOW(知る力)」を提供するビジネス・インテリジェンス[BI]のリーディング・カンパニー | SAS Japan  トレーニング マニュアル ユーザー事例 パートナー ユーザー会 求人情報 資料請求・ダウンロード
Home News Products & Solutions Events & Seminer Customer Support Company www.sas.com
 

多量データの行列演算テクニック

[OS]MVS, F4, VOS3
[リリース] 6.07, 6.08, 6.09E
[キーワード] iml, worksize=, large, data, system, option, memsize

[質問]

メインフレーム版のSAS上でSAS/IMLを使用して、大きな行列(たとえば1000*1000)を処理できますか。

[回答]

可能です。SAS System 5ではSAS自体が16メガバイト以下の仮想記憶域しかサポートしていなかったため、このような大きな行列を処理できませんでした。
しかし、SAS System 6からは16メガバイト以上の仮想記憶域(拡張アドレス空間)もサポートしているので、問題なく処理することができます。
なお、拡張アドレス空間を利用するには、SAS起動時にSASシステムオプションのMEMSIZE=を指定して、SASが使用できる最大仮想記憶サイズを設定してください。
以下にSASを起動して、IMLプロシジャで1000*1000の行列を確保する例を示します。

●TSO(TSS)環境の場合

    SAS607 OP('MEMSIZE=20M')
    PROC IML WORKSIZE=10000000;
      X=J(1000,1000,1);

●バッチ環境の場合

    //SAS607 EXEC SAS607,OPTIONS='MEMSIZE=20M'
    //SYSIN  DD *
    PROC IML WORKSIZE=10000000;
      X=J(1000,1000,1);

The Power to Know
   Contact Us     Terms of Use & Legal Information     Privacy Statement     個人情報の取り扱いについて   Copyright © 2008 SAS Institute Inc. All Rights Reserved