Closed davidtrevelyan closed 7 months ago
Attention: 14 lines
in your changes are missing coverage. Please review.
Comparison is base (
04cb333
) 95.70% compared to head (c3103c9
) 95.70%.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Nice one, thanks @jatinchowdhury18 - agreed! I've just pushed up some additions of the attribute to the Layer methods that I think are intended to be real-time safe. Would you mind quickly double checking that I've understood them correctly, and haven't added the attribute to any methods that aren't intended to be real-time safe?
Sure thing! Your additions look good to me. I hadn't really thought much about whether the methods used to set the layer weights were realtime-safe, but it's cool that they are! I guess that could be important if there's a situation where someone wants to "modulate" their layer weights or something like that.
I'm ready to merge this PR if you are!
Great! Yeah - super cool that the weights can be modulated - kind of like circuit bending for ML 🙃
Also, it could equally be really useful for controlling any highly interpretable differentiable elements that may live in the network, like a differentiable fader or something. Lots to play with, and I think RTNeural is really well placed in offering that option to creative developers!
I'm happy for this MR to be merged if you are! Thanks for the review 🙏
This PR does the following:
config.h
header file, in which all RTNeural preprocessor definitions are containedRTNEURAL_NAMESPACE
etc. have also been moved toconfig.h
in an attempt to be clean, but I'm very happy to move them back to theRTNeural.h
header if that's preferred![[clang::realtime]]
function attribute, configured behind a newRTNEURAL_REALTIME
macro-DRTNEURAL_ENABLE_RADSAN=ON
RTNEURAL_REALTIME
to the real-time methods ofModel
andModelT
A couple of questions from me:
RTNEURAL_REALTIME
a good enough name? Happy to change it to something else :)RTNEURAL_REALTIME
to the real-time methods of theLayer
implementations?