2013-03-11 84 views

回答

1

通過在clBuildProgram函數的options參數中傳遞參數,您可以使用OpenGL編譯器的-D參數。通過-D x=y,相當於在內核文件的頂部添加#define x y。同樣,通過-D x等同於加入#define x(當然,對於任何xy)。

在你的情況,你可能想通過這樣的事情:

-D ACTIVATION_FUNCTION(X)=(1.7159f*tanh(2.0f/3.0f*X)) 

然後你就可以改變你認爲合適的,直接從你的程序在運行時。

請注意,您也可以打開內核文件並直接將定義寫入其中,作爲替代解決方案,但這可能是最乾淨的方法。只要注意換行符,我不確定它們的處理情況。


Ref。 this documentation page on clBuildProgram,「預處理器選項」部分。

+0

謝謝,呃,我試過了--A NAME =(X)(.... X ...)。 Alteast我在正確的軌道上。謝謝。 – 2013-03-11 09:37:08