研究者詳細

学術論文
分割表示   全件表示 >>

27 件中 11 - 20 件目

年度
Year
論文題目名
Title of the articles
共著区分
Collaboration
   Classification
NeoCILIUS
   請求番号/資料ID
Request No
掲載誌名 Journal name,出版機関名 Publishing organization,巻/号 Vol./no.,頁数 Page nos.,発行年月(日) Date
2014  可逆プログラミング言語の引数渡し機構の拡張  共著   
情報処理学会論文誌:プログラミング  , 情報処理学会  , 7  , 21-36  , 2014/08   

概要(Abstract) 本稿では,可逆プログラミング言語Janusの引数渡し機構を拡張して,その拡張言語が可逆であることを示す.参照渡しのモデル化には,同一の参照を持つかもしれない複数の変数名が同じ記憶場所を指せるメモリモデルが必要である.これは既存のJanusで用いられていた状態モデルでは直接には扱うことができない.この問題を解決するために,我々は,環境・記憶域モデルを導入して意味論を改良した.この結果,プロシージャの実引数には,局所変数や局所配列変数だけでなく大域変数や添字付き配列変数の参照,および同一の参照を持つ複数の構文対象も渡せるようになった.拡張言語が可逆であることの保証には,環境と記憶域の更新が可逆であることの保証が必要である.これらの更新は,制限された可逆操作のみ用いて実現されることで,可逆であることが保証される.我々は,拡張言語がほかにも既存のJanusの良い性質を保っていることを示す.すなわち,任意の文やプロシージャ呼び出しの逆実行ができること,および任意の文に対して逆文が存在してそれを求めるプログラム逆変換器が構成できることを示す.さらに,我々は,プログラミング言語を可逆にするために課されていた代入の構文上の制限を緩和する.このことが原因で起こる記憶域の不正な更新は,大域のプログラム解析をしなくても,効率的に検知することができる. 

備考(Remarks)  

2012  Minimizing Garbage Size by Generating Reversible Simulations  共著   
Reversibility, cellular automata, and unconventional computation. Proceedings.  , IEEE Computer Society  , 379–387  , 2012/12/05   

概要(Abstract) Reversible simulations can realize any irreversible computation on any r-Turing complete reversible computation model at the expense of additional garbage output. The problem of minimizing the garbage size is an important issue in reversible simulations. We discuss the notion of the minimal garbage size of reversible simulations. Then, we propose a three-stage reversible simulation for minimizing garbage size, the first stage generates specialized irreversible programs, the second translates them into reversible simulations, and the third performs reversible simulation using the generated reversible programs. Two case studies on sorting algorithms suggest that the proposed method generates solutions with minimal garbage size. 

備考(Remarks) http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6424599&isnumber=6424528 

2011  Optimizing Input-Erasing Clean Reversible Simulation for Injective Functions  共著   
Multiple-Valued Logic and Soft Computing  , Old City Publishing  , Vol.18/no.1  , 5–24  , 2012/01   

概要(Abstract) Bennett showed that a clean reversible simulation of injective programs is possible without returning the input of a program as additional output. His method involves two computation and two uncomputation phases. This paper proposes an optimization of Bennett’s simulation that requires only half of the computation and uncomputation steps for a class of injective programs. A practical consequence is that the reversible simulation runs twice as fast as Bennett’s simulation. The proposed method is demonstrated by developing lossless encoders and decoders for run-length encoding and range coding. The range-coding program is further optimized by conserving the model over the text-generation phase. This paper may thus provide a new view on developing efficient reversible simulations for a certain class of injective functions. 

備考(Remarks) http://www.oldcitypublishing.com/journals/mvlsc-home/mvlsc-issue-contents/mvlsc-volume-18-number-1-2012/mvlsc-18-1-p-5-24/ 

2011  Towards a Reversible Functional Language  共著   
Lecture Notes in Computer Science  , Springer-Verlag  , Vol. 7165  , 14–29  , 2012   

概要(Abstract) We identify concepts of reversibility for a functional language
by means of a set of semantic rules with specific properties. These properties include injectivity along with local backward determinism, an important operational property for an efficient reversible language. We define a concise reversible first-order functional language in which access to the backward semantics is provided to the programmer by inverse function calls. Reversibility guarantees that in this language a backward run (inverse interpretation) is as fast as the corresponding forward run itself. By adopting a symmetric first-match policy for case expressions, we can write overlapping patterns in case branches, as is customary in ordinary functional languages, and also in leaf expressions, unlike existing inverse interpreter methods, which enables concise programs. In patterns, the use of a duplication/equality operator also simplifies inverse computation and program inversion. We discuss the advantages of a reversible functional language using example programs, including run-length encoding. Program inversion is seen to be as lightweight as for imperative
reversible languages and realized by recursive descent. Finally, we show
that the proposed language is r-Turing complete. 

備考(Remarks)  

2011  Static Task Scheduling Algorithms Based on Greedy Heuristics for Battery-Powered DVS Systems  共著   
IEICE Trans. on Information and Systems  , The Institute of Electronics, Information and Communication Engineers  , E93-D  , 2737-2746  , 2010/10   

概要(Abstract) We identify concepts of reversibility for a functional language by means of a set of semantic rules with specific properties. These properties include injectivity along with local backward determinism, an important operational property for an efficient reversible language. We define a concise reversible first-order functional language in which access to the backward semantics is provided to the programmer by inverse function calls. Reversibility guarantees that in this language a backward run (inverse interpretation) is as fast as the corresponding forward run itself. By adopting a symmetric first-match policy for case expressions, we can write overlapping patterns in case branches, as is customary in ordinary functional languages, and also in leaf expressions, unlike existing inverse interpreter methods, which enables concise programs. In patterns, the use of a duplication/equality operator also simplifies inverse computation and program inversion. We discuss the advantages of a reversible functional language using example programs, including run-length encoding. Program inversion is seen to be as lightweight as for imperative reversible languages and realized by recursive descent. Finally, we show that the proposed language is r-Turing complete. 

