[pygccxml-development] Performance problems and fixes
Brought to you by:
mbaas,
roman_yakovenko
|
From: Allen B. <al...@vr...> - 2006-08-25 03:14:05
|
Today I ran my generation script through the python hotspot profiler and found some interesting results. The majority of the time was being spent in algorithm.declaration_path. I fixed this up and double the speed of my script. :) After that I decided it may be worth investigating some other spots. What I have found is that the following areas are consuming a lot of time. (not sure if it can be fixed or not, but this is where the time is spent) (all of these are in pygccxml) - Getting names from declarations - Testing declarations and calldefs for equality - Getting the decl_string (and creating it) for cpptypes. declarations.py _get_name line 151 class_declarations.py _get_name_impl line 105 declaration.py _eq_ line 119 calldef.py _eq_ line 121 and 53 cpptypes.py _get_decl_string line 37 algorithm.py full_name line 30 Once I get into the office tomorrow I will upload my hotspot trace so other people can see what I ran into and hopefully find some other places to improve the performance of py++. :) -Allen |