Has anyone noticed that main macro's can use a lot of cpu?
I consolidated several sections or an ensemble inside a macro. I also removed audio ins and outs and converted them to events on all non audio sections. The macro ended up with around 30 output terminals which were attached to a core cell with all input set to event type. I also disconnected all send and receive module that use the audio clock and used more output terminals on the macro for a direct connection instead. After hooking it all back up the cpu went up from 60 percent to over 95 %. The only thing that makes sense is I put it all in a main macro and I have a feeling removing everything from the macro and pasting it into the ensembles main edit window, hooking the outs directly to a core cell the cpu will drop. I've seen this happen before and avoid macros in general. Anyone else experience higher cpu's when using macros?
Answers
-
All sounds very hazy to me. Feelings are not usually a good metric in programming, particularly in the context of a programmer's massive yet fragile ego!
To find your error (or a problem with the language implementation - unlikely but possible!), do some systematic testing:
*Create a simplified framework to test your hypothesis
*Change one thing at a time
*Don't always trust the per macro cpu metering (sometimes it gets added to the previous or next module in the chain)
*make absolutely sure that things you think are functionally equivalent really are functionally equivalent
It's good to apply common sense as well... a 'sanity check' if you will... Many folk have been developing using Reaktor for literally decades. Packaging code into macros is a very common process. Is it possible that in the probably 100s of 1000s of times this has been done, nobody noticed a 40% drop in cpu efficiency?
0 -
I agree, Intend to look this over real good.
1 -
Yep, the macro's do seem to add a tad of extra cpu when they have minute code in them and a lot of voices to amplify the subtle difference. I used the event counter and tapped around looking for something. I had a module running rampid with events. After I got that fixed with modulation macros things were better. But I did discover that trying to use audio events with "enable audio events" turned on to get a module to work with event outputs is not much. I can reduce static power draw with an event stp filter but it seems possible using straight audio ports actually uses less cpu when the ports are running constantly. I haven't full verified it but I had some overloads with event ports trying to handle audio but not with straight audio ports. The main problem though causing a 40 percent difference was an up front audio stream of events {almost} thas suppose tp be 1 event per midi note. This caused a downflow stream that triggered several modules and they were also running rampid. I was pretty tired , no, it's not the macro in this case.
0
Categories
- All Categories
- 19 Welcome
- 1.5K Hangout
- 62 NI News
- 785 Tech Talks
- 4.1K Native Access
- 16.6K Komplete
- 2K Komplete General
- 4.3K Komplete Kontrol
- 5.7K Kontakt
- 1.6K Reaktor
- 380 Battery 4
- 846 Guitar Rig & FX
- 429 Massive X & Synths
- 1.3K Other Software & Hardware
- 5.8K Maschine
- 7.3K Traktor
- 7.3K Traktor Software & Hardware
- Check out everything you can do
- Create an account
- See member benefits
- Answer questions
- Ask the community
- See product news
- Connect with creators