I'm not sure I like this way. Because the number of cores and the papi specification are always non-default, but basically you're forcing the user to explicitly write a nullptr default value. Either put this in the back or change to a call to the TX manager, but putting always defaults to the back of the line would seem easier for me.