2024-03-28T23:24:12Zhttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_oaipmhoai:ipsj.ixsq.nii.ac.jp:001857242020-10-27T05:02:43Z00934:00935:09346:09347
分散集合ライブラリを用いた人工市場シミュレーションにおける通信と計算のオーバラップ実現Overlapping Communication and Computation in an Artificial Market Simulation Using a Distributed Collection Libraryjpn[発表概要] http://id.nii.ac.jp/1001/00185636/Articlehttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=185724&item_no=1&attribute_id=1&file_no=1Copyright (c) 2018 by the Information Processing Society of Japan神戸大学大学院システム情報学研究科神戸大学大学院システム情報学研究科神戸大学大学院システム情報学研究科神戸大学大学院システム情報学研究科神戸大学大学院科学技術イノベーション研究科藤島, 大輔鎌田, 十三郎長門, 広洋高木, 由美太田, 能大規模並列環境において,オブジェクト指向プログラミングが望まれるアプリケーション領域が増加している.人工市場シミュレーションソフトウェアの開発基盤であるPlhamは並列分散処理向けオブジェクト指向言語X10で実装されており,市場やトレーダなどはオブジェクトとして表現されている.Plhamでは市場計算および通信処理とトレーダの計算を並行して行えるよう,長期/短期トレーダを導入しその通信と計算のオーバラップを実現している.本発表では,我々のグループが提供している分散集合ライブラリをPlhamの並列実行系の実装に適用し,あわせてライブラリの機能拡張を行うことにより記述性改善を図った.分散集合ライブラリは,分散集合データ構造の要素であるオブジェクトの分散配置状況を管理し,要素の再配置機能やキャッシュの配置・更新機能を提供する.また,マルチコア環境において非同期に実行されその終了を待つことができる並列処理機能も提供する.これらの機能を利用することにより,Plhamでの通信と計算のオーバラップを簡潔に記述することができる.In large-scale parallel environment, application fields that prefer object oriented programming have been increasing. A Platform for Large-scale and High-frequency Artificial Market (Plham) is written in X10 language, and markets and traders are represented by objects. In Plham, to execute computation for markets and communication concurrently with computation for traders, long/short-term traders are introduced and communication is overlapped with computation. In this presentation, we try to apply our distributed collection library to a parallel execution system of Plham and enhance its functions to improve productivity. Our distributed collection library manages the distribution of element objects. It provides features to relocate elements or allocate and update caches of elements. To enable data parallel operation using multi-core CPUs, the library offers an asynchronous method that invokes data parallel processing over local elements using a thread pool and returns a condition variable to wait its completion. The overlapping of communication and computation in Plham was briefly described using these features.AA11464814情報処理学会論文誌プログラミング(PRO)11132322018-02-081882-78022018-02-06