Updated marshalling performance results

Discussion in 'C++' started by coal@mailvault.com, Jan 16, 2009.

  1. Guest

    Shalom

    Recently I updated the Windows portion of a page that compares
    results from the Boost Serialization library and the C++ Middleware
    Writer -- www.webEbenezer.net/comparison.html.

    The updated tests use MSVC 9.0, Windows XP and Boost 1.37. The
    new results are somewhat more in favor of our approach than
    results using MSVC 8.0, Windows XP and Boost 1.34 --
    www.webEbenezer.net/prevcomp.html. I hope to further update
    and add to the results in the future.


    Brian Wood
    Ebenezer Enterprises
    www.webEbenezer.net

    If you haven't read anything by Jonathan Katz,
    http://wuphys.wustl.edu/~katz, I recommend it.
     
    , Jan 16, 2009
    #1
    1. Advertising

  2. zr Guest

    On Jan 17, 12:39 am, wrote:
    > Shalom
    >
    > Recently I updated the Windows portion of a page that compares
    > results from the Boost Serialization library and the C++ Middleware
    > Writer --www.webEbenezer.net/comparison.html.
    >
    > The updated tests use MSVC 9.0, Windows XP and Boost 1.37.  The
    > new results are somewhat more in favor of our approach than
    > results using MSVC 8.0, Windows XP and Boost 1.34 --www.webEbenezer.net/prevcomp.html.  I hope to further update
    > and add to the results in the future.
    >
    > Brian Wood
    > Ebenezer Enterpriseswww.webEbenezer.net
    >
    > If you haven't read anything by Jonathan Katz,http://wuphys.wustl.edu/~katz, I recommend it.


    Do you have any examples of real-world applications that show that
    serialization has a significant impact on overall performance?
     
    zr, Jan 17, 2009
    #2
    1. Advertising

  3. Guest

    On Jan 16, 7:17 pm, zr <> wrote:
    > Do you have any examples of real-world applications that show that
    > serialization has a significant impact on overall performance?


    No. I know though that IT budgets are tight and programmers are
    expected to do more with less.


    Brian Wood
    Ebenezer Enterprises
    www.webEbenezer.net
     
    , Jan 18, 2009
    #3
  4. peter koch Guest

    On 18 Jan., 03:49, wrote:
    > On Jan 16, 7:17 pm, zr <> wrote:
    >
    > > Do you have any examples of real-world applications that show that
    > > serialization has a significant impact on overall performance?

    >
    > No.  I know though that IT budgets are tight and programmers are
    > expected to do more with less.


    That last sentence made me curious, so I just had a glimpse of the
    sourcecode. Correct me if I'm wrong but it looks as if the code
    required to serialise something gets much longer if you use the
    Ebenezer version. Also, there are differences as to how stuff is
    archived: it seems that boost uses standard ofstreams whereas you use
    C-type output (causing your program to not be exception safe).
    If I am correct, I fail to see the rationale behind your claim that
    ebenezer-serialisation is so much more efficient programmerwise (as
    you must write more code), and I also am sceptical wrt your claim that
    ebenezer-serialisation is so much more efficient performancewise (as
    we all know that C++ iostream I/O is notoriously slower that C IO).

    /Peter
     
    peter koch, Jan 18, 2009
    #4
  5. Guest

    On Jan 18, 4:59 am, peter koch <> wrote:
    > On 18 Jan., 03:49, wrote:
    >
    > > On Jan 16, 7:17 pm, zr <> wrote:

    >
    > > > Do you have any examples of real-world applications that show that
    > > > serialization has a significant impact on overall performance?

    >
    > > No.  I know though that IT budgets are tight and programmers are
    > > expected to do more with less.

    >
    > That last sentence made me curious, so I just had a glimpse of the
    > sourcecode. Correct me if I'm wrong but it looks as if the code
    > required to serialise something gets much longer if you use the
    > Ebenezer version. Also, there are differences as to how stuff is
    > archived: it seems that boost uses standard ofstreams whereas you use
    > C-type output (causing your program to not be exception safe).
    > If I am correct, I fail to see the rationale behind your claim that
    > ebenezer-serialisation is so much more efficient programmerwise (as
    > you must write more code),


    It seems like you may have missed that the file Msgs.hh was generated
    by the website. I think the two approaches are very close, in these
    tests at least, in terms of how much code is hand written.

    > and I also am sceptical wrt your claim that
    > ebenezer-serialisation is so much more efficient performancewise (as
    > we all know that C++ iostream I/O is notoriously slower that C IO).
    >


    That may be a/the cause of the difference. I've read claims
    that C++ iostream implementations are no longer slower than C IO.
    Anyway, assuming that you're right about that, since the Boost
    Serialization library uses the iostream library it seems to be
    inefficient, on the most popular platforms, as a result.

    A few other notes related to efficiency... The Boost
    Serialization library doesn't have an option to use
    hinted insert on the standard containers -- set, multiset, map,
    multimap. I believe the Boost MultiIndex library defaults
    to hinted inserts in it's internal serialization code when there's
    a relevant index. That is probably the correct default, but in
    my opinion it should be possible to either enable or disable that
    functionality. Also the Boost Serialization library doesn't
    support the Boost Range library. We do. (Well, we do more so
    than the Boost Serialization library, but not completely.)
    This affects efficiency, since with the Boost Serialization library
    you would have to populate a container based on a range before
    marshalling data.


    Brian Wood
    Ebenezer Enterprises
    www.webEbenezer.net
     
    , Jan 18, 2009
    #5
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    0
    Views:
    589
  2. Brian
    Replies:
    3
    Views:
    1,255
  3. Brian Wood
    Replies:
    0
    Views:
    291
    Brian Wood
    Aug 24, 2010
  4. Dmitry Korolyov

    Datagrid not updated during delete, but updated during insert and update

    Dmitry Korolyov, Sep 22, 2003, in forum: ASP .Net Datagrid Control
    Replies:
    0
    Views:
    420
    Dmitry Korolyov
    Sep 22, 2003
  5. Sylvain Joyeux

    Benchmark of marshalling performance

    Sylvain Joyeux, May 5, 2007, in forum: Ruby
    Replies:
    2
    Views:
    121
    Sylvain Joyeux
    May 5, 2007
Loading...

Share This Page