4 Replies Latest reply on Jan 26, 2012 10:26 AM by rouellet

    Kernel Analyzer 1.9 bug

      keyword messup


      There is a bug with Kernel Analyzer 1.9 which causes permanent lock-up of the tool:

      I have tried to compile a kernel with the following two lines attached as code.

      Since then, it fails to compile any kernel loaded from any place that has a for cycle, even after software restart. I have created a define that is usually a kernel parameter, but I wanted to investigate GPR usage and expected throughput of kernels and stuff, so I defined this variable so compiler has a chance of loop unroll.

      However, it seems to have regarded the "define for offline" in a very bad manner, even though it was preceded by "//". Now it remembers this misbehavior and throws an error on every for cycle (even ones I load from other applications) saying:

      Line 57: error: function
                "offline" declared implicitly
            for (uint i = *call; i < *call + 4u ; ++i)

      However, the word offline isn't even present inside the kernel! So clearly it remembers something from earlier. As I have stated, this problem persists through application restart also. This is clearly a bug, so please do try to correct it.

      Edit: What's more worse, is that it persists through reinstall of the application. Could you give me some hint how to make it go away?

      // define for offline analysis #define percentage 0.15f

        • Kernel Analyzer 1.9 bug

          Someone from central developing please tell me how to resolve the issue! I have tried uninstall/reboot/reinstall in all combinations, checked AppData for any leftovers or anything that can persist through reinstall, but I couldn't find any file that could store such data. There are some files inside AppData, but I dare not delete any, since names suggest other functionality.

          I really need this tool, so please tell me how to fix it without format c:\

          Thank you in advance

            • Kernel Analyzer 1.9 bug


              I am unable to reproduce your problem on my system.

              So I'm guessing about what might be happening on your system.


              The state the Kernel Analyzer keeps is in the registry.  (Yes, this is unusual.)

              You should be able to safely delete CURRENT_USER\Software\AMD\AMDAPPKernelAnalyzer (and everything under it).

              I'm not sure how any of this stuff would matter.

              But that is all of the run-to-run persistent state.


              The analysis modules are placed into c:\Program Files (x86)\Common Files\AMD\GPU ShaderAnalyzer or

              c:\Program Files\Common Files\AMD\GPU ShaderAnalyzer (for a 32 bit system).

              The uninstall leaves the old modules in place.

              If you are going to reinstall, you could delete them.


              Also, the KernelAnalyzer uses the installed Open CL libraries.

              The Open CL runtime code ships with our Catalyst Software (the video and other drivers).

              I think it's a good idea to install the latest drivers.


              After installing new drivers, and Open CL SDK's, it has been my experience

              that a reboot is required to make everything work right.

              The installer no longer requires one, and most things work.

              But I have seen funny behavior from the Kernel Analyzer until I reboot after updating drivers and the SDK.

                • Kernel Analyzer 1.9 bug

                  Thank you very much for the help. I found the source of the problem. It was inside the registry inside CURRENT_USER\Software\AMD\AMDAPPKernelAnalyzer\RecentShader  where the following values were (see code here).

                  These somehow remained a macro even after loading another kernel. So let me make two remarks:

                  • Please revise situations where the compiler might meet comments and keywords inside. I am quite sure I did not enter this define without "//" preceding, but even if I did, I would expect SKA to forget all previous compilations when I press the "Compile" button.
                  • Uninstaller of tools should really clean up after themselves.

                  Thank you again for helping.


                  Name Type Value MacroName0 REG_SZ for MacroValue0 REG_SZ offline