TPIE

2362a60
Related Pages
Here is a list of all related documentation pages:
 Overview and basic conceptsThe data sets involved in some modern applications are too large to fit in the main memory of even the most powerful computers and must therefore reside on disk
 Compiling and installing TPIEYou will need Git, CMake, Boost and a C++ compiler in order to use TPIE on any system
 Repository overview
 File listDummy Doxygen destination linking to the autogenerated file list
 AuthorsThe TPIE development team consists of the following people:
 Reading and writing file streamsThe central class in TPIE for reading from files and writing to files is the file_stream class
 Internal sortingInternal memory sorting is implemented in parallel_sort.h as a parallel quick sort with a sequential partition step
 External sortingThe recommended way to sort large data set (which will typically be stored in a tpie::file_stream in TPIE) is to use one of the tpie::sort functions defined in sort.h
 Priority queueTPIE provides a very efficient external memory priority queue based off Sanders, Fast Priority Queues for Cached Memory
 Memory managerTPIE provides various external memory algorithms and data structures, most prominently an external memory priority queue (tpie::ami::priority_queue) and external memory sorting (tpie::sort)
 Progress reportingTPIE has a couple classes for reporting progress to the user
 Fraction databaseWhen using fractional progress reporting, TPIE is able to measure and remember the proportion of execution time spent between the fractions
 External memory queue implementationLet us see how to implement an external memory (EM) queue using TPIE's files and streams
 Pipelining
 Pipelining Nodes
 Serialization streams
 Compressed streamsThe TPIE stream header has a bit that indicates whether compression is used for the stream