performance of python code on the NanoNote

Alan Post alanpost at sunflowerriver.org
Tue Sep 14 13:23:54 EDT 2010


I forgot to attach the profile.

-Alan

On Tue, Sep 14, 2010 at 11:17:22AM -0600, Alan Post wrote:
> I've been testing the makfa package.  The code is running very
> slowly, taking many seconds to return a simple result.  It is
> too slow for me to use as is.
> 
> Since it is a python application, I am able to use the python
> profiler to immediately see what is going on:
> 
> python -m cProfile -s time /usr/bin/makfa console > makfa.profile
> <<EOF
> tricu
> makfa
> EOF
> 
> I've attached the profile, but I'll summarize it here:
> 
> * I read the entire database off disk, which takes 13 seconds.
> * Several other routines, all containing regular expressions,
>   take another 13 seconds to burn through the data after I've
>   read the database.
> 
> Both of these problems are something that I can correct.  I can
> convert the pickle file to a sql database, and I can reword or
> precompile the regular expressions.  I could remove some of the
> whole-table searching the application performs to reduce the number
> of calls to these routines.  None of these things have been done
> because the application runs fast enough on a desktop machine.
> 
> I'd like to ask a question to those of you with more experience
> developing on embedded systems with small memory and slow CPUs:
> 
> The fact that this application was written in Python means I got
> profiling information the moment I discovered there was a problem.
> I could look at the code right away and begin to see how I could
> fix it.  I'm really pleased at how quickly I was able to figure
> out what was going on.
> 
> I could fix all of this and still find that I'm not happy with the
> performance.  I've never tried optimizing python and I'm not sure
> it will run fast enough for me.
> 
> I'd love to know that I could use this kind of rapid prototype
> environment (python) and get acceptable performance.  Can I?
> Will you share your experiences working with interpreted languages
> in an embedded environment?
> 
> -Alan
> -- 
> .i ko djuno fi le do sevzi

