TensileCreateLibrary#
TensileCreateLibrary
is a command-line tool that generates libraries and code object files for a set of supplied logic files.
Syntax#
TensileCreateLibrary [OPTIONS...] <LOGIC DIRECTORY> <OUTPUT DIRECTORY> <RUNTIME LANGUAGE>
Required arguments#
Here is the list of required arguments for invoking the TensileCreateLibrary
command.
Argument |
Description |
---|---|
<LOGIC DIRECTORY> |
Absolute path for logic files. The logic files are generally found in either of the following locations:
|
<OUTPUT DIRECTORY> |
Absolute or relative path to the output directory where build artifacts are placed. |
<RUNTIME LANGUAGE> |
Runtime language out of OCL, HIP, or HSA |
Options#
Here is the list of optional arguments for invoking the TensileCreateLibrary
command.
Option |
Description |
---|---|
--architecture=ARCHITECTURE |
Architectures to generate a library for. When specifying multiple options, use quoted and semicolon-delimited architectures such as --architecture=’gfx908;gfx1012’. Supported architectures include: all; gfx000; gfx803; gfx900; gfx900:xnack-; gfx906; gfx906:xnack+; gfx906:xnack-; gfx908; gfx908:xnack+; gfx908:xnack-; gfx90a; gfx90a:xnack+; gfx90a:xnack-; gfx940; gfx940:xnack+; gfx940:xnack-; gfx941; gfx941:xnack+; gfx941:xnack-; gfx942; gfx942:xnack+; gfx942:xnack-; gfx1010; gfx1011; gfx1012; gfx1030; gfx1031; gfx1032; gfx1034; gfx1035; gfx1100; gfx1101; gfx1102. |
--build-client |
Builds Tensile client executable that is used for stand alone benchmarking. This option is set by default. |
--client-config |
Creates |
--code-object-version={default,V4,V5} |
HSA code object version. |
--cxx-compiler={amdclang++, hipcc} or {clang++, hipcc} for Windows |
C++ compiler used when generating binaries. |
--embed-library=EMBEDLIBRARY |
Specifies the library to embed into static variables. |
--embed-library-key=EMBEDLIBRARYKEY |
Access key for embedding library files. |
--generate-manifest-and-exit |
Similar to the |
--generate-sources-and-exit |
Skips building the source and assembly code object files. Outputs source files only and exits. |
--ignore-asm-cap-cache |
Ignores the asm capability cache and derives the asm capabilities at runtime. |
--jobs=CPUTHREADS or -j CPUTHREADS |
Number of parallel jobs to launch. If this option is supplied with a value higher than |
--lazy-library-loading |
Loads Tensile libraries only when needed. |
--library-format={yaml,msgpack} |
Specifies the library format to use. Default value: |
--no-enumerate |
Prohibits |
--no-merge-files |
Stores every solution and kernel in separate files. |
--no-short-file-names |
Prohibits short files names. |
--num-merged-files=NUMMERGEDFILES |
Number of files the kernels must be written into. |
--merge-files |
Stores all solutions in a single file. This is set by default. |
--short-file-names |
Converts solution and kernel names to serial Ids if Windows kernel name is too long. The option is set by default. |
--separate-architectures |
Separates |
--verbose=PRINTLEVEL or -v PRINTLEVEL |
Sets printout verbosity level out of 0, 1, and 2. |
--version=VERSION |
Version string to embed into the library file. |
--write-master-solution-index |
Outputs master solution index including number of kernels per architecture post build in csv format. |
Usage without options#
Here is how to run TensileCreateLibrary
command without options. The specified logic directory contains the
logic files and the generated artifacts are directed to the tensile-output directory that is created in the directory where the TensileCreateLibrary
command is invoked. The runtime language is HIP.
TensileCreateLibrary /home/myuser/Logic tensile-output HIP
Usage with options#
Here is how to run TensileCreateLibrary
command with options. The following example shows options with and without arguments.
TensileCreateLibrary --separate-architectures --jobs=32 /home/myuser/Logic tensile-output HIP