ORMBattle.NETThe ORM tool shootout

  • Increase font size
  • Default font size
  • Decrease font size
Home FAQs Is it easy to tune up an ORM tool to be #1 at ORMBattle.NET?

Is it easy to tune up an ORM tool to be #1 at ORMBattle.NET?

E-mail Print PDF

We think no, no and no.

Getting some scores in LINQ tests means you must be an expert in .NET, databases and even compilers.It is simply can't be achieved right on the first attempt. Man-year(s) must pass till you get LINQ passing most of these tests.

To get high score on CUD tests, you must solve tons of problems. I can enumerate just some of them: full query parameterization, producton of queries with cacheable plans only, cache SQL for these queries or be able to build it fast with new parameters (there batches!), batches themselves, IN optimization... And all usual problems - topological sorting, version checks, etc... I hardly believe someone can just "tune up" all this stuff.

To get high score on materialization test, you must profile it for relatively long time, clearly knowing what can and must be optimized. Here is all about RAM consumption, count of allocations and dictionary lookups. You must know all about .NET application performance to achieve good results here.

Ok, just one example: DataObjects.Net uses our own IntDictionary(Of T). It is a dictionary resolving Int32 keys to T. Up to 4 times faster than regular dictionary (no GetHashCode(), fast equals, special hash table structure). Internally DataObjects.Net uses Int32 TypeIds, and IntDictionary helps to resolve them faster. Brings us additional 5-8% on materialization test.

Related articles:

Kind regards,
Alex Yakunin

Last Updated on Monday, 24 August 2009 20:28  

Polls

Which test must we add next?
 

Subscribe to our blog