雑誌
第54回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2013, pp.81-86, 2013-01-11

Graphics processing units (GPUs) are the state of the art embracing the concept of many-core technology. Their significant advantage in performance and performance-per-watt compared to traditional microprocessors has facilitated development of GPUs in many compute applications. However, GPUs are often treated as ``black-box'' devices due to proprietary strategies of hardware vendors. One of the greatest challenges of this research domain is the in-depth understanding of GPU architectures and runtime mechanisms so that the systems research community can tackle fundamental problems of GPUs. In this paper, we present an open-source implementation of CUDA runtime, which is the most widely-recognized programming framework for GPUs, as well as a documentation of ``how GPUs work'' investigated by our reverse engineering work. Our implementation is based on Linux and is targeted at NVIDIA GPUs.
著者
中野 圭介
雑誌
第54回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2013, pp.181-188, 2013-01-11

関数型プログラミングにおいて,リストを消費する関数 foldr および生成する関数 unfoldr は重要な役割を果たす.特に,入力を foldr によって消費し,出力を unfoldr によって生成するような関数はメタモルフィズムとよばれ,基数変換などに代表される或るデータ表現から別のデータ表現への変換を自然に定義することが可能である.Bird と Gibbons は,このメタモルフィズムに対し,入力を消費しながら出力を生成するようなストリーム処理として実装できるための条件を提示したが,自然数に対する基数変換には応用することができなかった.これは入力の桁を全て読み込まない限り,出力の桁を決定できないためで,彼らの提示した条件を満たしていない.これを解決するために著者が提案した手法が,ジグソーパズルを利用したメタモルフィズムの計算機構である.本稿では,グレイコードのような特別な記数法に対してこの機構を適用し,対応するジグソーモデルの導出方法を示す.
著者
倉光君郎
雑誌
第54回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2013, pp.27-34, 2013-01-11

Mini Konoha�は、究極の、もう少し具体的にいえば人類が開発する最後のスクリプト言語処理系、つまりもう新しいスクリプト言語は設計しなくてもよいといえる仕様の実現を目指している。本稿では、Konoha/KonohaScriptの開発経験からふりかえり、言語性能、応用領域、文法やプログラミング教育、ソフトウェア工学との関係など、様々な面から究極なスクリプト言語の設計を考えてみたい。
著者
那須 律政 松崎 公紀
雑誌
第54回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2013, pp.173-180, 2013-01-11

ペンシルパズルのうちでも,数独に対してさまざまな研究が行われている.そのうち,最少ヒント問題とは,唯一解を持つ盤面を構成できる最少のヒント数はいくつかという問題である.通常のサイズが9×9の数独については,2012年1月にMcGuireらによって,ヒント数16の盤面がない,すなわち,最少ヒントが17であることが示された.GPCCの2011年問題では,サイズが16×16の数独に対する最少ヒント問題がとりあげられ,そのなかで白川によってヒント数56の盤面が発見された.著者らもこの数独の少数ヒント問題に対して研究を行っている.数独の少数ヒント盤面を効率良く生成するには,広大な探索空間の中から適切に探索を行う必要がある.著者らは,ゲーム分野で近年活発に研究されているモンテカルロ木探索手法をこの問題に適用し,少数ヒント問題を効率良く生成することを目指している.本論文では,数独少数ヒント盤面生成にモンテカルロ木探索手法を適用するにあたり必要であった工夫と,得られた少数ヒント盤面について報告する.
著者
服部 健太 溝江 真也 三角 正樹
雑誌
第54回プログラミング・シンポジウム予稿集
巻号頁・発行日
vol.2013, pp.99-106, 2013-01-11

仮想化環境やクラウドの浸透によって,ITシステムの利用は高度化しており,それにともないシステム運用の負荷も高くなっている.このような状況の中,多くの現場では,突然のトラブル対応や頻繁な設定変更の依頼などに追われて,エンジニアが疲弊してしまうといった問題がある.現場では,監視ツールやチケット管理ツールなど,運用のための様々なツールを導入したり,個別のスクリプトやマクロを駆使したりするなどして,効率化の努力を行っているところも多いが,最終的に,これらツール間のやり取りを行うのは人手であるため,なかなか負荷軽減につながらない.我々はこのようなITシステムの運用現場を少しでも効率化することを目指して,IT運用自動化プラットフォームKompiraを開発している.従来から数多くある統合運用管理ツールと異なり,Kompiraでは運用自動化に必要な最小限の機能に的を絞ることで,シンプルで軽量なプラットフォームを実現している.運用業務とは数多くのツール間を連携させることであるととらえ,Kompiraはそれらをジョブフローと呼ぶ運用手順を記述したスクリプトで結びつける.本稿では,Kompiraの特長や設計と実装について説明し,実際の適用事例を紹介する.