Coming soon: Your brand new Help Center & Community! Get a sneak-peek here

SuperOffice 8: Multithreading or still single threaded?

We have SuperOffice v7.5 running on Win7 machines with Quad Cores

Some operations, such as generating a Quote, are slow: 2.5 minutes to generate a PDF containing "only" 81 quote lines

During this time SuperOffice consumes 25% of available CPU, which is 100% of 1 core. Meaning SuperOffice 7.5 is single threaded, and not multi threaded.

So my question:

Does SuperOffice 8 support multi-threading?

(If so, I expect it to generate Quotes faster than v7.5)

RE: SuperOffice 8: Multithreading or still single threaded?

The basic Win client with its c++ sodbif database layer is single threaded.I don't see that changing - ever!
However, since Win uses more and more of Netserver, it has essentialy become a hybrid. Netsever is multi-threaded and in a few cases the Win client is able to exploit this. The best example is the loading of archives. This happens a-synchronously in netserver while the win client is poling for results during idle time. Essentialy running as a small state-machine.
Another area where I have been able to exploit the exact same mechanism is in the new Bulk-Update system and the new Entity Mini Cards.
The result is a smooth running UI that remains user-input sensitive e.g. being able to show progress and click Cancel at any time.
Most of the Quote system runs in netserver using the service layer. But these are always synchronous calls. The Win client is blocking the UI while waiting.

That said, 2.5 mins. to generate a quote .pdf file sounds very bad indeed. I would need to do some profiling with your use case & setup to figure out where all this time is going to. It has been a while since last I have tested Quote.. Can't possibly say if this is normal. I dare say it should not be! One question that springs to mind: Are you using a custom connector? I am not even entirely sure any more what modules are involved when generating a quote document, only that most of it happens in the c# netserver layers.


Af: Conrad Weyns 11. jul 2017