@techreport{oai:ipsj.ixsq.nii.ac.jp:00222653, author = {佐藤, 碧 and 新美, 礼彦}, issue = {10}, month = {Nov}, note = {本論文では,シェルスクリプトにおける行指向なコマンド/パイプラインに増分計算を適用するコマンドである incrementalize を提案する.行指向なコマンド/パイプラインとは,出力が入力によって決定され,またそれらの入力を分割して与えても,最終的に得られる出力は,入力を分割せずに与えた場合の出力と同様になるようなコマンド/パイプラインを指す.そのような性質を満たすコマンド/パイプラインの再実行時に,以前と同様の入力が与えられた場合,それに対応する出力を事前にキャッシュしておくことで,再実行することなく出力を返すことが可能である.incrementalize は,そのようなコマンド/パイプラインを対象として,再実行時におけるキャッシュの検索と読み出し,新規の入力に対する出力のキャッシングを自動的に行う.これにより,前述の性質を満たす任意のコマンド/パイプラインに対して,与えられた入力のうち,新規に計算する必要がある部分についてのみ計算する増分計算を適用して処理速度を向上させる.そして,本提案の有効性を検証するために評価実験を行った., This paper proposes a command “incrementalize”, which applies incremental computation to line-oriented commands/pipelines in shell script. Line-oriented commands/pipelines refer to that their outputs are determined by their inputs, and their final outputs are the same as the outputs with the non-divided inputs even if commands/pipelines are given divided inputs. Such commands/pipelines can output data without re-calculation by caching previous outputs, which are corresponding to specific inputs, when they get the same inputs as before. For their commands/pipelines, “incrementalize” searches and read caches on re-execution, and caches their outputs for new inputs automatically. Using the proposed command, we can improve the execution time of their commands/pipelines by applying incremental computation, which calculates only yet non-calculated new inputs. And we evaluate the efficiency of this proposition through experiments.}, title = {行指向なコマンド/パイプラインへの増分計算の適用}, year = {2022} }