NpgSQL 2.0.8 v.s. dotConnect for Postgres 4.90 Performance
NpgSQL 2.0.8 v.s. dotConnect for Postgres 4.90 Performance
Devart advertise that it perform better than Npgsql. I did a Proof of Concept to measure the performance. Npgsql peformance 4x faster compared to dotConnect 4.90 performance for Entity Framework support. I created an inventory application that query an external MS Access Database and import it into Postgres. Nqgsql complete the it in 17 seconds, while dotConnect for Postgres completes the same code in 1 minute and 7 seconds. I used the Entity Framework Profiler to for the performance test. The Profiler reported many query plan alerts where the Npgsql did not have any query plan alerts. Attached are the profiler files for each run.
Thanks,
Charlie J.
Thanks,
Charlie J.
Could you please send us your test project via our contact form with the "PostgreSQL EF performance" subject? We will investigate it and notify you about the results.
Sorry. I cannot send you the test project because it is an internal proof of concept. But I can send you the Entity Framework Profiler log. You can get the program to open the log from http://efprof.com/
I already did a couple of days ago. Based on the instruction from the previous post instructions.
Joined: 14 Aug 2008
Posts: 1636
Posted: Tue 06 Apr 2010 13:46 Post subject:
--------------------------------------------------------------------------------
Could you please send us your test project via our contact form with the "PostgreSQL EF performance" subject? We will investigate it and notify you about the results.
Joined: 14 Aug 2008
Posts: 1636
Posted: Tue 06 Apr 2010 13:46 Post subject:
--------------------------------------------------------------------------------
Could you please send us your test project via our contact form with the "PostgreSQL EF performance" subject? We will investigate it and notify you about the results.
Changing the Protocol parameter in the ConnectionString from 3 to 2 improved the performance. From this forum post I though Devart had fixed the issues with Protocol=3
http://www.devart.com/forums/viewtopic. ... e21c1456a8
It talks about using an UnpreparedExecute parameter in the ConnectionString. I am using Postgres 8.4.x and would like to continue to use Protocol 3 with Devart.
So Npgsql using Protocol=3 does my import in 19 secs (17 secs using Protocol=2) and Devart using Protocol=3 does it in 75 secs and Devart using Protocol=2 does it in 19 secs.
Can I get good performance using Protocol=3 with dotConnect for Postgres without switching to Protocol=2? I just want it to be the same as what I am getting using Npgsql. I am trying to switch my applications from using Npgsql to using devart for dotConnect since EF 4 features are not implemented in the current Npgsql 2.0.9.
http://www.devart.com/forums/viewtopic. ... e21c1456a8
It talks about using an UnpreparedExecute parameter in the ConnectionString. I am using Postgres 8.4.x and would like to continue to use Protocol 3 with Devart.
So Npgsql using Protocol=3 does my import in 19 secs (17 secs using Protocol=2) and Devart using Protocol=3 does it in 75 secs and Devart using Protocol=2 does it in 19 secs.
Can I get good performance using Protocol=3 with dotConnect for Postgres without switching to Protocol=2? I just want it to be the same as what I am getting using Npgsql. I am trying to switch my applications from using Npgsql to using devart for dotConnect since EF 4 features are not implemented in the current Npgsql 2.0.9.
I also found this article as well on the forum
http://www.devart.com/forums/viewtopic. ... redexecute
http://www.devart.com/forums/viewtopic. ... redexecute