著者
竹迫 良範
雑誌
第53回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2012, pp.129-136, 2012-01-06

近年WebブラウザはJavaScriptの実行速度を向上させるためにx86JITエンジンを搭載しているが、これらのJITエンジンには任意のx86コードを実行されてしまう脆弱性が存在する。JITエンジンは自分自身で生成したコードを実行するため、書き込み可能なメモリ領域を確保し、実行フラグを立てる。最近のWindowsOSでは、DEP(データ実行防止)機能があり、スタックやヒープ領域でx86コードが実行されることを防いでいる。さらにASLR(アドレス空間配置のランダム化)では、DEPやASLRを突破する新しい攻撃として、Return-Oriented ProgrammingやJIT-Sprayingと呼ばれる手法が知られるようになった。本発表では実際にJavaScriptのJITエンジンを使って任意のx86コードを実行する方法を解説し、このようなx86 JITコンパイラの脆弱性を保護する安全なコード生成手法について考察する。
著者
木村 健 小谷 善行
雑誌
第53回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2012, pp.91-96, 2012-01-06

本稿ではGPGPU(グラフィックスプロセッサの汎的計算への応用)を用いた将棋ゲーム木探索手法を提案する。チェスや将棋などのゼロ和完全情報ゲームにおける並列ゲーム木探索の研究は決して新しい研究ではない。しかしながらさまざまな技術が年を経るごとに開発されているにつけ、並列探索の技術も変化を必要としている。GPU上における並列計算環境であるCUDAと、CUDAライブラリの一部であるCUDA版C++STLとも言えるThrustを用いた、並列ゲーム木探索手法を提案する。提案手法は1993年にTransputer上に実装されたYBWCをベースにしており、高いスピードアップが期待できる。ただし、CUDA固有の高スループット実現の難しさもあり、提案手法の実際の実装についての知見が必要である。
著者
鈴木 勇介
雑誌
第53回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2012, pp.171-176, 2012-01-06

ECMA262の最新版5.1(June2011)の仕様に忠実な処理系を実装した.そしてTC39で策定されるConformanceSuiteであるTest262にて完全に仕様に準拠していることを確認した.更にこの処理系に対して各種最適化を行った.
著者
仁科 圭介 佐藤 未来子 並木 美太郎
雑誌
第53回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2012, pp.29-36, 2012-01-06

Flash SSD(Solid-State Drive, 以下SSD)は、HDD(Hard Disk Drive)に比べランダムアクセス性能が高く、省電力であるという特徴を持つが、SSDの容量単価はHDDに比べて高く、SSDをコスト効率よく計算機システムの高速化や省電力化に李用する方式が課題である。本研究では、HDDのみで運用されている計算機のディスクアクセスを高速化するために新たにSSDを追加する場合を想定し、SSDをHDDのディスクキャッシュとして用いる方式を提案し、この方式を実現するLinuxデバイスドライバの設計・実装を行った。本稿では本デバイスドライバにこれまでに実装した機能について概説するとともに、新たに実装した、SSD内にキャッシュされた書き込みデータ(ダーティデータ)の追い出しによる性能低下に対処する改善策の設計、実装と評価を示す。評価では、ダーティデータの追い出しを遅延し、ストレージデバイスへの負荷を分散させることでアクセス性能の改善を実現した。
著者
木村 健 小谷 善行
雑誌
第53回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2012, pp.91-96, 2012-01-06 (Released:2012-06-20)

本稿ではGPGPU(グラフィックスプロセッサの汎的計算への応用)を用いた将棋ゲーム木探索手法を提案する。チェスや将棋などのゼロ和完全情報ゲームにおける並列ゲーム木探索の研究は決して新しい研究ではない。しかしながらさまざまな技術が年を経るごとに開発されているにつけ、並列探索の技術も変化を必要としている。GPU上における並列計算環境であるCUDAと、CUDAライブラリの一部であるCUDA版C++STLとも言えるThrustを用いた、並列ゲーム木探索手法を提案する。提案手法は1993年にTransputer上に実装されたYBWCをベースにしており、高いスピードアップが期待できる。ただし、CUDA固有の高スループット実現の難しさもあり、提案手法の実際の実装についての知見が必要である。 In this paper, we introduce a Shogi (Japanese Chess)’s game tree search method that uses GPGPU (General Purpose GPU). This is not new research field that parallel game tree search for zero-sum perfect information games (such as Chess and Shogi). The technology of parallel game tree search need change to fit new technology such as GPGPU. Inthispaper, we introduce the way of searching game tree in parallel which uses CUDA (Parallel environment for GPGPU) and Thrust (C++STL like CUDA based library). The proposal method is based on YBWC which implemented 1024 nodes Transputers in 1993, so high speed-up is guaranteed. But there are difficulties of implementing high throughput program in CUDA, so individual implementation and their performance findings are needed.