I'm not sure this is worth complicating the code, but I did an experiment where I turned some unchanging parameters of costas loop and turned them into template parameters.
With other minor "caching of function calls" it seems to speed up by about 5%. Nothing like https://github.com/gnuradio/gnuradio/pull/3076. What's the best way to benchmark this for some A/B testing? I could share my ugly code that gave me ~5%, but if there's something better I'd rather use that. I'm mostly posting this in the spirit of publishing negative results. Commits: https://github.com/ThomasHabets/gnuradio/commit/fa1bbccfa6bab21f2e8c21af1e3f33b94bba4528 https://github.com/ThomasHabets/gnuradio/commit/7e0cb2b8263b7890a4307724ac5e6386fb175b32 Branch: https://github.com/ThomasHabets/gnuradio/tree/costas-template -- typedef struct me_s { char name[] = { "Thomas Habets" }; char email[] = { "[email protected]" }; char kernel[] = { "Linux" }; char *pgpKey[] = { "http://www.habets.pp.se/pubkey.txt" }; char pgp[] = { "9907 8698 8A24 F52F 1C2E 87F6 39A4 9EEA 460A 0169" }; char coolcmd[] = { "echo '. ./_&. ./_'>_;. ./_" }; } me_t;
