This is the readme for sf.net project AMDCTM.
Download
--------
For instructions on checking out the tree, visit:-
http://sourceforge.net/svn/?group_id=189539
Directory structure
-------------------
- amdctm
+ bin : Contains architecuture/OS specific binaries
- linuxi386
- linuxx86_64
- win32
- win64
+ docs : Documentation for CTM and files included in 'src'
- guides : Contains the Programming Guide for CTM
- htdocs : Contains the doxygen generated html documentation
- papers
- releasenotes
+ include
+ lib : Contains the compiled libraries
- linuxi386
- linuxx86_64
- win32
- win64
+ src
- build
- contrib : User contributed code
- samples
+ apps : Contains binaries for code shipped with the
SDK and some extra sample apps
+ libraries : Contains code/build environment to generate
CTM Sample libraries and CTMUtils
- amuabi
- amucbuf
- amucgen
- amuisa
- ctmutil : Contains code for ctmutil
+ utilities
- tests
+ benchmarks : Source code for benchmark applications
- CTMBench : CTM-based benchmark modelled after
GPUBench benchmark from Stanford Univ
- tutorials : Contains tutorial apps for ctm and ctmutil
+ ctm : Basic tutorials on how to use CTM
+ ctmutil : Basic tutorials on how to use CTMUtils
Building Sample Source Distribution
-----------------------------------
- Requirements:
For building this project, CTM SDK version 1.0 beta5 or greater
is required. This README has been updated for CTM SDK version 1.1
Alpha release.
LINUX Compilation:
-----------------
Environment variables:-
- set CTM_VERSION=CTM6 to compile for CTM HAL SDK v1.1
- set CTMROOT=<dir-where-ctm-sdk-is-installed>
In most cases it will be '/usr/local/atictm'.
For compilation to proceed, CTMROOT has to be set.
To compile the code just run 'make' in the top-level(amdctm)
directory and everything will compile.
To compile individual libraries/apps, just call 'make' in the
directory containing the corresponding Makefile.
Presently the following libraries are compiled:-
- libamuabi.a
- libamuasm.a
- libamucbuf.a
- libamuisa.a
- libctmutil.so
These are copied to the corresponding OS/Architecture directory.
For e.g. compiling the code on a Linux 32-bit system would copy
the libraries to lib/linuxi386.
Include files for ctmutil are copied to the top-level 'include'
directory.
In addition to the above, the tutorials and apps are also build.
WINDOWS Users/Developers:
------------------------
Environment variables:-
- set CTMROOT=<dir-where-ctm-sdk-is-installed>, e.g.
C:\Program Files\ATI Research\CTM HAL SDK v1.1alpha1
- set AMUROOT=>dir-where-amucomp-sdk-is-installed>, e.g.
C:\Program Files\ATI Research\AMUCOMP SDK v1.1alpha1
For compilation to proceed, CTMROOT & AMUROOT have to be set.
It might also be a good idea to update the PATH environment
variable to add the following:
%CTMROOT%\bin\<archType>;%AMUROOT%\bin\<archType>
where,
archType = 2k for Windows 32-bit binaries and
archType = xp64a for Windows 64-bit binaries
To set the above environment variables, go to
Control Panel -> System -> Advanced -> Environment Variables
Using the New or Edit tabs, as the case might be, add/edit
the above mentioned environment variables and their values.
To build sample utility libraries, open and build
amdctm\src\samples\libraries\libraries6.sln
To build sample applications, open and build
amdctm\src\samples\apps\apps.sln
The various libraries (LIBs) and binaries (DLLs and EXEs) are
copied to the corresponding OS/Architecture directory under
the lib and bin directories respectively.
For e.g. compiling the code for Windows 32-bit target would copy
the libraries to lib/win32 directory.
Documentation
-------------
Presently the programming guide for CTM and html documentation
of CTMUtils are kept in the 'docs' directory. More will be added
as we add new applications.