dmitigr/pgfe

Has performance been evaluated?

Opened this issue · 2 comments

Have you compared with other c++ libraries for postgresql?
Such as,libpqxx (it has not connection pool)

Hey! I've compared with native libpq. The difference is around 11%.
Please note, there are also another useful features like named parameters in prepared statements and convenient database function invoking which may lacks in other client libraries.

Just curious, have you some kind of standard set of benchmarks for PostgreSQL clients?
I have my own home grown libpq wrapper as well, proprietary though, and would like to compare against yours and others.
Also, there are many areas in libpq:

  • text vs binary mode.
  • unprepared vs prepared statements, with binds
  • statements vs cursors vs copy
  • small columns vs toast vs lo
  • regular vs pipeline mode (new in libpq v14)
  • lots of small queries / transactions, vs big multi-MB/GB transactions (my use-cases does both)
  • windows (msvc) vs linux (gcc or clang)
  • etc...

Just saying 11% overhead is not saying much :)