Jim,

This is absolutely awesome.  Yes, static analysis is just fine for
what I'm trying to answer, and I'm thinking perhaps having some
profiling in nsd (which can be turned on and off) could be really
useful for the dynamic analysis.

I'm presuming you didn't count these all by hand, that you did
it via some script.  Would you mind sharing that with the list so
others can report the same information?

Otherwise, I guess I could write one, but I'd prefer to avoid
re-inventing the wheel if I know it exists.  ;-)

Interestingly, these are your top 10:

    ns_set  3550
    ns_share        843
    ns_log  542
    ns_time 519
    ns_dbquotevalue 513
    ns_info 504
    ns_return       450
    ns_urlencode    444
    ns_conn 353
    ns_fmttime      219
    ns_striphtml    115

I'm not surprised to see ns_set be on top, and since you didn't
include any nsv_* counts, I don't know if ns_share really should
be #2 or would nsv_set and nsv_get be up there ... I didn't
expect to see ns_log but now that I do, it makes perfect sense.

I'm really surprised to see ns_info up there, though.  What
are you using it for, if I might ask?


- Dossy


On 2001.04.28, Jim Wilcoxson <[EMAIL PROTECTED]> wrote:
> Here's a complete list of the ones we use.  I should mention that we usually
> use ns_db via a wrapper; it's easily in the top 10.
>
> Not sure how useful this is, since it is a static analysis of source rather
> than a dynamic analysis of which routines are actually used the most.  Is
> there a way to get a dynamic analysis?  Guess we could redefine everything
> with a wrapper and count calls & execution time.  Yuk.
>
> This is from 584 .tcl files, 95,000 lines of TCL.   -Jim
>
> Alphabetical:
>
> ns_chmod        2
> ns_config       20
> ns_conn 353
> ns_cp   5
> ns_cpfp 11
> ns_crypt        7
> ns_db   79
> ns_dberrorcode  2
> ns_dberrormsg   2
> ns_dbquotevalue 513
> ns_fmttime      219
> ns_ftruncate    7
> ns_getcsv       9
> ns_getform      107
> ns_geturl       7
> ns_guesstype    3
> ns_hostbyaddr   1
> ns_http_gets    1
> ns_http_puts    1
> ns_httpget      25
> ns_httptime     15
> ns_info 504
> ns_link 6
> ns_localsqltimestamp    11
> ns_localtime    35
> ns_log  542
> ns_mkdir        10
> ns_mktemp       7
> ns_mutex        103
> ns_ns_http_readable     1
> ns_openexcl     2
> ns_paircmp      8
> ns_parseheader  2
> ns_parsehttptime        11
> ns_putscript    2
> ns_queryget     8
> ns_quotehtml    45
> ns_register_filter      16
> ns_register_proc        41
> ns_respond      2
> ns_responds     1
> ns_return       450
> ns_returnbadrequest     1
> ns_returnfile   17
> ns_returnmoved  1
> ns_returnnotfound       6
> ns_returnredirect       80
> ns_rwlock       8
> ns_schedule_daily       8
> ns_schedule_proc        12
> ns_sendmail     82
> ns_sendmail_inject      2
> ns_sendmail_smtpdown    4
> ns_server       5
> ns_set  3550
> ns_share        843
> ns_shutdown     2
> ns_sleep        47
> ns_smtp_recv    14
> ns_smtp_send    14
> ns_sockcheck    1
> ns_socknread    6
> ns_sockopen     7
> ns_sockreadwait 1
> ns_sockselect   5
> ns_sourceproc   6
> ns_state        38
> ns_state_delete 4
> ns_state_purge  3
> ns_state_restore        1
> ns_state_save   4
> ns_state_view   1
> ns_striphtml    115
> ns_stripthtml   1
> ns_symlink      5
> ns_thread       46
> ns_time 519
> ns_tmpnam       3
> ns_truncate     3
> ns_unlink       65
> ns_url2file     1
> ns_urldecode    15
> ns_urlencode    444
> ns_user 4
> ns_write        6
> ns_writefp      3
>
> By frequency of source references:
>
> ns_hostbyaddr   1
> ns_http_gets    1
> ns_http_puts    1
> ns_ns_http_readable     1
> ns_responds     1
> ns_returnbadrequest     1
> ns_returnmoved  1
> ns_sockcheck    1
> ns_sockreadwait 1
> ns_state_restore        1
> ns_state_view   1
> ns_stripthtml   1
> ns_url2file     1
> ns_chmod        2
> ns_dberrorcode  2
> ns_dberrormsg   2
> ns_openexcl     2
> ns_parseheader  2
> ns_putscript    2
> ns_respond      2
> ns_sendmail_inject      2
> ns_shutdown     2
> ns_guesstype    3
> ns_state_purge  3
> ns_tmpnam       3
> ns_truncate     3
> ns_writefp      3
> ns_sendmail_smtpdown    4
> ns_state_delete 4
> ns_state_save   4
> ns_user 4
> ns_cp   5
> ns_server       5
> ns_sockselect   5
> ns_symlink      5
> ns_link 6
> ns_returnnotfound       6
> ns_socknread    6
> ns_sourceproc   6
> ns_write        6
> ns_crypt        7
> ns_ftruncate    7
> ns_geturl       7
> ns_mktemp       7
> ns_sockopen     7
> ns_paircmp      8
> ns_queryget     8
> ns_rwlock       8
> ns_schedule_daily       8
> ns_getcsv       9
> ns_mkdir        10
> ns_cpfp 11
> ns_localsqltimestamp    11
> ns_parsehttptime        11
> ns_schedule_proc        12
> ns_smtp_recv    14
> ns_smtp_send    14
> ns_httptime     15
> ns_urldecode    15
> ns_register_filter      16
> ns_returnfile   17
> ns_config       20
> ns_httpget      25
> ns_localtime    35
> ns_state        38
> ns_register_proc        41
> ns_quotehtml    45
> ns_thread       46
> ns_sleep        47
> ns_unlink       65
> ns_db   79
> ns_returnredirect       80
> ns_sendmail     82
> ns_mutex        103
> ns_getform      107
> ns_striphtml    115
> ns_fmttime      219
> ns_conn 353
> ns_urlencode    444
> ns_return       450
> ns_info 504
> ns_dbquotevalue 513
> ns_time 519
> ns_log  542
> ns_share        843
> ns_set  3550
>
> >
> > I'd like to conduct a quick informal poll.  What are the
> > top 10 most commonly used ns_* API calls that you use?
> >
> > Responses to the list, or directly to me, are fine.
> >
> > - Dossy
> >
> > --
> > Dossy Shiobara                       mail: [EMAIL PROTECTED]
> > Panoptic Computer Network             web: http://www.panoptic.com/
> >

--
Dossy Shiobara                       mail: [EMAIL PROTECTED]
Panoptic Computer Network             web: http://www.panoptic.com/

Reply via email to