Annual review of computer science vol. 1, 1986
External memory algorithms and data structures: dealing with massive data
ACM Computing Surveys (CSUR)
Getting More from Out-of-Core Columnsort
ALENEX '02 Revised Papers from the 4th International Workshop on Algorithm Engineering and Experiments
StreamIt: A Language for Streaming Applications
CC '02 Proceedings of the 11th International Conference on Compiler Construction
The FG programming environment: good and good for you
Proceedings of the eighteenth annual ACM symposium on Parallelism in algorithms and architectures
Simulated Annealing with Iterative Improvement
ICSPS '09 Proceedings of the 2009 International Conference on Signal Processing Systems
STXXL: standard template library for XXL data sets
ESA'05 Proceedings of the 13th annual European conference on Algorithms
Hi-index | 0.00 |
The FG programming framework allows users to develop external-memory programs that mitigate high latency operations, such as disk accesses and interprocessor communication. Previous research culminated in FG 1.4, which structures programs as software pipelines that operate on large buffers, where each stage of the pipeline runs in its own thread. FG was originally developed with only linear pipeline structures in mind, but later versions, up to 1.4, expanded the original concept to include various nonlinear structures. When we reviewed the codebase for FG 1.4, we found that as FG picked up more features, the code became increasingly convoluted. Consequently, we decided to fully redesign and reimplement FG from a clean slate, producing FG 2.0. The underlying paradigm changes from a pipeline to a network of stages. With the network paradigm, several constructs that required special support in FG 1.4 come for free. Early experiences with FG 2.0 indicate that programs that use it are significantly smaller than they were with FG 1.4 and that they run faster.