agentspace 環境の real-time java 上への移植
DESCRIPTION
Agentspace 環境の Real-Time Java 上への移植. SMAF Workshop 髙汐 一紀 電気通信大学 情報工学科. はじめに. Takuro-san ごめんなさい.. RT-Java 上への porting は鋭意進行中.. ちょっとだけ言い訳 JSSST’98 の大会アレンジメントは大変. 現状. Kaffe-1.0b1 and Kaffe-snap 上でトライ AgentMonitor agent までは起動 他の agent を起動できない AWT まわり? Thread まわり? というわけで. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/1.jpg)
Agentspace Agentspace 環境の環境のReal-Time Java Real-Time Java 上への移植上への移植
SMAFSMAF WorkshopWorkshop
髙汐 一紀髙汐 一紀電気通信大学 情報工学科電気通信大学 情報工学科
![Page 2: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/2.jpg)
はじめにはじめに
Takuro-san Takuro-san ごめんなさいごめんなさい ....– RT-Java RT-Java 上への 上への porting porting は鋭意進行中は鋭意進行中 ....
ちょっとだけ言い訳ちょっとだけ言い訳– JSSST’98 JSSST’98 の大会アレンジメントは大変の大会アレンジメントは大変 ....
![Page 3: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/3.jpg)
現状現状
Kaffe-1.0b1 and Kaffe-snap Kaffe-1.0b1 and Kaffe-snap 上でト上でトライライ
AgentMonitor agent AgentMonitor agent までは起動までは起動 他の 他の agent agent を起動できないを起動できない
– AWT AWT まわり?まわり?– Thread Thread まわり?まわり?
というわけでというわけで ....
![Page 4: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/4.jpg)
移動エージェントベースの移動エージェントベースの分散実時間システム記述分散実時間システム記述
高汐 一紀高汐 一紀電気通信大学 情報工学科電気通信大学 情報工学科
![Page 5: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/5.jpg)
Timed Mobile AgentTimed Mobile Agent
時間依存エージェント時間依存エージェント 要求事項要求事項 EIP EIP モデルモデル プロトタイプの実装プロトタイプの実装 実験実験
![Page 6: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/6.jpg)
移動エージェント移動エージェント
ソフトウェアモジュールの自律性ソフトウェアモジュールの自律性 非同期実行非同期実行 並列実行並列実行 非接続時の待機機構非接続時の待機機構 システム構成の柔軟性システム構成の柔軟性
分散システムの記述に有効なフレームワーク
![Page 7: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/7.jpg)
なぜ,移動エージェントベースなぜ,移動エージェントベースのの
分散実時間処理?分散実時間処理?
移動エージェントにして唯一有効な適移動エージェントにして唯一有効な適用ドメイン?用ドメイン?– 自律巡回型センシングシステム自律巡回型センシングシステム– ネットワーク移動型生産管理システムネットワーク移動型生産管理システム
UserInterface
DeviceMonitor
NetworkClient FA Computer
MonitorAgent
![Page 8: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/8.jpg)
時間依存移動エージェント時間依存移動エージェント
タイムスケジュールに基づくホスト間タイムスケジュールに基づくホスト間移動移動
各種デバイスとの実時間的協調動作各種デバイスとの実時間的協調動作
Network
BrowsingApplication
Plant Control System
MonitorAgent
Schedule: 1. xxx.. 2. yyy..
Place A
Place BPlace C
![Page 9: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/9.jpg)
Timed Mobile AgentTimed Mobile Agent
時間依存エージェント時間依存エージェント 要求事項要求事項 EIP EIP モデルモデル プロトタイプの実装プロトタイプの実装 実験実験
![Page 10: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/10.jpg)
環境情報に基づく 環境情報に基づく QOS QOS 制御制御
移動先ホストの計算機性能移動先ホストの計算機性能– CPU CPU 性能,デバイス性能性能,デバイス性能– ハードウェア ハードウェア vs. vs. ソフトウェアソフトウェア
セルフスタビライズセルフスタビライズ– 移動エージェント向き?移動エージェント向き?– QOS QOS 制御機構とスケジューラの連携なし制御機構とスケジューラの連携なし
![Page 11: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/11.jpg)
資源管理と 資源管理と QOS QOS 制御の統合制御の統合
資源の予約機能 資源の予約機能 ((reservation)reservation) 利用可能資源への適応機能 利用可能資源への適応機能
((adaptation)adaptation) 資源の割り振り調整機能資源の割り振り調整機能
環境への適応と資源量の見積もり機能環境への適応と資源量の見積もり機能 環境情報の提供機能環境情報の提供機能
![Page 12: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/12.jpg)
環境情報 環境情報 22 種種
計算機構成に関する属性値計算機構成に関する属性値– 属性名から一意に決まる属性名から一意に決まる
計算機性能に関する属性値 計算機性能に関する属性値 (( 中粒度中粒度 ))– 特定の条件ごとの離散的なデータ特定の条件ごとの離散的なデータ– 性能情報の導出関数性能情報の導出関数– 導出方法の補正関数導出方法の補正関数
Frame size
Fram
e / s
ec
![Page 13: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/13.jpg)
Timed Mobile AgentTimed Mobile Agent
時間依存エージェント時間依存エージェント 要求事項要求事項 EIP EIP モデルモデル プロトタイプの実装プロトタイプの実装 実験実験
![Page 14: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/14.jpg)
EIP EIP モデル全体像モデル全体像
移動エージェント移動エージェント 環境情報プロバイダ環境情報プロバイダ
– 計算機構成計算機構成– 計算機性能計算機性能
QOS QOS マネージャマネージャ
Agent Context
Agent
Agent Context
Agent
Environmental Info.Provider
DatabaseReal-Time Java VM
QoS Manager
MediatorThread List
Real-Time Mach
Agent Platform
Agent Context
Agent
A. queryB. attribute registrationC. reportD. resource ticketE. resource reservation
EE
DD
CC
BB
AA
![Page 15: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/15.jpg)
属性の定義属性の定義
環境サーバモデル 環境サーバモデル [[ 中島中島 97] 97] の拡張の拡張 インタフェース インタフェース PerfIFPerfIF
– 性能情報の導出関数性能情報の導出関数– 導出方法の補正関数導出方法の補正関数
VideoCardNetworkPCCardPCCardControllerDiskAPM
Device
LocationObject
Performance
Interface PerfIF getPerfData(attName, attHint, ..) revisePerfData(attName, attHint, ..)
PDevice
BenchMark
PVideoCardPNetworkPDisk
![Page 16: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/16.jpg)
属性の操作属性の操作
問合せ条件問合せ条件– @[ @[ 属性名 属性名 ] ] 条件式条件式
例例 ::– PGet(FPS@/Performance/PDevice/PGet(FPS@/Performance/PDevice/
PVideoCard, @[Size] == 320x240, ..)PVideoCard, @[Size] == 320x240, ..)– PReport(FPS@/Performance/PDevice/PReport(FPS@/Performance/PDevice/
PVideoCard, @[Size] == 320x240, PVideoCard, @[Size] == 320x240, 20fps, ..)20fps, ..)
![Page 17: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/17.jpg)
Timed Mobile AgentTimed Mobile Agent
時間依存エージェント時間依存エージェント 要求事項要求事項 EIP EIP モデルモデル プロトタイプの実装プロトタイプの実装 実験実験
![Page 18: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/18.jpg)
プロトタイププロトタイプ
RT-MachRT-Mach– QOS QOS マネージャマネージャ– Q-Thread Q-Thread ライブラリライブラリ– CPU reserveCPU reserve
AgentspaceAgentspaceAgent Context
Agent
Agent Context
Agent
Environmental Info.Provider
DatabaseReal-Time Java VM
QoS Manager
MediatorThread List
Real-Time Mach
Agent Platform
Agent Context
Agent
EE
DD
CC
BB
AA
![Page 19: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/19.jpg)
Timed Mobile AgentTimed Mobile Agent
時間依存エージェント時間依存エージェント 要求事項要求事項 EIP EIP モデルモデル プロトタイプの実装プロトタイプの実装 実験実験
![Page 20: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/20.jpg)
時間制約を持つアニメーション時間制約を持つアニメーション表示表示
時間制約時間制約 :: 11 シーンの再生時間シーンの再生時間 性能情報性能情報 :: イメージ面積と表示時間イメージ面積と表示時間
![Page 21: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/21.jpg)
おわりにおわりに
環境情報としての性能情報環境情報としての性能情報– 演算プリミティブ性能演算プリミティブ性能– グラフィック/イメージ描画性能グラフィック/イメージ描画性能
プリミティブな性能情報とは?プリミティブな性能情報とは?– 粗粒度粗粒度 :: Dhrystone, Whetstone,Dhrystone, Whetstone,
Rhealstone, Hartstone, Rhealstone, Hartstone, 他他– 細粒度細粒度 :: bytecode bytecode レベルレベル
積み上げ可能 積み上げ可能 or notor not
![Page 22: Agentspace 環境の Real-Time Java 上への移植](https://reader036.vdocuments.pub/reader036/viewer/2022062423/568146bd550346895db3f419/html5/thumbnails/22.jpg)
おわりにおわりに
条件式の記述能力の検討条件式の記述能力の検討 RT-Mach/Real-Time Java RT-Mach/Real-Time Java 上での実装上での実装
– Agentruntime Agentruntime の変更の変更 Non-rt-agent Non-rt-agent は は non-rt-threadnon-rt-thread Rt-agent Rt-agent は は rt-thread rt-thread に割り当てに割り当て
– RT-Agent RT-Agent クラスクラス rt-thread rt-thread ベースベース
信頼性の問題信頼性の問題