imp.dmx imp.artnet.controller cpu usage insanely high

marker's icon

Hi,
I love the imp.dmx package and i'm trying to use it with the Enttec ODE to LED lighting in a new installation i'm building.
But the cpu usage is very high even when i only load one instance of imp.artnet.controller.mxo?
Max is using around 6% cpu when idle (with no patch loaded and dsp off).
Max is using around 100% cpu with one instance imp.artnet.controller.mxo loaded? The same goes when opening the helpfile. Why?

The strange thing is... this is not happening all of the time. When i close Max and replace the .mxo (with the same one) and restart Max then cpu stay low (around 12%). When i the close restart Max again the cpu is back up around 100% / 110%.

What should the expected cpu usage when using imp.artnet.controller?

I tested this on :
Max 7.3.3 both 32bit & 64bit

Model Name:    MacBook Pro
Model Identifier:    MacBookPro11,1
Processor Name:    Intel Core i5
Processor Speed:    2,8 GHz
Number of Processors:    1
Total Number of Cores:    2
L2 Cache (per Core):    256 KB
L3 Cache:    3 MB
Memory:    16 GB

And this one running Max 7.3.2 both 32bit & 64bit

Model Name:    MacBook Pro
Model Identifier:    MacBookPro5,1
Processor Name:    Intel Core 2 Duo
Processor Speed:    2,4 GHz
Number of Processors:    1
Total Number of Cores:    2
L2 Cache:    3 MB
Memory:    8 GB

Screen-Shot-2017-03-17-at-09.10.08.png
png
David Butler's icon

It's a longstanding bug in the threading loop. Basically the shared background service that the objects use to send Art-Net runs it's own threads to send/receive the actual data. For some reason these are getting into a state where they never sleep and yield time therefore the CPU usage reports 100% because the the threads are in constant use.

Do you actually notice any performance decrease when running the objects? I missed this bug when originally developing because there were no obvious effects. I'd also be interested to know if anyone on Windows experiences this problem, as that's why I do most of my development and testing.

I've held off updating this so far because I have a much more comprehensive DMX system in the pipeline and the very limited development time I have to spend on my personal projects is best spent on that. I'll take another look however and see if it's trivially fixable.

marker's icon

Hi David,
Thx for your quick reply. I did a quick test on an old win laptop running win7 Max7.3.3 32bit. There doesn't seem to be a problem on that config. Did not do extended testing though.
I can't really notice any serious performance issues so far on mac OS. And when i load like 40 instances of imp.artnet.controller (or the node object) there is no noticeable difference in cpu load either.
Ill inform you when i run into any performance issues. In the mean time i'm very curious about your new DMX system. Good luck with that and thanks for your amazing work and the fact you are sharing it!
Mark

samfm1163's icon

It could be something dumb that I am missing but it actually freezes occasionally on me if too many lights are controlled at once. The system I am running currently has only 6 rgb led decoders and 20 channels of dimmer packs with the enttec ode.

agustin genoud's icon

Hi all,
I'm having the same issues using a Chauvet DMX-AN node, Sierra 10.12.6, MacBook Pro (Retina, 15-inch, Mid 2014),

best

Jeff Crane's icon

Hello, and thank you David for doing this.
I understand you've got little development time, and are working on another DMX system. I'd really love to use this, I need artnet send capability for a project, but the cpu is running wild. Have you had any luck getting that to stop ?
Thank You

Mathieu Chamagne's icon

Hello

I'm having this issue on Mac : imp.artnet.controller takes 100% cpu.
MacOs 12.3.1, Max 8.2.2

I’ve been using the imp.artnet package on Mac then on windows for years, now I need to go back to Mac, but I’m stuck by this issue…
Did anyone found a solution ?
Or is there there another way to send DMX to an Artnet ENTTEC ODE OpenDMX interface ?

Thanks

Mathieu

Mathieu Chamagne's icon

Looks like the version I was using was quite old. (?) : on the "official" imp.dmx website, the only available version is 0.5
https://www.theimpersonalstereo.com/impdmx

Sounds very strange to me that this essential package is not listed in the package manager, and it's official website doesn't provide the latest version ... :-s