Thanks you all for have posted your feedback on our mORMot2 Survey!

Here are some insights.
2020-03-28
2020-03-28. Open Source › mORMot Framework
On server side, a lot of CPU is done processing conversions to or from text. Mainly JSON these days.

In mORMot, we take care a lot about performance, so we have
rewritten most conversion functions to have something faster than the Delphi or
FPC RTL can offer.
Only float to text conversion was not available. And RTL str/floattexttext
performance, at least under Delphi, is not consistent among platforms.
So we just added a new Double-To-Text set of functions.
2020-03-06
2020-03-06. Open Source › mORMot Framework
First of all, if it was not clear enough: Delphi will continue to be supported in mORMot 2.0. Some people reported that our previous article may have been misleading. But perhaps not all versions. For sure, Delphi 5 and Kylix will not be supported in mORMot 2. It is also possible that it would not […]
2020-03-03
2020-03-03. Open Source › mORMot Framework
The more I think of it, the more I am convinced it is time to change how the
framework is versioned.
We have version 1.18 since years... difficult to follow... time to upgrade!
I would like to upgrade mORMot to version 2 - with a major
refactoring.
2020-02-17
2020-02-17. Open Source › mORMot Framework
Our Open Source framework includes some optimized asm alternatives
to RTL's move() and fillchar(), named
MoveFast() and FillCharFast().

We just rewrote from scratch the x86_64 version of those,
which was previously taken from third-party snippets.
The brand new code is meant to be more efficient and maintainable. In
particular, we switched to SIMD 128-bit SSE2 or 256bit AVX memory access (if
available), whereas current version was using 64-bit regular registers. The
small blocks (i.e. < 32 bytes) process occurs very often, e.g. when
processing strings, so has been tuned a lot. Non temporal instructions (i.e.
bypassing the CPU cache) are used for biggest chunks of data. We tested
ERMS support, but it
was found of no benefit in respect to our optimized SIMD, and was actually
slower than our non-temporal variants. So ERMS code is currently disabled in
the source, and may be enabled on demand by a conditional.
FPC move() was not bad. Delphi's Win64 was far
from optimized - even ERMS was poorly introduced in latest RTL, since it should
be triggered only for blocks > 2KB. Sadly, Delphi doesn't support AVX
assembly yet, so those opcodes would be available only on FPC.
Resulting numbers are talking by themselves. Working on Win64 and Linux, of course.
2019-12-25
2019-12-25. Synopse Company
Let the little mORMot wish you and all yours a merry Christmas and a happy New Year! Happy coding!
2019-10-30
2019-10-30. Open Source › mORMot Framework
I just finished my workshop at EKON 23.
Like every year, it was a great event to attempt to, and I enjoyed presenting 2
sessions and 1 workshop.
Sessions were about "Kingdom Driven Design" (KDD), which is the
name I used to define a cut-down version of "Domain Driven Design" (DDD).
Less paranoid, a bit less isolation, but perhaps more common sense for the less
sensitive projects.
Some presentations and code are now available!
2019-10-17
2019-10-17. Open Source › mORMot Framework
I just found some very nice articles by Stephan Bester about first steps to mORMot's ORM and SOA.

Don't be scared by the mORMot: it is more stressed than you
are.
This painful picture just
won a wildlife photographer prize... poor little rodent!
« previous entries - page 8 of 52 - next entries »