Flat profile: Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 26.90 2.65 2.65 59032198 0.00 0.00 Imager::Sphere::AppendAllIntersections(Imager::Vector const&, Imager::Vector const&, std::vector >&) const 22.54 4.87 2.22 21621961 0.00 0.00 Imager::Cuboid::ObjectSpace_AppendAllIntersections(Imager::Vector const&, Imager::Vector const&, std::vector >&) const 7.51 5.61 0.74 21621961 0.00 0.00 Imager::SolidObject_Reorientable::AppendAllIntersections(Imager::Vector const&, Imager::Vector const&, std::vector >&) const 6.90 6.29 0.68 3203808 0.00 0.00 Imager::Scene::CalculateRefraction(Imager::Intersection const&, Imager::Vector const&, double, Imager::Color, int, double&) const 6.70 6.95 0.66 57452084 0.00 0.00 Imager::PickClosestIntersection(std::vector > const&, Imager::Intersection&) 5.28 7.47 0.52 4629312 0.00 0.00 Imager::Scene::CalculateMatte(Imager::Intersection const&) const 5.18 7.98 0.51 13887936 0.00 0.00 Imager::Scene::HasClearLineOfSight(Imager::Vector const&, Imager::Vector const&) const 3.76 8.35 0.37 1 0.37 9.85 Imager::Scene::SaveImage(char const*, unsigned int, unsigned int, double, unsigned int) const 3.35 8.68 0.33 4668149 0.00 0.00 Imager::Scene::CalculateLighting(Imager::Intersection const&, Imager::Vector const&, double, Imager::Color, int) const 1.93 8.87 0.19 9025535 0.00 0.00 Imager::Sphere::Contains(Imager::Vector const&) const 1.62 9.03 0.16 50 0.00 0.00 encodeLZ77(uivector*, Hash*, unsigned char const*, unsigned int, unsigned int, unsigned int) 1.42 9.17 0.14 7734025 0.00 0.00 Imager::Scene::TraceRay(Imager::Vector const&, Imager::Vector const&, double, Imager::Color, int) const 1.12 9.28 0.11 3203808 0.00 0.00 Algebra::SolveQuadraticEquation(std::complex, std::complex, std::complex, std::complex*) 0.91 9.37 0.09 7734025 0.00 0.00 Imager::Scene::FindClosestIntersection(Imager::Vector const&, Imager::Vector const&, Imager::Intersection&) const 0.81 9.45 0.08 2586217 0.00 0.00 Imager::Scene::CalculateReflection(Imager::Intersection const&, Imager::Vector const&, double, Imager::Color, int) const 0.71 9.52 0.07 3203808 0.00 0.00 Imager::SolidObject_Reorientable::Contains(Imager::Vector const&) const 0.61 9.58 0.06 1137648 0.00 0.00 Imager::ChessBoard::SquareCoordinate(double) const 0.51 9.63 0.05 3203811 0.00 0.00 Imager::SolidObject::SurfaceOptics(Imager::Vector const&, void const*) const 0.41 9.67 0.04 3203808 0.00 0.00 Algebra::FilterRealNumbers(int, std::complex const*, double*) 0.41 9.71 0.04 1425504 0.00 0.00 Imager::SolidObject_Reorientable::SurfaceOptics(Imager::Vector const&, void const*) const 0.30 9.74 0.03 1425516 0.00 0.00 Imager::Optics::ValidateReflectionColor(Imager::Color const&) const 0.30 9.77 0.03 1425504 0.00 0.00 Imager::Optics::SetMatteColor(Imager::Color const&) 0.30 9.80 0.03 1425504 0.00 0.00 Imager::ChessBoard::ObjectSpace_SurfaceOptics(Imager::Vector const&, void const*) const 0.20 9.82 0.02 3203808 0.00 0.00 Imager::Cuboid::ObjectSpace_Contains(Imager::Vector const&) const 0.10 9.83 0.01 432000 0.00 0.00 getPixelColorRGBA8(unsigned char*, unsigned char*, unsigned char*, unsigned char*, unsigned char const*, unsigned int, LodePNGColorMode const*) 0.10 9.84 0.01 304 0.00 0.00 sort_coins(Coin*, unsigned int) 0.10 9.85 0.01 2 0.01 0.01 zlib_compress(unsigned char**, unsigned int*, unsigned char const*, unsigned int, LodePNGCompressSettings const*) 0.00 9.85 0.00 661780 0.00 0.00 string_set(char**, char const*) 0.00 9.85 0.00 544739 0.00 0.00 addBitToStream(unsigned int*, ucvector*, unsigned char) 0.00 9.85 0.00 201890 0.00 0.00 uivector_push_back(uivector*, unsigned int) 0.00 9.85 0.00 136201 0.00 0.00 ucvector_push_back(ucvector*, unsigned char) 0.00 9.85 0.00 49935 0.00 0.00 lodepng_color_mode_equal(LodePNGColorMode const*, LodePNGColorMode const*) 0.00 9.85 0.00 1800 0.00 0.00 filterScanline(unsigned char*, unsigned char const*, unsigned char const*, unsigned int, unsigned int, unsigned char) 0.00 9.85 0.00 686 0.00 0.00 lodepng_add32bitInt(ucvector*, unsigned int) 0.00 9.85 0.00 332 0.00 0.00 color_tree_add(ColorTree*, unsigned char, unsigned char, unsigned char, unsigned char, int) 0.00 9.85 0.00 327 0.00 0.00 cleanup_coins(Coin*, unsigned int) 0.00 9.85 0.00 281 0.00 0.00 append_symbol_coins(Coin*, unsigned int const*, unsigned int, unsigned int) 0.00 9.85 0.00 24 0.00 0.00 HuffmanTree_cleanup(HuffmanTree*) 0.00 9.85 0.00 24 0.00 0.00 HuffmanTree_makeFromLengths2(HuffmanTree*) 0.00 9.85 0.00 24 0.00 0.00 HuffmanTree_makeFromFrequencies(HuffmanTree*, unsigned int const*, unsigned int, unsigned int) 0.00 9.85 0.00 22 0.00 0.00 void std::vector >::_M_range_insert(__gnu_cxx::__normal_iterator > >, unsigned char*, unsigned char*, std::forward_iterator_tag) 0.00 9.85 0.00 11 0.00 0.00 _ZNSt6vectorIN6Imager12IntersectionESaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_ 0.00 9.85 0.00 4 0.00 0.00 reportTime(char const*, std::chrono::duration >) 0.00 9.85 0.00 3 0.00 0.00 lodepng_chunk_create(unsigned char**, unsigned int*, unsigned int, char const*, unsigned char const*) 0.00 9.85 0.00 3 0.00 0.00 lodepng_info_cleanup(LodePNGInfo*) 0.00 9.85 0.00 3 0.00 0.00 lodepng_chunk_generate_crc(unsigned char*) 0.00 9.85 0.00 3 0.00 0.00 addUnknownChunks(ucvector*, unsigned char*, unsigned int) 0.00 9.85 0.00 3 0.00 0.00 LodePNGText_cleanup(LodePNGInfo*) 0.00 9.85 0.00 3 0.00 0.00 LodePNGIText_cleanup(LodePNGInfo*) 0.00 9.85 0.00 3 0.00 0.00 Imager::Optics::SetOpacity(double) 0.00 9.85 0.00 3 0.00 0.00 Imager::Optics::SetMatteGlossBalance(double, Imager::Color const&, Imager::Color const&) 0.00 9.85 0.00 3 0.00 0.00 Imager::Sphere::~Sphere() 0.00 9.85 0.00 3 0.00 0.00 _ZNSt6vectorIN6Imager11LightSourceESaIS1_EE17_M_realloc_insertIJRKS1_EEEvN9__gnu_cxx17__normal_iteratorIPS1_S3_EEDpOT_ 0.00 9.85 0.00 3 0.00 0.00 _ZNSt6vectorIPN6Imager11SolidObjectESaIS2_EE17_M_realloc_insertIJRKS2_EEEvN9__gnu_cxx17__normal_iteratorIPS2_S4_EEDpOT_ 0.00 9.85 0.00 3 0.00 0.00 std::__cxx11::basic_string, std::allocator >::_M_assign(std::__cxx11::basic_string, std::allocator > const&) 0.00 9.85 0.00 2 0.00 0.00 lodepng_info_init(LodePNGInfo*) 0.00 9.85 0.00 2 0.00 0.00 checkColorValidity(LodePNGColorType, unsigned int) 0.00 9.85 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z10reportTimePKcNSt6chrono8durationIxSt5ratioILx1ELx1000000000EEEE 0.00 9.85 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z9BlockTestv 0.00 9.85 0.00 1 0.00 0.00 _GLOBAL__sub_I__ZN6Imager6IndentERSoi 0.00 9.85 0.00 1 0.00 0.00 _GLOBAL__sub_I__ZN7Algebra20SolveLinearEquationsEddddddddddddRdS0_S0_ 0.00 9.85 0.00 1 0.00 0.19 lodepng_encode(unsigned char**, unsigned int*, unsigned char const*, unsigned int, unsigned int, LodePNGState*) 0.00 9.85 0.00 1 0.00 0.01 lodepng_convert(unsigned char*, unsigned char const*, LodePNGColorMode*, LodePNGColorMode*, unsigned int, unsigned int) 0.00 9.85 0.00 1 0.00 0.00 lodepng_info_copy(LodePNGInfo*, LodePNGInfo const*) 0.00 9.85 0.00 1 0.00 0.00 lodepng_state_init(LodePNGState*) 0.00 9.85 0.00 1 0.00 0.19 lodepng_encode_memory(unsigned char**, unsigned int*, unsigned char const*, unsigned int, unsigned int, LodePNGColorType, unsigned int) 0.00 9.85 0.00 1 0.00 0.00 lodepng_state_cleanup(LodePNGState*) 0.00 9.85 0.00 1 0.00 0.10 lodepng_zlib_compress(unsigned char**, unsigned int*, unsigned char const*, unsigned int, LodePNGCompressSettings const*) 0.00 9.85 0.00 1 0.00 0.00 lodepng_can_have_alpha(LodePNGColorMode const*) 0.00 9.85 0.00 1 0.00 0.00 lodepng_color_mode_copy(LodePNGColorMode*, LodePNGColorMode const*) 0.00 9.85 0.00 1 0.00 0.04 lodepng_deflatev(ucvector*, unsigned char const*, unsigned int, LodePNGCompressSettings const*) 0.00 9.85 0.00 1 0.00 0.01 preProcessScanlines(unsigned char**, unsigned int*, unsigned char const*, unsigned int, unsigned int, LodePNGInfo const*, LodePNGEncoderSettings const*) 0.00 9.85 0.00 1 0.00 0.00 Imager::ChessBoard::ChessBoard(double, double, double, double, Imager::Color const&, Imager::Color const&, Imager::Color const&) 0.00 9.85 0.00 1 0.00 0.00 Imager::ChessBoard::~ChessBoard() 0.00 9.85 0.00 1 0.00 0.00 Imager::SolidObject_Reorientable::RotateX(double) 0.00 9.85 0.00 1 0.00 0.00 Imager::SolidObject_Reorientable::RotateZ(double) 0.00 9.85 0.00 1 0.00 0.00 Imager::Scene::ClearSolidObjectList() 0.00 9.85 0.00 1 0.00 0.19 lodepng::encode(std::__cxx11::basic_string, std::allocator > const&, unsigned char const*, unsigned int, unsigned int, LodePNGColorType, unsigned int) 0.00 9.85 0.00 1 0.00 0.00 lodepng::encode(std::__cxx11::basic_string, std::allocator > const&, std::vector > const&, unsigned int, unsigned int, LodePNGColorType, unsigned int) 0.00 9.85 0.00 1 0.00 0.19 lodepng::encode(std::vector >&, unsigned char const*, unsigned int, unsigned int, LodePNGColorType, unsigned int) 0.00 9.85 0.00 1 0.00 0.00 lodepng::save_file(std::vector > const&, std::__cxx11::basic_string, std::allocator > const&) 0.00 9.85 0.00 1 0.00 0.00 std::__cxx11::basic_string, std::allocator >::basic_string(char const*, std::allocator const&)