Stating functions with a new COG in XMMC
mh3soldier
Posts: 3
Hello,
I have been googling so much to find information about starting functions with a cog when using XMMC. I want to run several functions inside my code, each in a separate cog, while using XMMC. Till now I understand this:
I can't use cogstart() when using XMMC
I can't use cognew to run functions when using XMMC,
But I can use load_cog_driver_xmm()
Is this correct?
Can I use cog_run() with XMMC to run functions?
Also, can someone please expain the function load_cog_driver_xmm()? What does it do exactly? And how can I use it safely?
One more question, I know that all pthreads will run on one COG when using XMMC, but which COG is this? If I can specify the COG to run all the pthreads, how?
Thanks,
I have been googling so much to find information about starting functions with a cog when using XMMC. I want to run several functions inside my code, each in a separate cog, while using XMMC. Till now I understand this:
I can't use cogstart() when using XMMC
I can't use cognew to run functions when using XMMC,
But I can use load_cog_driver_xmm()
Is this correct?
Can I use cog_run() with XMMC to run functions?
Also, can someone please expain the function load_cog_driver_xmm()? What does it do exactly? And how can I use it safely?
One more question, I know that all pthreads will run on one COG when using XMMC, but which COG is this? If I can specify the COG to run all the pthreads, how?
Thanks,
Comments
The short answer is cog_run() and cogstart() C function code will not work with any XMM or XMMC model program.
The only cog code you can run in with xmmc or other xmm with release propellergcc at the moment is .COGC, GAS, or PASM ... although spinwrap code may also work. We have a multi cog xmmc feature in the default branch, but it has not been qualified for production use.