備考(Remarks)  

2009  Reversible Computation and Reversible Programming Languages  単著   
Electronic Notes in Theoretical Computer Science  , Elsevier  , 253(6)  , 71-81  , 2010/03   

概要(Abstract)  

備考(Remarks) 以下における招待講演を改訂したもの.
Reversible Computation 2009. 

2009  Heuristics for Static Voltage Scheduling Algorithms on Battery-Powered DVS Systems  未設定   
2009 International Conference on Embedded Software and Systems  , IEEE Computer Society  , 265-272  , 2009/05   

概要(Abstract) The principles for good design of battery-aware voltage scheduling algorithms for both aperiodic and periodic task sets on dynamic voltage scaling (DVS) systems are presented. The proposed algorithms are based on greedy heuristics suggested by several battery characteristics and Lagrange multipliers. To construct the proposed algorithms, we use the battery characteristics in the early stage of scheduling more properly. As a consequence, the proposed algorithms show superior results on synthetic examples of periodic and aperiodic tasks from the task sets which are excerpted from the comparative work, on uniprocessor platforms. Especially, for some large task sets, the proposed algorithms enable previously unschedulable task sets due to battery exhaustion to be schedulable. 

備考(Remarks)  

2008  動的電圧制御システムにおける評価戦略選択に基づく高効率消費エネルギー関数型プログラミング  共著  http://ci.nii.ac.jp/naid/110007970891 
情報処理学会論文誌:トランザクション「プログラミング」  , 情報処理学会  , Vol.2, No.2(PRO41)  , 54-69  , 2009/03   

概要(Abstract) 動的電圧制御 (DVS: dynamic voltage scaling) は,プロセッサへの供給電圧とその動作周波数をプログラム実行時に変化させる技術であり,現在,多くの商用プロセッサに実装されている.本稿では,デッドラインなどの制約のあるリアルタイムシステムを対象に,DVS システムにおいて動的エネルギー消費のより少ないプログラムを開発する方法論の 1 つを提示する.DVS システムで実行されるプログラムに動的エネルギー消費の最適化が有効であるためには,残り予測実行時間の実行早期の正確な見積りを容易にすることが重要である.そのため,プログラムは何を計算するかに加えどう計算するかをうまく指定する必要がある.しかし,プログラム改変によるエネルギー消費の最適化はプログラムのモジュール性を著しく損なう.本稿では,プログラムから独立し,エネルギー消費の最適化戦略を開発する手法を提案する.提案手法により,エネルギー消費の最適化を行うときに元のプログラムの部分正当性が容易に保存され,元のプログラムおよびエネルギー消費の最適化を行うための評価戦略が独立してそれぞれモジュール性を有するようになった.遅延評価などのプログラミング言語の特徴や構成的アルゴリズム論における組化などを活用することにより半自動化が実現できたことが,本開発法の特徴の 1 つである.本稿では,整列,選択,文字列検索などの基本的なアルゴリズムに提案手法を適用する.また,電力モデルを備えた命令セットシミュレータ(ISS: instruction set simulator)において実験を行い,エネルギー消費がどれだけ最適化されたかを評価する.基本的なアルゴリズムにおいて,本稿のアプローチが有効であることから,複雑なアルゴリズムに対しても本手法が効果的であることが期待される. 

備考(Remarks) 以下で発表したものを改訂したもの.
動的電圧制御システムにおけるエネルギー効率的な関数プログラム, 第71回情報処理学会プログラミング研究発表会. 

2008  A Generalized Framework for Energy Savings in Real-Time Multiprocessor Systems  共著   
Proceedings of 2008 International SoC Design Conference  , IEEE  , 727-732  , 2009/01   

概要(Abstract) A generalized dynamic energy performance scaling (DEPS) framework is proposed for exploring application-specific energy-saving potential in multiprocessor systems. This software-centric framework takes advantage of possible power control mechanisms to trade off performance for energy savings. Three existing technologies, i.e., dynamic hardware resource configuration (DHRC), dynamic voltage frequency scaling (DVFS), and dynamic power management (DPM), have been employed in this framework to achieve the maximal energy savings. The problem of determining the optimal task allocation and DEPS configurations is formulated as an integer linear programming (ILP) problem. Several practical issues such as how to reduce measurement and computation time and how to reduce the configuration overhead are also addressed. The effectiveness of DEPS is validated through a case study. 

備考(Remarks)  

2008  Reversible Flowchart Languages and the Structured Reversible Program Theorem  共著   
Automata, Languages and Programming  , Springer  , LNCS 5126  , 258-270  , 2008/08   

概要(Abstract) Many irreversible computation models have reversible counterparts, but these are poorly understood at present. We introduce reversible flowcharts with an assertion operator and show that any reversible flowchart can be simulated by a structured reversible flowchart using only three control flow operators. Reversible flowcharts are r-Turing-complete, meaning that they can simulate reversible Turing machines without garbage data. We also demonstrate the injectivization of classical flowcharts into reversible flowcharts. The reversible flowchart computation model provides a theoretical justification for low-level machine code for reversible microprocessors as well as high-level block structured reversible languages. We give examples for both such languages and illustrate them with a lossless encoder for permutations given by Dijkstra. 

備考(Remarks)  

Page: [<<PREV] [1] [2] [3] [NEXT>>]