Thanks for the report, the clear reproducibility instructions AND workaround. I have forwarded to the engineering team to ensure they are aware. The feature request as well for the Catalyst control center.
I wish to retract my claim that it would be more defensible if it would happen also in CPU profiling. As the C specification is quite clear on the issue (C11 Specification 126.96.36.199 paragraph 4) . If no locale is selected by the program then it's equivalent to having the "C" locale set. So the current GPU debugging breaks explicitly C conformant programs. It should be the same in C++.
So the only possible fix is to make GPU profiling not leak it's locale into the process under examination.
We have tried on several systems to reproduce the issue with the GPU Profiler and so far have been unable to reproduce the issue. Here's what I tried on my Ubuntu machine
Open the Language Support app
On the Regional Formats page, I selected "Deutsch (Deutschland)" for the "Display numbers, dates, and currentcy amounts in the usual format for" setting
I clicked the "Apply System-wide" button, and rebooted the system
After logging back in, I ran an application that write floating point values to stdout.
I see no difference in the output when running the app standalone or within CodeXL.
CodeXL QA also tried to reproduce this on several of their systems.
I took a look at the GPU Profiler code, and I think I know what might be causing the issue you're seeing, but until I can reproduce the issue, I can't confirm that any fix I put in place is correct.
Perhaps, you can share how you are changing the locale on you Ubuntu system and perhaps also share the application you are using for testing.
Cool. Appreciate the update and refinement.