Discipline: Computer Sciences and Information Management
Subcategory: Computer Science & Information Systems
John Bell - Louisiana State University Shreveport
Co-Author(s): Parsa Amin and Hartmut Kaiser, Louisiana State University, Baton Rouge, LA
HPX is a C++ runtime system for parallel and distribution application and can run on multiple localities. In order to accomplish this uses Global identification addresses (GIDs) and the Standard Template Library std::Map, which is an associate container. As the need for incredibly large amounts of data continually grows the ability to process it swiftly becomes even more imperative. The primary thing that separates associative containers is how they manipulate that data. The main operations that are performed on databases are insertions, look-ups and deletions. Even thou there is a large number of ACs no single one of them stand out in all three criteria. In this research, we look to improve the GID resolution time by identifying and evaluating various associative containers. We started with the ones that are already implemented and STL compatible. In order to evaluate them a well-documented benchmark program was created, evaluated and implemented. The HPX program will also have to be noted as to which of the three criteria is used the most. There were twenty data sets ranging from zero to ten million. We identified twelve potential associative containers and tested five. Of the five we tested the std::map and std::unordered_map preformed the worst in all three areas. The ones that preformed the best were for insertions: B Tree and AVL, look-ups: B Tree and AVL, and deletions: B Tree and AVL.
Funder Acknowledgement(s): The Stellar Group; NSF
Faculty Advisor: Hartmut Kaiser, hkaiser@cct.lsu.edu
Role: I created the benchmarks and tested the databases