On this line of the VST3 process method there is a check for
getHostType checks the path of the current app file and then does a lot of string comparisons.
Not only will the string operations do a lot of allocations, the
File::getSpecialLocation could well be some disk access.
This is showing up as process-block allocations during high-level
I think this
getHostType should either be cached as a
JuceVST3Component member or maybe the
getHostType generally should be cached as some static data. I’m not sure if it’s possible for that to change during operation?
(There’s also a similar call in the VST process block but at least that seems to only be called once.)