1 Reply Latest reply on Mar 25, 2008 8:10 PM by michael.chu

    CAL vs Brook


      I am new to GPGPU and have noticed that AMD/ATI offers two diferent languages for programming their cards: Brook and CAL. I look at the SDK and CAL seems a lowest level language than Brook. I have two questions:

      Are there significant differences between CAL and Brook at the time to take control over the execution? i.e. Can CAL do things on the hardware that can not be done in Brook?

      Gives CAL more performance than Brook?

      Thank you
        • CAL vs Brook
          Hi Francisco,

          We encourage developers to use Brook+ whenever possible. It allows you to program a C level for your kernels that run on the stream processor. Brook+ is, itself, built on top of CAL. While it is possible to code in CAL, it is not what we recommend when you start out. First see what you can do in Brook+ and post on the forum if you need help. We will be continually improving Brook+ to offer more features and better performance.

          As with any abstraction layer, you are going to encounter some amount of overhead associated with abstracting out the hardware (such as C vs. hand-coded assembly). And features will most likely show up in CAL first and get integrated in Brook+ shortly thereafter.