Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
エバンジェリストが語るパワーシ    ステム特論               第三回    IBM オフコンはいかにして生き残れたのか ?              ~ 第二章               日本 IBM 株式会社        ...
コンピュータの黎明期     ‘40                                   ‘50               1942 ABC (Atanasoff-Berry Computer) 米              ...
テクノロジーが受け入れられる    条件    ハードウェア間の互換性     S/360: マイクロ・プログラム方式採用により、アプリケー     ションをシリーズ内で共通化     Unix: 記述言語をアセンブリ言語から C 言語へ   ...
科学技術計算(気象シミュレー    ション)の例            自然現象を方程式化し、            各メッシュ毎に解く4                   © 2012 IBM Corporation
科学技術計算アプリケーションの傾向Loopによる同じ計算の繰り返し データの総量は予めわかっている 計算対象となるデータには局所性がある  次にどこを計算するか容易に予測できる プロセッサとメモリに負荷がかかる傾向がある浮動小数点演算が多用され...
IBM Rochesterがめざした先進    的なコンピュータの狙い    長期的にビジネス市場に受け入れられること     予測し得ない将来テクノロジーへの対応      アプリケーション資産継承      必要性に応じて柔軟にマシン機能を...
IBM i を取り巻くプロセッサーの歴史               1990          1995                    2000               02     04     06        07    ...
ビジネス用途(販売管理アプリ     ケーション)の例      発注と仕入れ             受注と売上     購買・物流・管理           営業・物流・管理    買掛金          在庫           売掛金...
マシンをどのように定義するか黎明期             S/360 以降         S/38・AS/400 以降• HW 依存のアプリ開発   • HW 中心だが差異を吸    • HW に依存しない、アプリ• アプリの可搬性はない ...
Global Technology Outlook       ~創業者達の先見(?)の明     I think there is a world market for maybe five computers.       Thomas W...
PCにおけるアプリケーション稼     動の仕組み     コンパイルによって、プロセッサー命令セッ     トを生成する          ソース・         プログラム                  稼動する?        実行...
ハードウェア・マシンの限界     プロセッサーの互換性が失われると、実行     コードは稼動しなくなる     プロセッサーに互換性が保たれたとしても、     新しいテクノロジーの恩恵を受けることは     できない      32ビット...
ハイレベル・マシン・インター           フェース (TIMI)                                           OS, アプリケーションなど               TIMI          ...
TIMI の狙い      アプリケーションを、ハードウェア・テクノロ      ジー(プロセッサー)から独立させる      テクノロジーの変化は、アプリケーションに      影響を及ぼさない      世代を超えたアプリケーション資産の継...
ソフトウェア・マシンにおけるプロ        グラム生成と実行               ソース・              プログラム                             外部からは見えない              ...
新しいハードウェア上でのプログ        ラム実行 (1)        実行コードは有効ではないことが判明 TIMI      プログラム      ハードウェア依存           テンプレート      旧実行コード SLIC  ...
新しいハードウェア上でのプログ        ラム実行 (2)        トランスレータが自動的に起動され、新実        行コードを生成する TIMI      プログラム      ハードウェア依存           テンプレート...
新しいハードウェア上でのプログ        ラム実行 (3)        新実行コードを組み込んでから、プログラ        ムを実行 TIMI      プログラム    ハードウェア依存           テンプレート    新実行...
システムの安全性を高める仕組      み     アプリケーションの視点    テクノロジーの視点        製品番号      • 参照や検索は可能      ディレクトリと      • 算術演算は不可        ビット配列   ...
オブジェクト指向     データに対して実行できる演算を限定する     エラーによる不正演算を防ぐ     オブジェクトの構造     メソッド                          メソッド                   ...
仮想マシンが実行するのはオブ     ジェクトのみ     OS, アプリケーションなど         仮想マシン     プロセッサーと仮想マシン       との間の緩衝域                      安全なコードのみ   ...
ウィルス耐性の違い      ウィルス:実行プログラムに見えない実行      プログラム     オブジェクト指向型       通常のシステム     • データの意味が考慮さ   • データの意味は考慮され     れ、動作に制約がある ...
高速化の追求     複数ユーザー・複数アプリケーション      単一ユーザー・単一アプリケーションとは視点      が異なる      多ユーザーが利用する基幹業務システム      マルチ・プロセスにおけるスループットの向上      ...
プロセス切り替えにおける負荷     各プロセスにはそれぞれプライベートなメ     モリ空間が割り当てられる                 メモリ・アドレスはそれぞれ独                 立している              ...
コンテキスト(CPUの状態)・ス     イッチの例     プロセス数とコピーされるメモリ・サイズが大き     くなると、タスク切り替え時間が大幅に伸びる         Xeon 搭載 PC + SLES-825             ...
プログラミングの考慮点     スレッド・プログラミングによって、複数プロ     セス間の切り替え負荷を軽減できる      プロセス間通信に関わるデバック負荷が大き      くなる      しかしながら、従来からある業務アプリケー   ...
単一化されたメモリ空間におけ     るプロセス切り替えの高速化      メモリ空間を単一化することで、プログラ      ム・コール並みの負荷に抑える                 メモリー空間の独立性は                 ...
ファイル I/O の検討        典型的なシステムの記憶域管理        実メモリ    仮想メモリ   ディレクトリ     作業用に読み込み           ファイル・オープン28                       ...
典型的なシステムにおける記憶     域管理の問題点     二重化された管理の仕組みが必要      ディレクトリとメモリ     ファイル・オープンが必要      実質的にディスク上のファイル・コピー      プロセッサーの I/O 待...
単一レベル記憶      仮想マシンよりも上位層では、ディスク空間を仮想化し      て、全体をメモリとして扱う      ポインター B                            ポインター A     仮想アドレス空間    ...
ポインター保護     全てのユーザーが同一のメモリ空間内にある      ポインターの不正な変更は、データ漏洩・改ざん      につながる可能性がある     ポインター毎に、タグビットを設定      タグビットが0ならば、不正アクセス ...
IBM i アプリケーション環境                                AIX アプリ      VIOS     旧来の環境                                実行環境           ...
AIXアプリ実行環境のサポート                                IBM i     AIX                                7.1     6.1 TL2     仕切られた空間   ...
単一レベル記憶の特徴     プロセス切り替えの高速化     仮想マシンから上位層の記憶域管理が単     純になる      ファイル・オープンがない      メモリ管理、ディスク管理はマイクロコード      (SLIC)に委ねられる ...
よくある「レガシー・システム」に     対する印象     アプリケーションの見栄えが悪い     エミュレータ搭載 PC が必要になり、クライアント     の管理に手間がかかる     ベンダー独自テクノロジーに依存しており将来が    ...
日本における「オフコン」     高く評価されたメリット      業務用途に的を絞りながら、必要機能一式を装備した      使い勝手の良さ、アプリケーション開発生産性の高さ      をメリットに多くのお客様に導入いただいた     敬遠さ...
AS/400 とその後継機の成長     テクノロジーの変化を乗り越えられる柔軟性     を備えていた(仮想マシンとしての TIMI)      アプリケーション資産が保護される      新機能を柔軟に実装できる     旧来のアーキテクチ...
2010年                                                    2008年        POWER7     AS/400 から Power Systems へ                ...
お客様にとっての選択肢     IBM i のレガシー環境に留    S/38・AS/400 以降                        • HW に依存しない、アプリ     まり続ける                中心のインターフ...
Upcoming SlideShare
Loading in …5
×

エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~

2,692 views

Published on

『エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか? ~第二章~』における弊社エバンジェリスト 安井 賢克の講演資料です。(2012年5月17日開催)

Published in: Technology
  • Be the first to comment

  • Be the first to like this

エバンジェリストが語るパワーシステム特論 ~ 第3回:IBMオフコンはいかにして生き残れたのか?~第二章~

  1. 1. エバンジェリストが語るパワーシ ステム特論 第三回 IBM オフコンはいかにして生き残れたのか ? ~ 第二章 日本 IBM 株式会社 安井賢克 http://www.facebook.com/masakatsu.yasui1 © 2012 IBM Corporation
  2. 2. コンピュータの黎明期 ‘40 ‘50 1942 ABC (Atanasoff-Berry Computer) 米 1973 ミネアポリス連邦地方裁判所の判断では世界最初のコンピュータ 1943 Colossus 英 ドイツ軍の暗号解読用1946 ENIAC (Electronic Numerical Integrator and Computer) 米 大砲の弾道計算用 1948 The Baby (Small Scale Experimental Machine) 英 初のプログラム内蔵式 1949 EDSAC (Electronic Delay Storage Autonomic Calculator) 英 初のノイマン型コンピュータ ノイマン型コンピュータ: 主記憶装置、制御装置、演算装置、入力装置、出力装置により2 構成され、内蔵したプログラムが処理を制御する方式のコンピュータ © 2012 IBM Corporation
  3. 3. テクノロジーが受け入れられる 条件 ハードウェア間の互換性 S/360: マイクロ・プログラム方式採用により、アプリケー ションをシリーズ内で共通化 Unix: 記述言語をアセンブリ言語から C 言語へ 世代間の互換性 S/360: BCD コード採用の周辺機器をサポート(EBCDIC) S/370: S/360 に対して上位互換性を維持 x86 互換プロセッサの成功と、x86 非互換 Itanium 接続性 BSD Unix: ARPANET 対応の TCP/IP 標準実装3 © 2012 IBM Corporation
  4. 4. 科学技術計算(気象シミュレー ション)の例 自然現象を方程式化し、 各メッシュ毎に解く4 © 2012 IBM Corporation
  5. 5. 科学技術計算アプリケーションの傾向Loopによる同じ計算の繰り返し データの総量は予めわかっている 計算対象となるデータには局所性がある 次にどこを計算するか容易に予測できる プロセッサとメモリに負荷がかかる傾向がある浮動小数点演算が多用される 有効数字がある = 丸め誤差を許容する同時使用ユーザー数は少ないか限定的性能は経過時間で測定される © 2012 IBM Corporation
  6. 6. IBM Rochesterがめざした先進 的なコンピュータの狙い 長期的にビジネス市場に受け入れられること 予測し得ない将来テクノロジーへの対応 アプリケーション資産継承 必要性に応じて柔軟にマシン機能を強化できる ビジネス用途向けに最適化 お客様がテクノロジーに煩わされない テクノロジーの隠蔽、 オール・イン・ワン 同時使用ユーザーが多い セキュリティ、 コンテキスト・スイッチの高速化 データが散在する傾向にある ディスク I/O 負荷が大きくなる ループ以外の分岐命令が多い → I/O 発生の可能性6 整数演算が多用される © 2012 IBM Corporation
  7. 7. IBM i を取り巻くプロセッサーの歴史 1990 1995 2000 02 04 06 07 10科学技術計算を主な用途として開発 45 nm浮動小数点演算パフォーマンスを重 4.25 GHz POWER POWER2 POWER3 POWER7 1986 180 nm IBM, Apple, Motorola 1.3 GHz ROMP 32 ビット版・64 ビット版を開 (RT-PC) PowerPC POWER4 130 nm最初のRISC搭載マシン 1.65 GHz 64ビット RISC(PowerPC AS) 48ビットCISC POWER5 90 nm Muskie Apache Pulsar 2.3 GHz商業計算向けにチューニング 154MHz 125MHz 450MHz POWER5+命令セットの拡張 S-Star 同時使用ユーザーが多い 600MHz 65 nm OS提供のサービスを多用する Cobra Northstar I-Star 5 GHz ポインターによるデータ・アクセスが 多いため、整数演算を多用する 50-77MHz 262MHz 540MHz 浮動小数点演算はあまり使われない POWER6 ループ以外の分岐命令が多い RS/6000でも採用 ディスク全体にデータが散在している7 © 2012 IBM Corporation
  8. 8. ビジネス用途(販売管理アプリ ケーション)の例 発注と仕入れ 受注と売上 購買・物流・管理 営業・物流・管理 買掛金 在庫 売掛金 入庫 物流・管理 出庫 支払い 請求 管理・物流 管理・営業8 © 2012 IBM Corporation
  9. 9. マシンをどのように定義するか黎明期 S/360 以降 S/38・AS/400 以降• HW 依存のアプリ開発 • HW 中心だが差異を吸 • HW に依存しない、アプリ• アプリの可搬性はない 収する事により、アプリの 中心のインターフェース 互換性をできるだけ維持 • 多機能なマシンを実現 アプリケーション アプリケーション アプリケーション ミドルウェア マイクロ・プログラム マイクロ・プログラム ハードウェア ハードウェア ハードウェア9 © 2012 IBM Corporation
  10. 10. Global Technology Outlook ~創業者達の先見(?)の明 I think there is a world market for maybe five computers. Thomas Watson, chairman of IBM, 1943 There is no reason anyone would want a computer in their home. Ken Olson, president, chairman and founder of Digital Equipment Corp.,1977 640K ought to be enough for anybody. Bill Gates, chairman and founder of Microsoft, 1981 I predict the Internet will soon go spectacularly supernova and, in 1996, catastrophically collapse. Bob Metcalfe, co-inventor of Ethernet and founder of 3Com Corporation, 199510 Supernova (超新星); 恒星が燃え尽きるとき、最後に大爆発をする現象 Corporation © 2012 IBM
  11. 11. PCにおけるアプリケーション稼 動の仕組み コンパイルによって、プロセッサー命令セッ トを生成する ソース・ プログラム 稼動する? 実行コード11 © 2012 IBM Corporation
  12. 12. ハードウェア・マシンの限界 プロセッサーの互換性が失われると、実行 コードは稼動しなくなる プロセッサーに互換性が保たれたとしても、 新しいテクノロジーの恩恵を受けることは できない 32ビット・プロセッサーにおける、16ビット互換 モード など メモリにおけるアドレス境界の差異により、か えって負荷がかかる場合がある12 © 2012 IBM Corporation
  13. 13. ハイレベル・マシン・インター フェース (TIMI) OS, アプリケーションなど TIMI 仮想マシンTechnology Independent Machine Interface SLIC プロセッサーと仮想マシンと マイクロコードに匹敵 の間の緩衝域として機能 ハードウェア13 © 2012 IBM Corporation
  14. 14. TIMI の狙い アプリケーションを、ハードウェア・テクノロ ジー(プロセッサー)から独立させる テクノロジーの変化は、アプリケーションに 影響を及ぼさない 世代を超えたアプリケーション資産の継承 が実現できる 長期的にはコスト削減に大きく寄与する14 © 2012 IBM Corporation
  15. 15. ソフトウェア・マシンにおけるプロ グラム生成と実行 ソース・ プログラム 外部からは見えない (カプセル化されている) TIMI プログラム ハードウェア依存 テンプレート 実行コード SLIC トランスレータ 組み込み 実行 ハードウェア15 © 2012 IBM Corporation
  16. 16. 新しいハードウェア上でのプログ ラム実行 (1) 実行コードは有効ではないことが判明 TIMI プログラム ハードウェア依存 テンプレート 旧実行コード SLIC X 実行不可 テクノロジーの刷新 ハードウェア16 © 2012 IBM Corporation
  17. 17. 新しいハードウェア上でのプログ ラム実行 (2) トランスレータが自動的に起動され、新実 行コードを生成する TIMI プログラム ハードウェア依存 テンプレート 旧実行コード トランスレータ SLIC テクノロジーの刷新 ハードウェア17 © 2012 IBM Corporation
  18. 18. 新しいハードウェア上でのプログ ラム実行 (3) 新実行コードを組み込んでから、プログラ ムを実行 TIMI プログラム ハードウェア依存 テンプレート 新実行コード 組み込み 実行 SLIC テクノロジーの刷新 ハードウェア18 © 2012 IBM Corporation
  19. 19. システムの安全性を高める仕組 み アプリケーションの視点 テクノロジーの視点 製品番号 • 参照や検索は可能 ディレクトリと • 算術演算は不可 ビット配列 価格 • 技術的にはあらゆる 演算が可能 • 算術演算は可能 • 「製品番号」×5% ? • 上記はいずれも • 価格の数値を命令と 実行コードではない みなして実行 ?19 © 2012 IBM Corporation
  20. 20. オブジェクト指向 データに対して実行できる演算を限定する エラーによる不正演算を防ぐ オブジェクトの構造 メソッド メソッド データ メソッド メソッド20 © 2012 IBM Corporation
  21. 21. 仮想マシンが実行するのはオブ ジェクトのみ OS, アプリケーションなど 仮想マシン プロセッサーと仮想マシン との間の緩衝域 安全なコードのみ 実行21 © 2012 IBM Corporation
  22. 22. ウィルス耐性の違い ウィルス:実行プログラムに見えない実行 プログラム オブジェクト指向型 通常のシステム • データの意味が考慮さ • データの意味は考慮され れ、動作に制約がある ず、あらゆる動作が可能 実行ファイル? テキスト・ファイル? Excel? Word?22 © 2012 IBM Corporation
  23. 23. 高速化の追求 複数ユーザー・複数アプリケーション 単一ユーザー・単一アプリケーションとは視点 が異なる 多ユーザーが利用する基幹業務システム マルチ・プロセスにおけるスループットの向上 プロセス切り替え時間の短縮化が必要 ファイル I/O 負荷の軽減23 © 2012 IBM Corporation
  24. 24. プロセス切り替えにおける負荷 各プロセスにはそれぞれプライベートなメ モリ空間が割り当てられる メモリ・アドレスはそれぞれ独 立している プロセス切り替えは使用するメ プロセス毎の モリー空間の切り替えを伴う メモリ空間 共用メモリがないので、プロセ ス間通信に負荷がかかる 一般に1,000~1,200ステップ のプログラムが必要24 © 2012 IBM Corporation
  25. 25. コンテキスト(CPUの状態)・ス イッチの例 プロセス数とコピーされるメモリ・サイズが大き くなると、タスク切り替え時間が大幅に伸びる Xeon 搭載 PC + SLES-825 © 2012 IBM Corporation
  26. 26. プログラミングの考慮点 スレッド・プログラミングによって、複数プロ セス間の切り替え負荷を軽減できる プロセス間通信に関わるデバック負荷が大き くなる しかしながら、従来からある業務アプリケー ションをスレッド化することは困難 メモリ空間の切り替え処理の高速化は避 けられない要件26 © 2012 IBM Corporation
  27. 27. 単一化されたメモリ空間におけ るプロセス切り替えの高速化 メモリ空間を単一化することで、プログラ ム・コール並みの負荷に抑える メモリー空間の独立性は 低い プロセス毎の プロセス切り替えの高速 メモリ空間 化が期待できる メモリー共用が可能なの で、プロセス間通信の負 荷が小さい 二倍の性能を実測27 © 2012 IBM Corporation
  28. 28. ファイル I/O の検討 典型的なシステムの記憶域管理 実メモリ 仮想メモリ ディレクトリ 作業用に読み込み ファイル・オープン28 © 2012 IBM Corporation
  29. 29. 典型的なシステムにおける記憶 域管理の問題点 二重化された管理の仕組みが必要 ディレクトリとメモリ ファイル・オープンが必要 実質的にディスク上のファイル・コピー プロセッサーの I/O 待ちが発生しやすい 同一ファイルについて3つのコピーが作成 される可能性がある ディスク、ディスク上の仮想メモリ、実メモリ29 © 2012 IBM Corporation
  30. 30. 単一レベル記憶 仮想マシンよりも上位層では、ディスク空間を仮想化し て、全体をメモリとして扱う ポインター B ポインター A 仮想アドレス空間 OSは各オブジェクト の名前を扱う 仮想マシンは各オブ 264バイト ジェクトへのポイン ターを扱う 仮想マシン ポインター長は128 ビット 現在は64ビッ トのみ使用 4KBページ : プロセス A 空間30 : プロセス B 空間 © 2012 IBM Corporation
  31. 31. ポインター保護 全てのユーザーが同一のメモリ空間内にある ポインターの不正な変更は、データ漏洩・改ざん につながる可能性がある ポインター毎に、タグビットを設定 タグビットが0ならば、不正アクセス OSより上位層においてポインター変更が発生す ると、タグビットは常に0にセットされる マイクロコードだけがポインターを生成・変更でき、 その場合タグビットは常に1にセットされる31 © 2012 IBM Corporation
  32. 32. IBM i アプリケーション環境 AIX アプリ VIOS 旧来の環境 実行環境 アプリ資産継承 オープン性 • RPG 業界標準互換 I/O 仮想化 Native OS • COBOL • Java(WAS) サーバー統合 • C/C++ その他 • PHP I/O 仮想化 • OSS 環境 TIMI 仮想マシン SLIC マイクロコード Power Hypervisor ファームウェアによる仮想化32 © 2012 IBM Corporation
  33. 33. AIXアプリ実行環境のサポート IBM i AIX 7.1 6.1 TL2 仕切られた空間 AIX アプリ 6.1 5.3 TL6 最大 1TB×220 個 実行環境 V5R4 5.3 TL3 タグビット無効 240バイト V5R3 5.2 TL0,2 IBM i 用 仮想アドレス空間 タグビット有効 264バイト プロセッサーは上記に共通 タグビット有効・無効モード をダイナミックに切り替え33 © 2012 IBM Corporation
  34. 34. 単一レベル記憶の特徴 プロセス切り替えの高速化 仮想マシンから上位層の記憶域管理が単 純になる ファイル・オープンがない メモリ管理、ディスク管理はマイクロコード (SLIC)に委ねられる 実メモリは全てキャッシュとして機能する ディスク・アクセスを省略できる タグビットによるポインター保護34 © 2012 IBM Corporation
  35. 35. よくある「レガシー・システム」に 対する印象 アプリケーションの見栄えが悪い エミュレータ搭載 PC が必要になり、クライアント の管理に手間がかかる ベンダー独自テクノロジーに依存しており将来が 不安 製品価格決定権がベンダーに握られているため、 不当に高いコストを強いられる恐れがある 技術者確保が困難になりそうである35 © 2012 IBM Corporation
  36. 36. 日本における「オフコン」 高く評価されたメリット 業務用途に的を絞りながら、必要機能一式を装備した 使い勝手の良さ、アプリケーション開発生産性の高さ をメリットに多くのお客様に導入いただいた 敬遠された理由 ベンダー固有技術に囲い込まれる懸念 「オープン」の時代にそぐわなくなった 現在 IBM i を除いたほとんどの旧オフコンは市 場から撤退しつつある36 © 2012 IBM Corporation
  37. 37. AS/400 とその後継機の成長 テクノロジーの変化を乗り越えられる柔軟性 を備えていた(仮想マシンとしての TIMI) アプリケーション資産が保護される 新機能を柔軟に実装できる 旧来のアーキテクチャーを前提に、最新テクノ ロジーを実装する事で成長を続けてきた Java、Webサービス、Unicode、POSIX API ・・ LPAR、SANストレージ、Live Partition Mobility ・・ PHP、MySQL、OSSアプリケーション ・・37 © 2012 IBM Corporation
  38. 38. 2010年 2008年 POWER7 AS/400 から Power Systems へ IBM i 宣言 2008年 Power Systems アプリケーション資産を継承し 2007年 新ブランド登場 ながら年率平均 69.0%で成長 POWER6 2006年 CPU能力 102,826 倍 System i5 ムーアの法則(18~24 ヶ月で処理能力 2 倍) 2005年 Systems Agenda が示唆する年率 41~59% の成長率を凌ぐ イノベーション宣言 2004年 2004年 eServer i5 2001年 2002年搭載 POWER5 仮想化エンジン搭載 POWER4 POWER4 2000年 2000年 eServer iSeries 業界初の SOI テクノロジー eビジネス・オンデマンド対応 1995年 1997年 48 ビット CISC から AS/400e シリーズ 64 ビット RISC へ インターネットをサポート 1994年 AS/400 アドバンスト・シリーズ クライアント・サーバー機 アーキテクチャーは S/38 (1979 年)から TIMI による仮想マシンの実現1988年AS/400 単一レベル記憶によるディスク・パフォーマンスのオフコンとして登場 最適化と管理の手間削減38 オブジェクト指向によるセキュリティー © 2012 IBM Corporation
  39. 39. お客様にとっての選択肢 IBM i のレガシー環境に留 S/38・AS/400 以降 • HW に依存しない、アプリ まり続ける 中心のインターフェース システム資産は保護される • 多機能なマシンを実現 トレンドに乗って、IBM i か アプリケーション らオープン系システムに移 行する 一部のミドルウェア システム資産は破棄される マイクロ・プログラム レガシーな資産を活かしな がら、オープンなテクノロ ハードウェア39 ジーとの融合を図る © 2012 IBM Corporation

×