Параметры конфигурации для генерации кода CUDA из кода MATLAB с помощью GPU Coder
The coder.GpuCodeConfig
или coder.gpuConfig
объект содержит параметры конфигурации, которые codegen
используется для генерации CUDA® MEX, статическая библиотека, динамически связанная библиотека или исполняемая программа с GPU Coder™. Передайте объект в codegen
функция при помощи -config
опция.
cfg = coder.gpuConfig(
создает объект строения генерации кода для заданного типа сборки, который может быть CUDA MEX, статической библиотекой, динамически связанной библиотекой или исполняемой программой. Если Embedded Coder® продукт установлен, он создает build_type
)coder.EmbeddedCodeConfig
объект для статической библиотеки, динамической библиотеки или исполняемых типов сборки.
cfg = coder.gpuConfig(
создает объект строения генерации кода для генерации CUDA build_type
,'ecoder',false)'lib'
, 'dll'
, или 'exe'
выход, даже если установлен продукт Embedded Coder.
cfg = coder.gpuConfig(
создает build_type
,'ecoder',true)coder.EmbeddedCodeConfig
объект строения, даже если продукт Embedded Coder не установлен. Однако генерация кода с использованием coder.EmbeddedCodeConfig
для объекта требуется лицензия Embedded Coder.
GPU Coder всегда устанавливает PassStructByReference
свойство coder.CodeConfig
и coder.EmbeddedCodeConfig
объект строения кода true.
GPU Coder всегда устанавливает EnableSignedLeftShifts
и EnableSignedRightShifts
свойство coder.EmbeddedCodeConfig
объект строения кода true.
Для автономных целей, таких как статическая библиотека, динамически связанная библиотека или исполняемая программа в Windows® окружение, сгенерированные make-файлы не устанавливаются /MT
или /MD
флаги компилятора. Эти флаги указывают компилятору Visual Studio на использование библиотеки многопоточности. По умолчанию Visual Studio использует /MT
во время компиляции. Чтобы передать другие специальные флаги компилятора, используйте CompilerFlags
опция. Для примера,
cfg.GpuConfig.CompilerFlags = '-Xcompiler /MD';
The nvcc
компилятор имеет ограничения на суффиксы входного файла. Для примера, если файл объекта содержит номера версий, компиляция может оказаться неудачной. В таких случаях создайте символические ссылки или передайте '-Xlinker'
на CompilerFlags
.
codegen
| coder.gpu.constantMemory
| coder.gpu.kernel
| coder.gpu.nokernel
| gpucoder.matrixMatrixKernel
| gpucoder.reduce
| gpucoder.sort
| gpucoder.stencilKernel