Esempio n. 1
0
File: main.cpp Progetto: starius/yas
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);
}
Esempio n. 2
0
File: main.cpp Progetto: hoangle/yas
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;
	}
}