INCR - a new library for incremental computation

This project presents a C++ library, named INCR, for writing incremental programs - programs that automatically adjust to changes to their input data. The library is developed with performance, readability and scalability in mind, differentiating itself from other existing solutions that are mostly...

Full description

Saved in:
Bibliographic Details
Main Author: Dou, Maokang
Other Authors: Lin Shang-Wei
Format: Final Year Project
Language:English
Published: Nanyang Technological University 2022
Subjects:
Online Access:https://hdl.handle.net/10356/156641
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-156641
record_format dspace
spelling sg-ntu-dr.10356-1566412022-04-21T08:06:37Z INCR - a new library for incremental computation Dou, Maokang Lin Shang-Wei School of Computer Science and Engineering shang-wei.lin@ntu.edu.sg Engineering::Computer science and engineering This project presents a C++ library, named INCR, for writing incremental programs - programs that automatically adjust to changes to their input data. The library is developed with performance, readability and scalability in mind, differentiating itself from other existing solutions that are mostly experimental and bounded by the performance of the programming languages in which they are written. The library follows commonly used algorithms and data structures in incremental computing to implement a run-time that keeps track of data dependencies in dependency graphs, caches sub-computations by memoization, and repairs outdated computations via change propagation. On top of the system run-time, the library also provides a collection of standard generic algorithms, including transform, filter and accumulate, for writing clear, accurate and fast incremental programs with ease. The experiments show the library produces accurate results while providing significant speedups over computing from scratch. Bachelor of Engineering (Computer Science) 2022-04-21T08:06:37Z 2022-04-21T08:06:37Z 2022 Final Year Project (FYP) Dou, M. (2022). INCR - a new library for incremental computation. Final Year Project (FYP), Nanyang Technological University, Singapore. https://hdl.handle.net/10356/156641 https://hdl.handle.net/10356/156641 en SCSE21-0049 application/pdf Nanyang Technological University
institution Nanyang Technological University
building NTU Library
continent Asia
country Singapore
Singapore
content_provider NTU Library
collection DR-NTU
language English
topic Engineering::Computer science and engineering
spellingShingle Engineering::Computer science and engineering
Dou, Maokang
INCR - a new library for incremental computation
description This project presents a C++ library, named INCR, for writing incremental programs - programs that automatically adjust to changes to their input data. The library is developed with performance, readability and scalability in mind, differentiating itself from other existing solutions that are mostly experimental and bounded by the performance of the programming languages in which they are written. The library follows commonly used algorithms and data structures in incremental computing to implement a run-time that keeps track of data dependencies in dependency graphs, caches sub-computations by memoization, and repairs outdated computations via change propagation. On top of the system run-time, the library also provides a collection of standard generic algorithms, including transform, filter and accumulate, for writing clear, accurate and fast incremental programs with ease. The experiments show the library produces accurate results while providing significant speedups over computing from scratch.
author2 Lin Shang-Wei
author_facet Lin Shang-Wei
Dou, Maokang
format Final Year Project
author Dou, Maokang
author_sort Dou, Maokang
title INCR - a new library for incremental computation
title_short INCR - a new library for incremental computation
title_full INCR - a new library for incremental computation
title_fullStr INCR - a new library for incremental computation
title_full_unstemmed INCR - a new library for incremental computation
title_sort incr - a new library for incremental computation
publisher Nanyang Technological University
publishDate 2022
url https://hdl.handle.net/10356/156641
_version_ 1731235725399031808