int main() { setvbuf(stdout, 0, _IONBF, 0); std::cout << "platform bits: " << (YAS_PLATFORM_BITS()) << std::endl; yas::uint32_t iterations = 1024*1024*10; tests<yas::binary_mem_oarchive, yas::binary_mem_iarchive>(iterations); tests<yas::text_mem_oarchive, yas::text_mem_iarchive>(iterations); //tests<yas::json_mem_oarchive, yas::json_mem_iarchive>(iterations); }
int main() { setvbuf(stdout, 0, _IONBF, 0); std::cout << "platform bits: " << (YAS_PLATFORM_BITS()) << std::endl; enum { iterations = 1024*1024, preallocated = iterations*100 }; try { test_result bb, bt, yb, yt; bb = boost_test< boost::archive::binary_oarchive ,boost::archive::binary_iarchive >(iterations, preallocated); std::cout << "binary:" << std::endl << " boost save time : " << bb.save.count() << " ms" << std::endl << " boost load time : " << bb.load.count() << " ms" << std::endl << " boost data size : " << bb.size << std::endl; yb = yas_test< yas::binary_oarchive<yas::mem_ostream> ,yas::binary_iarchive<yas::mem_istream> >(iterations, preallocated); std::cout << " yas save time : " << yb.save.count() << " ms" << std::endl << " yas load time : " << yb.load.count() << " ms" << std::endl << " yas data size : " << yb.size << std::endl << " yas save speed up: " << (((double)bb.save.count())/((double)yb.save.count())) << std::endl << " yas load speed up: " << (((double)bb.load.count())/((double)yb.load.count())) << std::endl; bt = boost_test< boost::archive::text_oarchive ,boost::archive::text_iarchive >(iterations, preallocated); std::cout << "text:" << std::endl << " boost save time : " << bt.save.count() << " ms" << std::endl << " boost load time : " << bt.load.count() << " ms" << std::endl << " boost data size : " << bt.size << std::endl; yt = yas_test< yas::text_oarchive<yas::mem_ostream> ,yas::text_iarchive<yas::mem_istream> >(iterations, preallocated); std::cout << " yas save time : " << yt.save.count() << " ms" << std::endl << " yas load time : " << yt.load.count() << " ms" << std::endl << " yas data size : " << yt.size << std::endl << " yas save speed up: " << (((double)bt.save.count())/((double)yt.save.count())) << std::endl << " yas load speed up: " << (((double)bt.load.count())/((double)yt.load.count())) << std::endl; } catch (const std::exception &ex) { std::cout << "[exception]: " << ex.what() << std::endl; } }