DQMH Consortium Toolkits Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

Any known upper limits to number of clones of a DQMH module in respect to performance?

We are using DQMH modules for a lot of our smaller systems. We are now starting to look at larger systems that might have a lot of clones running of a "Device Module".
Has anyone done any tests on performance of a system running 1-1000 number of clones (Don't think it will ever go anywhere near 1000....but still)? Any overhead processing/memory usage because of DQMH (running a lot of devices on a machine will of course always add more and more work to the system...).

So my question is only looking at what using the DQMH framework for large systems does for performance....not what the systems themselves do.

 

Cheers

Henrik

0 Kudos
Message 1 of 7
(5,631 Views)

This is one for Matthias Baudot...




DSH Pragmatic Software Development Workshops (Fab, Steve, Brian and me)
Release Automation Tools for LabVIEW (CI/CD integration with LabVIEW)
HSE Discord Server (Discuss our free and commercial tools and services)
DQMH® (Developer Experience that makes you smile )


0 Kudos
Message 2 of 7
(5,587 Views)

I don't know the upper limits of clones of a DQMH module. but I use over 16 clones of the DQMH module to communication our device via visa in LabVIEW 2019 32bit is well control.

I think your problem is the hardware limits. if your computer is running 32bit. the memory limit is using 1.8G RAM for a single application in OS. so if you over the limit in your clones that you will meet the problem. another one is OS threading issues. if your clones need in single threading that will meet like queue behaver.

for your reference.

0 Kudos
Message 3 of 7
(5,553 Views)

The "Fully qualified clone name" has a range of 1..9999! This is also the maximum number that can theoretically be managed. Where exactly the limit is in practice, one would have to try.

 

Fridu_0-1576741385787.png

CLA / CTD
0 Kudos
Message 4 of 7
(5,447 Views)

I would think it's not a hard limit, but a question of how the performance degrades with increasing numbers of clones...




DSH Pragmatic Software Development Workshops (Fab, Steve, Brian and me)
Release Automation Tools for LabVIEW (CI/CD integration with LabVIEW)
HSE Discord Server (Discuss our free and commercial tools and services)
DQMH® (Developer Experience that makes you smile )


0 Kudos
Message 5 of 7
(5,444 Views)

Here's a link to a discussion of test "actor rings" made in Messenger Library and the Actor Framework.  You should be able to make such a test in DQMH quite easily.  We made tests with 10,000 that you could compare to.

 

 

0 Kudos
Message 6 of 7
(5,390 Views)

We have an application that launches DQMH clones dynamically and can, in theory, serve many many clones at the same time (1 clone instance per client connected to the system).

We did some testing with 1000 DQHM clones. While I don't have benchmarking numbers handy, I can tell you that we didn't observe any performance degradation at all, when making a Request and Wait for Reply to a single clone when a single instance is running, versus when 1000 instances are running.

We have true reentrant code as part of our Cloneable Modules and we also tested the time it takes to perform (execute the code in the MHL of a DQMH request) when requesting a single clone versus requesting 1000 clones. Again, no significant performance degradation.

We only observed a decrease in performance for launching the clones. Indeed, launching 1000 clones at the same time takes a lot longer than launching a single clone. This is due to the cloneable module launching process which cannot be truly reentrant since some synchronization needs to occur to ensure a proper lifetime of the various references.

 

Hope this helps a little bit.



Matthias Baudot | Software Architect | Founder at STUDIO BODs | DQMH® Consortium Board Member


STUDIO BODs     BLT for LabVIEW     LabVIEW Champion     Certified Professional Instructor     DQMH Trusted Advisor     GCentral Sponsor


 Check out my LabVIEW presentations and videos!

Message 7 of 7
(5,032 Views)