diff options
author | Florian Jung <florian.a.jung@web.de> | 2013-05-19 17:05:10 +0200 |
---|---|---|
committer | Florian Jung <florian.a.jung@web.de> | 2013-05-19 17:05:10 +0200 |
commit | 7eb8335d65ff42dcd6e63c1ce6ccdf2afb7480e4 (patch) | |
tree | 448e2e6fecba1b292f8651bd0ec1c1bd33077115 /synth/OPTIMIZATIONS | |
parent | 2f796b659626569c02dd5016dc3df45000e2b7e2 (diff) |
optimizations
Diffstat (limited to 'synth/OPTIMIZATIONS')
-rw-r--r-- | synth/OPTIMIZATIONS | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/synth/OPTIMIZATIONS b/synth/OPTIMIZATIONS index 3ec667b..4a0b8b9 100644 --- a/synth/OPTIMIZATIONS +++ b/synth/OPTIMIZATIONS @@ -3,9 +3,11 @@ Sinnlose Optimierungen o dauerndes nutzen von oscillator[i] durch einen curr_osc pointer ersetzen (um etwa eine standardabweichung schneller -> kein wirklicher effekt) + o if (out>0) und tremolo-lfo: den if-check weglassen: + bringt einen performanceverlust von einer respektive drei + standardabweichungen Mögliche Optimierungen - o ??? if (out>0) und was mit lfo: vlt das if weglassen? o 1% noten kriegen direkten pointer auf ihre waves; (custom_wave-check entfällt) x 15% fm-liste (die nur die oscs mit fm[i]!=0 enthält) statt in O(n²) alle durchzutesten: bei 2 oszillatoren kein effekt, @@ -14,7 +16,7 @@ Mögliche Optimierungen o ??? Channel::get_sample() soll mehrere frames berechnen. soll außerdem das /ONE*VOL_FACTOR gleich mit einrechnen (kann einmalig gleich mit Channel::volume verrechnet werden) - o 10% BOTTLENECKs in note.cpp fixen. actual_freq und abhängigkeiten + x 33% BOTTLENECKs in note.cpp fixen. actual_freq und abhängigkeiten nur dann berechnen, wenn sie sich auch ändert (set_freq, porta, pitchbend, freq-envelope) o ??? log_verbose sollte ggf. garnicht interpretiert werden? |