[Bug tree-optimization/24123] [4.1 Regression] Massive performance regression for -ffast-math due to the recip tree pass

bonzini at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Fri Sep 30 12:28:00 GMT 2005


------- Additional Comments From bonzini at gcc dot gnu dot org  2005-09-30 12:28 -------
Here is a list of all the differences between the two profiles.  r is the time
with recip, nr is without, nr-r is the difference.

r       nr      nr-r    func
1.28    1.50    0.22    pov::sbisect(int,
0.84    0.90    0.06    pov::All_Blob_Intersections(pov::Object_Struct*,
0.40    0.46    0.06    pov::sample_media(pov::Light_List_Struct*,
1.41    1.46    0.05    pov::Intersect_Light_Tree(pov::Ray_Struct*,
0.20    0.25    0.05    pov::do_light(pov::Light_Source_Struct*,
0.46    0.50    0.04    pov::Check_And_Enqueue(pov::Priority_Queue_Struct*,
0.36    0.40    0.04    pov::Intersection(pov::istk_entry*,
0.07    0.10    0.03    pov::Reinitialize_VLBuffer_Code()
0.70    0.72    0.02    pov::Simulate_Media(pov::Media_Struct**,
0.10    0.12    0.02    pov::Test_Shadow(pov::Light_Source_Struct*,
0.10    0.12    0.02    pov::All_IsoSurface_Intersections(pov::Object_Struct*,
0.05    0.07    0.02    pov::Intersect_Box(pov::Ray_Struct*,
3.28    3.29    0.01    pov::POVFPU_RunDefault(unsigned)
0.87    0.88    0.01    pov::block_light_source(pov::Light_Source_Struct*,
0.22    0.23    0.01    pov::Intersect_Sphere(pov::Ray_Struct*,
0.15    0.16    0.01    pov::All_Sphere_Intersections(pov::Object_Struct*,
0.06    0.07    0.01    pov::compute_lighted_texture(float*,
0.03    0.04    0.01    pov::open_istack()
0.02    0.03    0.01    pov::project_object(pov::Project_Struct*,
0.02    0.03    0.01    pov::MTransPoint(double*,
0.46    0.45    -0.01   pov::intersect_element(double*,
0.28    0.27    -0.01   pov::MInvTransPoint(double*,
0.26    0.25    -0.01   pov::f_helix1(double*,
0.10    0.09    -0.01   pov::All_Cone_Intersections(pov::Object_Struct*,
0.06    0.05    -0.01   pov::Recompute_BBox(pov::Bounding_Box_Struct*,
0.04    0.03    -0.01   pov::solve_cubic(double*,
0.03    0.02    -0.01   pov::insert_hit(pov::Blob_Element_Struct*,
0.02    0.01    -0.01   pov::project_bounding_slab(int,
0.02    0.01    -0.01   pov::project_bbox(pov::Project_Struct*,
0.02    0.01    -0.01   pov::pov_free(void*,
0.02    0.01    -0.01   pov::close_istack(pov::istack_struct*)
0.02    0.01    -0.01   pov::IsoSurface_Function_Find_Root(pov::IsoSurface_Struct*,
0.02    0.01    -0.01   pov::Initialize_Ray_Containers(pov::Ray_Struct*,
0.02    0.01    -0.01   pov::DNoise(double*,
0.02    0.01    -0.01   pov::Compute_Pigment(float*,
0.41    0.39    -0.02   pov::All_Plane_Intersections(pov::Object_Struct*,
0.35    0.33    -0.02   pov::Inside_Blob(double*,
0.13    0.11    -0.02   pov::Priority_Queue_Delete(pov::Priority_Queue_Struct*,
0.07    0.05    -0.02   pov::Point_In_Clip(double*,
0.07    0.05    -0.02   pov::MTimesB(double
0.06    0.04    -0.02   pov::POVFPU_SetLocal(unsigned,
0.03    0.01    -0.02   pov::pov_memmove(void*,
0.03    0.01    -0.02   pov::incstack(pov::istack_struct*)
0.22    0.19    -0.03   pov::Inside_Plane(double*,
0.17    0.14    -0.03   pov::Create_Rayinfo(pov::Ray_Struct*,
0.16    0.13    -0.03   pov::polysolve(int,
0.13    0.10    -0.03   pov::sort_and_split(pov::BBox_Tree_Struct**,
0.12    0.09    -0.03   pov::Inside_Object(double*,
0.11    0.08    -0.03   pov::MInvTransDirection(double*,
0.44    0.40    -0.04   pov::All_CSG_Intersect_Intersections(pov::Object_Struct*,
0.29    0.25    -0.04   pov::scattering_attenuation(pov::Media_Struct**,
0.20    0.16    -0.04   pov::sample_media_rec(pov::Light_List_Struct*,
0.09    0.05    -0.04   pov::Solve_Polynomial(int,


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24123



More information about the Gcc-bugs mailing list