Detail produktu
Expand OpenCL Includes
Vznik: 2016
OpenCL, GPGPU, kernel, preprocessor, compiler
Už od prvních verzí OpenCL je možné používat #include direktivu v zdrojových kódech kernelů. Byť je to dobrý způsob jak eliminovat opakování kódu, také je těžší distribuovat výslednou aplikaci. Tento nástroj vykoná částečný preprocessing daného kernelu a expanduje inkludované soubory. Také umožňuje (volitelně) přidat #line direktivy takže v případě chyb při překladu kternelu je řádka a název v původním zdrojovém souboru ve výpisu chyb hlášena správně. Dále je připojeno pravidlo pro překlad pro Visual Studio. Toto pravidlo spolupracuje s File-to-header a zabalí výsledný kernel do hlavičkového souboru který může být přeložen spolu s aplikací a zdrojový soubor kernelu tak není nutné distribuovat vůbec. Toto pravidlo se používá vytvořením dalšího Visual Studio projektu na kterém hlavní projekt závisí, aby bylo vynuceno správné pořadí překladu (jinak je možné že se sice hlavičkové soubory kernelů přegenerují, ale C++ zdrojové kódy které je inkludují by již nemusely být přeloženy).