1 Reply Latest reply on Sep 22, 2011 1:25 PM by MicahVillmow

    AMD Radeon Stack Allocation


      Hello, i've started learning low-level gpu computing concepts using AMD IL and ISA documentation. And I have question about address stack allocation: in which kind of memory it is allocated (lds, gds, registers, something special)? and how fast this memory is?

      IL documentation provides only this information:

      address stack (glossary):

      A stack that contains only addresses (no other state). Used for flow control. Popping the address stack overrides the instruction address field of a flow control instruction. The address stack is only modified if the flow control instruction decides to jump.

      ISA documentation doesn't give answers for this questions too (maybe I couldn't quite catch them?). I've found information only about push/pop mechanisms and maximal call deepness = 32.

      I'm working on my own compiler for GPUs, and this information can help me to handle calls (and recursion) in most efficient way.

      Thank you, and sorry for my poor english. :)