cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

thesquiff
Journeyman III

Two simple CAL questions

(1): In a CUDA application I'm translating there are two kernels, called directly one after the other. The output from the first kernel is the input to the second kernel.

Is it possible to do the same in CAL? i.e. without copying the output from the first kernel to the host and then back to the card again as the input to the second?

 

(2): I'm trying to create this resource:

 

r = calResAllocRemote1D(&textRes, &device, 1, 131072, CAL_FORMAT_INT_1, 0);
calAssert(r, "There has been an error allocating resource textRes.");

First thing to notice is that its greater than 8192 wide, but I thought this was possible in some way? Currently I'm getting an error allocating the resource.

 

TIA

0 Likes
7 Replies
ryta1203
Journeyman III

1) Good question.

2) I think you might be thinking of Brook+, I'm not sure that CAL has address virtualization/translation.

0 Likes

1) Yes, it can be done. All cal resources are persistent across kernel calls.

2) CAL has a limit of max 1D size of 8192. Of course, you can allocate 2D resources of 8192 x 8192 if you need bigger dimensions. Brook+ does address virtualization and allows you to allocate 1D streams with dimension > 8192.

0 Likes

Originally posted by: gaurav.garg 1) Yes, it can be done. All cal resources are persistent across kernel calls.

 

Can you provide a sample or give us an example? Do you have to remap the resource each time between kernel calls?

0 Likes

Ryta,

 NLM_Denoise in the CAL SDK does this. It has two kernels and each kernel shares inputs and the output of the first kernel is also input to the second.

0 Likes

Originally posted by: MicahVillmow Ryta,

 NLM_Denoise in the CAL SDK does this. It has two kernels and each kernel shares inputs and the output of the first kernel is also input to the second.

 

Micah,

   Is there an example that uses ISA instead of IL, I havent been able to find one?

0 Likes

Ryta,

 We do not have any ISA samples as this is not a path that we recommend users take when creating programs.

 

Micah

0 Likes

Originally posted by: MicahVillmow Ryta,

 We do not have any ISA samples as this is not a path that we recommend users take when creating programs.

 

Micah

 

Micah,

  Yes, I understand it's not "recommended" but since the SCUG talks about it and it is possible, it would be great to see an example. Is this possible or not?

 

See my other thread title CAL and ISA question. I have ISA kernels that won't compile due to parser errors, I would just like to first eliminate the whole "" or \n problem or whatever, thanks.

0 Likes