-- 
.i ko djuno fi le do sevzi
-------------- next part --------------
?-                         bambu : experimental gismu
                              : x1 is a bamboo (Bambuseae) of genus/species x2.
                              : (x1) "bamboo"
                              : Cf. {spati}, {tricu}.

                      jglandi : fu'ivla
                              : x1 is a walnut of species x2.
                              : (x1) "walnut"
                              : see also {nargu}, {tricu}

               ze'erpezytricu : lujvo
                              : x1 is an evergreen tree of species/variety x2.
                              : (x1) "evergreen", "evergreen tree"
                              : see also {pezyfaltricu}, {ckunu}

                      ricyzda : lujvo
                              : z1 is a treehouse of/for z2 on tree t1 of
                                species t2.
                              : (x1) "treehouse"
                              : Cf. {tricu}, {zdani}.

                    ricygundi : lujvo
                              : g1 is a/the forest products industry/sector
                                producing forest products g2 from tree species
                                t2 by process g3
                              : (x1) "forest industry", "forestry sector"
                              : From {tricu}, {gundi}. Omit f1.

                 pezyfaltricu : lujvo
                              : t1 is a deciduous tree of species t2.
                              : (x1) "deciduous", "deciduous tree"
                              : Cf. {ze'erpezytricu}.

                     mudypu'o : lujvo
                              : p1=m1 is sawdust of wood type p2=m2.
                              : (x1) "sawdust"
                              : Cf. {cmamudyspi}, {tricu}.

                     dzitricu : lujvo
                              : t1=d1 is a shrub/bush of species t2.
                              : Cf. {demspa}, {cmatricu}.

                       demspa : lujvo
                              : d1=s1 is a bush of species/strain/cultivar s2.
                              : (x1) "bush", "shrub"
                              : Cf. {dzitricu}.

                     cmatricu : lujvo
                              : t1 is a brush/bushy vegetation of species/type
                                t2.
                              : Cf. {cicyspafoi}, {tricu}, {dzitricu},
                                {demspa}.

                   cmamudyspi : lujvo
                              : s1=m1=c1 is a woodchip/splinter of wood type
                                m2, small as compared with standard/norm c3.
                              : (x1) "splinter" in the sense of "wood",
                                "woodchip"
                              : Cf. {tricu}, {mudypu'o}.

                        spati : gismu -spa-
                              : x1 is a plant/herb/greenery of
                                species/strain/cultivar x2.
                              : (x1) "plant"
                              : Also (adjective:) x1 is
                                vegetable/vegetal/vegetative.  See also
                                {genja}, {grute}, {gurni}, {latna}, {rozgu},
                                {stagi}, {tricu}, {tsiju}, {tujli}, {xruba},
                                {xrula}, {pezli}, {srasu}.

                        pezli : gismu -pez-
                              : x1 is a leaf of plant x2; x1 is foliage of x2.
                              : (x1) "leaf"
                              : See also {tricu}, {papri}, {spati}.

                        mudri : gismu -mud-
                              : x1 is a quantity of/is made of/contains
                                wood/lumber from tree(s) of type/species x2.
                              : (x1) "wood" in the sense of "the material"
                              : See also {tricu}, {stani}.

                        korka : gismu -kok-
                              : x1 is a quantity of/contains/is made of
                                cork/bark from tree/species x2; [material].
                              : (x1) "cork"
                              : See also {tricu}, {calku}, {skapi}, {stagi}.

                        ckunu : gismu -ku'u-
                              : x1 is a conifer/pine/fir of species/strain x2
                                with cones x3.
                              : (x1) "conifer"
                              : See also {tricu}.

                        cindu : gismu
                              : x1 is an oak, a type of tree of species/strain
                                x2.
                              : (x1) "oak"
                              : See also {tricu}.

                        tricu : gismu -ric-
                              : x1 is a tree of species/cultivar x2.
                              : (x1) "tree" in the sense of "plant"
                              : See also {cindu}, {ckunu}, {pezli}, {mudri},
                                {spati}.
?-                terfarnilfrica : lujvo
                              : x1 is the difference between frame of reference
                                x2 and frame of reference x3.
                              : (x1) "variation" in the sense of "magnetic"
                              : magnetic variation is the difference between
                                the magnetic reference frame and the rotational
                                reference frame; see {makfartci}

                    menmuvgau : lujvo
                              : g1=me1 telekinetically / with its mind moves
                                mu1 to destination/receiver mu2 [away] from
                                origin mu3 over path/route mu4
                              : (x1) "telekinesis", "telekinetic" in the sense
                                of "person", "telekinetically"
                              : Made from {menli}+{muvgau}.  {menli}2 dropped
                                on account of irrelevancy.  See also {gasnu},
                                {klama}, {litru}, {makfa}, {menli}, {muvdu}.

                     malmakfa : lujvo
                              : mak1 is black magic to mak2, performed by
                                person/force/deity mak3.
                              : (x1) "black magic"
                              : (x3) "evil sorcerer"
                              : Cf. {mabla}, {makfa}, {lijda}, {palci}

                       mafcre : lujvo
                              : c1=m3 is a wizard/sorcerer of m1=c1, which is
                                magical to m2, with standard of sorcery c3.
                              : (x1) "wizard", "sorcerer"
                              : (x2) "sorcery"
                              : Cf. {makfa}, {certu}

                   cukyxratci : lujvo
                              : x1 is a compass for drawing circles x2.
                              : (x1) "compass" in the sense of "draw circles"
                              : Cf. {makfartci}, {caltaicmaci}.

                      cesri'a : lujvo
                              : r1 blesses/sanctifies c1 in the name of
                                person/people/culture/religion/cult/group c2
                                under conditions r3.
                              : (x1) "bless", "sanctify"
                              : Cf. {ruxyzau}, {dapma}, {lijda}, {cevni},
                                {makfa}, {xamgu}, {vrude}.

                        manci : gismu -mac-
                              : x1 feels wonder/awe/marvels about x2.
                              : (x1) "wonder" in the sense of "feeling awe"
                              : See also {cinmo}, {makfa}, {kucli}, {spaji},
                                {cinri}, {banli}, {sisku}.

                        krici : gismu -kri-
                              : x1 believes [regardless of evidence/proof]
                                belief/creed x2 (du'u) is true/assumed about
                                subject x3.
                              : (x1) "believer", "believe", "faith" in the
                                sense of "to have faith"
                              : "without evidence" refers to objective external
                                evidence; also gives credence, has conviction.
                                See also {censa}, {cevni}, {lijda}, {makfa},
                                {malsi}, {senpi}, {birti}.

                        makfa : gismu -maf-
                              : x1 is
                                magic/supernatural/sorcery/witchcraft/wizardry
                                to x2, performed by person/force/deity x3.
                              : (x1) "magic"
                              : See also {krici}, {manci}.
?- 
% halt
         464164 function calls (464110 primitive calls) in 58.813 CPU seconds

   Ordered by: internal time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1   12.881   12.881   12.881   12.881 {cPickle.load}
    11772    3.689    0.000   10.859    0.001 makfa:582(rafsi)
    11772    3.442    0.000   10.314    0.001 makfa:594(selmaho)
    23652    3.337    0.000    3.337    0.000 {built-in method split}
       26    3.309    0.127   43.534    1.674 makfa:550(f)
    23618    3.207    0.000    3.223    0.000 {method 'encode' of 'str' objects}
    23544    2.834    0.000    2.834    0.000 {built-in method search}
    23882    2.629    0.000    3.626    0.000 re.py:229(_compile)
    11772    2.465    0.000    4.845    0.000 makfa:568(gloss)
    51102    2.381    0.000    2.381    0.000 {isinstance}
    23544    2.154    0.000    8.818    0.000 re.py:164(split)
    59130    2.089    0.000    2.089    0.000 makfa:644(__getitem__)
    11826    1.549    0.000    3.532    0.000 makfa:632(notes)
    11799    1.441    0.000    3.512    0.000 makfa:626(definition)
    11772    1.352    0.000    6.228    0.001 makfa:578(notes)
    11772    1.310    0.000    6.286    0.001 makfa:564(definition)
    11826    1.126    0.000    1.554    0.000 makfa:638(selmaho)
    11799    1.069    0.000    1.497    0.000 makfa:635(rafsi)
    11853    1.004    0.000    1.404    0.000 makfa:629(glosses)
    11772    0.864    0.000    1.678    0.000 makfa:609(valsi)
    23582    0.796    0.000    0.796    0.000 {method 'replace' of 'str' objects}
    23953    0.793    0.000    0.793    0.000 {method 'get' of 'dict' objects}
    11772    0.344    0.000    0.344    0.000 {method 'values' of 'dict' objects}
    23544    0.336    0.000    0.336    0.000 {method 'upper' of 'str' objects}
        1    0.294    0.294   58.816   58.816 {execfile}
        1    0.157    0.157   57.719   57.719 makfa:655(main)
        1    0.155    0.155   44.611   44.611 makfa:400(parse)
13613/13601    0.154    0.000    0.154    0.000 {len}
      108    0.114    0.001    0.165    0.002 textwrap.py:235(_wrap_chunks)
        2    0.099    0.050    0.852    0.426 makfa:267(parse)
        1    0.088    0.088   58.522   58.522 makfa:3(<module>)
        1    0.066    0.066    0.222    0.222 subprocess.py:377(<module>)
        1    0.065    0.065    0.481    0.481 urllib.py:23(<module>)
    30/17    0.062    0.002    0.065    0.004 sre_parse.py:146(getwidth)
        3    0.055    0.018    0.055    0.018 {map}
      108    0.054    0.001    0.572    0.005 makfa:246(_wrap)
        2    0.046    0.023    0.061    0.031 collections.py:13(namedtuple)
      257    0.043    0.000    0.052    0.000 urlparse.py:274(<genexpr>)
      257    0.043    0.000    0.052    0.000 urllib.py:1166(<genexpr>)
      257    0.043    0.000    0.051    0.000 urlparse.py:275(<genexpr>)
        1    0.042    0.042    0.044    0.044 socket.py:174(_socketobject)
      257    0.042    0.000    0.051    0.000 urllib.py:1167(<genexpr>)
      108    0.039    0.000    0.171    0.002 textwrap.py:107(__init__)
        1    0.037    0.037    0.155    0.155 pickle.py:25(<module>)
     1024    0.036    0.000    0.036    0.000 {chr}
        6    0.030    0.005    0.037    0.006 makfa:175(ioctl_GWINSZ)
      108    0.028    0.000    0.512    0.005 textwrap.py:335(wrap)
        1    0.027    0.027    0.222    0.222 urlparse.py:5(<module>)
       27    0.027    0.001    0.706    0.026 makfa:380(output)
     1206    0.027    0.000    0.027    0.000 {method 'pop' of 'list' objects}
        1    0.026    0.026    0.077    0.077 socket.py:44(<module>)
     14/7    0.026    0.002    0.068    0.010 sre_parse.py:385(_parse)
      108    0.022    0.000    0.312    0.003 textwrap.py:308(wrap)
     1740    0.022    0.000    0.022    0.000 {method 'append' of 'list' objects}
      108    0.022    0.000    0.594    0.005 makfa:201(write)
        2    0.021    0.010    0.123    0.062 {method 'update' of 'dict' objects}
        1    0.018    0.018    0.019    0.019 collections.py:1(<module>)
      108    0.017    0.000    0.103    0.001 textwrap.py:155(_split)
     24/7    0.017    0.001    0.051    0.007 sre_compile.py:38(_compile)
      137    0.015    0.000    0.017    0.000 sre_parse.py:188(__next)
      108    0.015    0.000    0.022    0.000 textwrap.py:138(_munge_whitespace)
      233    0.014    0.000    0.018    0.000 {method 'join' of 'str' objects}
       27    0.014    0.001    0.024    0.001 makfa:212(glosses)
       14    0.012    0.001    0.020    0.001 sre_compile.py:213(_optimize_charset)
      118    0.012    0.000    0.012    0.000 {built-in method match}
      220    0.012    0.000    0.146    0.001 re.py:188(compile)
      118    0.011    0.000    0.115    0.001 re.py:134(match)
      148    0.010    0.000    0.010    0.000 {filter}
        2    0.008    0.004    0.008    0.004 makfa:535(__init__)
        4    0.007    0.002    0.007    0.002 {max}
       85    0.007    0.000    0.012    0.000 sre_parse.py:136(__getitem__)
        1    0.007    0.007    0.014    0.014 {__import__}
        1    0.007    0.007    0.007    0.007 utf_8.py:8(<module>)
       13    0.007    0.001    0.027    0.002 optparse.py:560(__init__)
       13    0.007    0.001    0.035    0.003 optparse.py:1007(add_option)
        6    0.007    0.001    0.007    0.001 {fcntl.ioctl}
       13    0.006    0.000    0.010    0.001 optparse.py:609(_set_attrs)
      103    0.006    0.000    0.018    0.000 sre_parse.py:207(get)
        1    0.006    0.006    0.006    0.006 {open}
        3    0.005    0.002    0.006    0.002 sre_compile.py:264(_mk_bitmap)
        2    0.005    0.003    0.005    0.003 makfa:540(inclusive)
       14    0.005    0.000    0.025    0.002 sre_compile.py:184(_compile_charset)
       27    0.004    0.000    0.016    0.001 makfa:220(rafsi)
       13    0.004    0.000    0.005    0.000 optparse.py:588(_set_opt_strings)
     12/7    0.004    0.000    0.070    0.010 sre_parse.py:307(_parse_sub)
       34    0.004    0.000    0.004    0.000 {method 'encode' of 'unicode' objects}
       99    0.004    0.000    0.004    0.000 collections.py:43(<genexpr>)
        7    0.004    0.001    0.071    0.010 sre_compile.py:367(_compile_info)
        5    0.004    0.001    0.008    0.002 optparse.py:1313(get_default_values)
      176    0.004    0.000    0.004    0.000 {setattr}
      108    0.004    0.000    0.004    0.000 {method 'expandtabs' of 'str' objects}
        1    0.004    0.004    0.006    0.006 os.py:35(_get_exports_list)
       83    0.003    0.000    0.007    0.000 sre_parse.py:201(match)
        2    0.003    0.002   43.557   21.779 makfa:338(results)
        7    0.003    0.000    0.204    0.029 sre_compile.py:501(compile)
        5    0.003    0.001    0.004    0.001 optparse.py:1414(_process_args)
        2    0.003    0.002    0.003    0.002 {dir}
        7    0.003    0.000    0.076    0.011 sre_parse.py:669(parse)
        1    0.003    0.003    0.003    0.003 ssl.py:56(<module>)
       42    0.003    0.000    0.004    0.000 makfa:647(__iter__)
       47    0.003    0.000    0.003    0.000 {min}
      294    0.003    0.000    0.003    0.000 {method 'strip' of 'str' objects}
       27    0.003    0.000    0.004    0.000 makfa:641(type)
      109    0.002    0.000    0.002    0.000 {method 'translate' of 'str' objects}
        3    0.002    0.001    0.004    0.001 gettext.py:130(_expand_lang)
        5    0.002    0.000    0.014    0.003 optparse.py:1362(parse_args)
       12    0.002    0.000    0.002    0.000 sre_parse.py:231(_class_escape)
        3    0.002    0.001    0.007    0.002 gettext.py:421(find)
        3    0.002    0.001    0.026    0.009 optparse.py:1185(__init__)
       13    0.002    0.000    0.002    0.000 collections.py:61(<genexpr>)
        9    0.002    0.000    0.004    0.000 sre_compile.py:360(_simple)
        3    0.002    0.001    0.003    0.001 optparse.py:200(__init__)
       44    0.002    0.000    0.002    0.000 sre_parse.py:132(__len__)
       27    0.002    0.000    0.006    0.000 makfa:223(refgrams)
       32    0.002    0.000    0.002    0.000 sre_parse.py:144(append)
        1    0.002    0.002    0.037    0.037 makfa:313(__init__)
       27    0.002    0.000    0.005    0.000 makfa:233(selmaho)
       18    0.001    0.000    0.001    0.000 {range}
       36    0.001    0.000    0.001    0.000 makfa:221(<genexpr>)
        7    0.001    0.000    0.124    0.018 sre_compile.py:486(_code)
       13    0.001    0.000    0.001    0.000 optparse.py:980(_check_conflict)
       24    0.001    0.000    0.001    0.000 sre_parse.py:96(__init__)
       13    0.001    0.000    0.006    0.000 {all}
        1    0.001    0.001    0.001    0.001 pickle.py:827(Unpickler)
        2    0.001    0.001    0.038    0.019 makfa:172(get_terminal_size)
        1    0.001    0.001   12.950   12.950 makfa:618(__init__)
        1    0.001    0.001    0.002    0.002 <string>:1(<module>)
       42    0.001    0.000    0.001    0.000 {iter}
       12    0.001    0.000    0.001    0.000 UserDict.py:57(get)
        3    0.001    0.000    0.009    0.003 gettext.py:527(dgettext)
        1    0.001    0.001    0.016    0.016 __init__.py:71(search_function)
       25    0.001    0.000    0.002    0.000 optparse.py:832(isbasestring)
       14    0.001    0.000    0.001    0.000 sre_compile.py:480(isstring)
        3    0.001    0.000    0.002    0.001 optparse.py:932(__init__)
        5    0.001    0.000    0.001    0.000 optparse.py:837(__init__)
        3    0.001    0.000    0.001    0.000 locale.py:316(normalize)
      113    0.001    0.000    0.001    0.000 {method 'reverse' of 'list' objects}
        3    0.001    0.000    0.004    0.001 optparse.py:365(__init__)
       13    0.001    0.000    0.001    0.000 optparse.py:678(_check_dest)
        1    0.001    0.001    0.001    0.001 makfa:533(Filter)
        1    0.001    0.001    0.001    0.001 <string>:1(ParseResult)
        3    0.001    0.000    0.001    0.000 {raw_input}
        3    0.001    0.000    0.008    0.003 gettext.py:461(translation)
       13    0.001    0.000    0.001    0.000 optparse.py:635(_check_type)
        1    0.001    0.001    0.001    0.001 pickle.py:171(Pickler)
       13    0.001    0.000    0.001    0.000 optparse.py:579(_check_opt_strings)
        6    0.001    0.000    0.001    0.000 {hasattr}
        7    0.001    0.000    0.002    0.000 sre_parse.py:184(__init__)
        1    0.001    0.001    0.001    0.001 traceback.py:1(<module>)
       13    0.001    0.000    0.001    0.000 optparse.py:699(_check_nargs)
        1    0.001    0.001    0.001    0.001 <string>:1(SplitResult)
        3    0.001    0.000    0.018    0.006 optparse.py:1242(_add_help_option)
        7    0.001    0.000    0.001    0.000 {_sre.compile}
       13    0.001    0.000    0.001    0.000 optparse.py:629(_check_action)
       13    0.001    0.000    0.001    0.000 optparse.py:693(_check_const)
       13    0.001    0.000    0.001    0.000 optparse.py:665(_check_choice)
       13    0.000    0.000    0.000    0.000 collections.py:60(<genexpr>)
       13    0.000    0.000    0.000    0.000 optparse.py:708(_check_callback)
       86    0.000    0.000    0.000    0.000 {method 'isalnum' of 'str' objects}
        3    0.000    0.000    0.001    0.000 UserDict.py:17(__getitem__)
       41    0.000    0.000    0.000    0.000 sre_compile.py:24(_identityfunction)
       15    0.000    0.000    0.000    0.000 {method 'startswith' of 'str' objects}
        5    0.000    0.000    0.000    0.000 optparse.py:1307(_get_all_options)
        3    0.000    0.000    0.001    0.000 optparse.py:1271(set_usage)
        7    0.000    0.000    0.000    0.000 sre_parse.py:73(__init__)
        3    0.000    0.000    0.009    0.003 gettext.py:565(gettext)
        1    0.000    0.000    0.000    0.000 urlparse.py:43(ResultMixin)
        1    0.000    0.000    0.000    0.000 codecs.py:77(__new__)
        5    0.000    0.000    0.000    0.000 sre_parse.py:263(_escape)
       14    0.000    0.000    0.000    0.000 UserDict.py:69(__contains__)
        2    0.000    0.000    0.000    0.000 {repr}
        2    0.000    0.000    0.038    0.019 makfa:195(__init__)
        1    0.000    0.000    0.000    0.000 socket.py:224(_fileobject)
       43    0.000    0.000    0.000    0.000 {ord}
       10    0.000    0.000    0.000    0.000 {_sre.getlower}
        9    0.000    0.000    0.000    0.000 sre_parse.py:140(__setitem__)
        1    0.000    0.000    0.000    0.000 keyword.py:11(<module>)
        1    0.000    0.000    0.000    0.000 urllib.py:114(URLopener)
        1    0.000    0.000    0.008    0.008 makfa:376(__init__)
        1    0.000    0.000    0.010    0.010 makfa:396(__init__)
        3    0.000    0.000    0.000    0.000 optparse.py:1237(_create_option_list)
        1    0.000    0.000    0.001    0.001 utf_8.py:33(getregentry)
        1    0.000    0.000    0.000    0.000 __init__.py:49(normalize_encoding)
        5    0.000    0.000    0.000    0.000 optparse.py:1356(_get_args)
        7    0.000    0.000    0.000    0.000 makfa:549(pattern)
        5    0.000    0.000    0.000    0.000 {method 'split' of 'str' objects}
        5    0.000    0.000    0.000    0.000 {method 'extend' of 'list' objects}
        1    0.000    0.000    0.000    0.000 urllib.py:614(FancyURLopener)
        2    0.000    0.000    0.000    0.000 {_struct.unpack}
        1    0.000    0.000    0.000    0.000 subprocess.py:560(Popen)
        2    0.000    0.000    0.000    0.000 {locals}
        3    0.000    0.000    0.018    0.006 optparse.py:1252(_populate_option_list)
        2    0.000    0.000    0.000    0.000 sre_parse.py:89(closegroup)
        9    0.000    0.000    0.000    0.000 {method 'find' of 'str' objects}
        5    0.000    0.000    0.000    0.000 {method 'copy' of 'dict' objects}
        9    0.000    0.000    0.000    0.000 {method 'items' of 'dict' objects}
        2    0.000    0.000    0.000    0.000 sre_parse.py:78(opengroup)
       13    0.000    0.000    0.000    0.000 {method '__contains__' of 'frozenset' objects}
        3    0.000    0.000    0.000    0.000 optparse.py:959(set_conflict_handler)
        1    0.000    0.000    0.000    0.000 makfa:193(Formatter)
       11    0.000    0.000    0.000    0.000 {method 'add' of 'set' objects}
        1    0.000    0.000    0.000    0.000 urllib.py:844(ftpwrapper)
        3    0.000    0.000    0.000    0.000 optparse.py:943(_create_option_mappings)
        7    0.000    0.000    0.000    0.000 {method 'lower' of 'str' objects}
        1    0.000    0.000    0.000    0.000 makfa:616(Dictionary)
        1    0.000    0.000    0.000    0.000 urllib.py:976(addinfourl)
        3    0.000    0.000    0.000    0.000 optparse.py:1262(_init_parsing_state)
        5    0.000    0.000    0.000    0.000 optparse.py:1401(check_values)
        1    0.000    0.000    0.000    0.000 socket.py:162(_closedsocket)
        2    0.000    0.000    0.000    0.000 makfa:545(exclusive)
       13    0.000    0.000    0.000    0.000 {method 'isdigit' of 'str' objects}
        3    0.000    0.000    0.000    0.000 optparse.py:964(set_description)
        3    0.000    0.000    0.000    0.000 optparse.py:224(set_parser)
        1    0.000    0.000    0.000    0.000 utf_8.py:18(IncrementalEncoder)
        1    0.000    0.000    0.000    0.000 {built-in method __new__ of type object at 0x53b3c0}
        2    0.000    0.000    0.000    0.000 {sys._getframe}
        1    0.000    0.000    0.000    0.000 makfa:485(Updater)
        1    0.000    0.000    0.000    0.000 makfa:258(Command)
        1    0.000    0.000    0.000    0.000 makfa:466(Selmaho)
        1    0.000    0.000    0.000    0.000 urllib.py:922(addbase)
        1    0.000    0.000    0.000    0.000 makfa:310(Find)
        1    0.000    0.000    0.000    0.000 makfa:373(Show)
        1    0.000    0.000    0.000    0.000 subprocess.py:389(CalledProcessError)
        1    0.000    0.000    0.000    0.000 makfa:421(Gloss)
        1    0.000    0.000    0.000    0.000 makfa:393(Console)
        1    0.000    0.000    0.000    0.000 makfa:294(Update)
        1    0.000    0.000    0.000    0.000 utf_8.py:22(IncrementalDecoder)
        1    0.000    0.000    0.000    0.000 {posix.sysconf}
        1    0.000    0.000    0.000    0.000 urllib.py:951(addclosehook)
        2    0.000    0.000    0.000    0.000 {method 'remove' of 'list' objects}
        1    0.000    0.000    0.000    0.000 urllib.py:966(addinfo)
        1    0.000    0.000    0.000    0.000 makfa:444(Rafsi)
        1    0.000    0.000    0.000    0.000 utf_8.py:25(StreamWriter)
        1    0.000    0.000    0.000    0.000 makfa:454(References)
        1    0.000    0.000    0.000    0.000 urllib.py:108(ContentTooShortError)
        1    0.000    0.000    0.000    0.000 pickle.py:82(_Stop)
        1    0.000    0.000    0.000    0.000 utf_8.py:28(StreamReader)
        1    0.000    0.000    0.000    0.000 urlparse.py:94(ParseResult)
        1    0.000    0.000    0.000    0.000 urlparse.py:86(SplitResult)
        1    0.000    0.000    0.000    0.000 makfa:440(Notes)
        1    0.000    0.000    0.000    0.000 makfa:417(Definition)
        1    0.000    0.000    0.000    0.000 pickle.py:58(PickleError)
        1    0.000    0.000    0.000    0.000 pickle.py:1253(_EmptyClass)
        1    0.000    0.000    0.000    0.000 makfa:477(Type)
        1    0.000    0.000    0.000    0.000 pickle.py:69(UnpicklingError)
        1    0.000    0.000    0.000    0.000 sre_parse.py:211(tell)
        1    0.000    0.000    0.000    0.000 pickle.py:62(PicklingError)
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}




More information about the discussion mailing list


interactive