[antlr-interest] Profiler of ANTLR usage

Ruslan Zasukhin sunshine at public.kherson.ua
Thu Dec 1 14:20:47 PST 2005


Hi ANTLR list,

I have get some profiling.

Simple test. We add 100,000 record using SQL INSERT into Valentina database.

As you can see 

        ANTLR  take     74.6% of time. This is only parsing and tree parsing
:-((

        Valentina do rest work to put million records in 13.6% + 4.6% =
18.2%

As I have always told, on top of problem are
    std::strings, which do a lots of  new/delete...


----------------------------------------------------------------------------
---
    0.0%    99.9%    Common_SetExtesions    main
    0.0%    99.9%    Common_SetExtesions    Example()
    0.1%    99.2%    Common_SetExtesions
AddRecords(fbl::smart_ptr<fbl::vsql::I_Database>)
    0.1%    96.7%    libvkernel_ppc_debug.dylib
fbl::vsql::Database::SqlExecute(fbl::String const&,
fbl::smart_ptr<fbl::ArrayOfSmartPtrs<fbl::smart_ptr<fbl::I_Value> > >)
    0.1%    96.4%    libvkernel_ppc_debug.dylib
fbl::vsql::SqlParser::SqlExecute(fbl::vsql::I_Database*, fbl::String const&,
fbl::smart_ptr<fbl::ArrayOfSmartPtrs<fbl::smart_ptr<fbl::I_Value> > >)
 
    0.1%    74.6%  libvkernel_ppc_debug.dylib
fbl::vsql::SqlParser::ParseCommand(fbl::String const&,
fbl::vsql::Environment&)
    0.0%    13.6%  libvkernel_ppc_debug.dylib
fbl::vsql::SqlParser::PreprocessCommand(fbl::vsql::Environment&)
    0.0%    4.6%    libvkernel_ppc_debug.dylib
fbl::vsql::SqlParser::ProceedCommand(fbl::vsql::Environment&)

    0.0%    2.3%    libvkernel_ppc_debug.dylib
fbl::vsql::Environment::~Environment [in-charge]()
    0.0%    0.6%    libvkernel_ppc_debug.dylib
fbl::vsql::Environment::Environment[in-charge](fbl::smart_ptr<fbl::vsql::I_D
atabase>, fbl::String const&,
fbl::smart_ptr<fbl::ArrayOfSmartPtrs<fbl::smart_ptr<fbl::I_Value> > >)
    0.1%    0.1%    libstdc++.6.dylib    std::basic_istringstream<char,
std::char_traits<char>, std::allocator<char> >::str(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)
    0.1%    0.1%    libstdc++.6.dylib    std::basic_ios<char,
std::char_traits<char> >::clear(std::_Ios_Iostate)
    0.0%    0.1%    libvkernel_ppc_debug.dylib
fbl::Environment::~Environment [not-in-charge]()
    0.1%    0.1%    libvkernel_ppc_debug.dylib
fbl::smart_ptr<fbl::vsql::I_Database>::smart_ptr[in-charge](fbl::vsql::I_Dat
abase*, bool)    
    0.0%    0.1%    libvkernel_ppc_debug.dylib
fbl::smart_ptr<fbl::vsql::I_Cursor>::operator=(fbl::vsql::I_Cursor*)

-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.antlr.org/pipermail/antlr-interest/attachments/20051202/fc11eeea/attachment.html


More information about the antlr-interest mailing list