I am trying to get a relative large function library to work on ATI Stream SDK. I noticed that the time it takes for clBuildProgram to complete seems to grow very rapidly as I increase the code size. At around 4000 lines, it already takes a minute or so on my AMD-x4/965. (My video card is a 5870 from Sapphire.) But if it gets about 5000 lines, I waited 5 minutes and it still hasn't come back.
I suspect the compilation part is probably done. If I deliberately introduce a small error into the code, say address mismatch, it comes back almost immediately.
Is it a known linker performance problem that hopefully will be fixed in the future? Or am I running into some kind of hardware kernel size limitation? I couldn't find any documentation on the maximum allowed size of kernel programs. And there is of course not much of an API to find out.