AMD APP SDK Developer Release Notes

AMD APP SDK v3.0 Beta
Developer Release Notes
1 What’s New in AMD APP SDK v3.0 Beta
1.1 New features in AMD APP SDK v3.0 Beta
AMD APP SDK v3.0 Beta includes the following new features:
 OpenCL 2.0: There are 20 samples that demonstrate various features of OpenCL 2.0 such
as Shared Virtual Memory, Platform Atomics, Device-side Enqueue, Pipes, New workgroup
built-in functions, Program Scope Variables, Generic Address Space, and OpenCL 2.0 image
features. For the complete list of the samples, see the AMD APP SDK Samples Release
Notes (AMD_APP_SDK_Release_Notes_Samples.pdf) document.
 Support for Bolt 1.3 library.
 6 additional samples that demonstrate various APIs in the Bolt C++ AMP library.
 One new sample that demonstrates the consumption of SPIR 1.2 binary.
 Enhancements and bug fixes in several samples.
 A lightweight installer that supports the following features:
Customized online installation
Ability to download the full installer for install and distribution
1.2 New features for AMD CodeXL version 1.6
The following new features in AMD CodeXL version 1.6 provide the following improvements to
the developer experience:
 GPU Profiler support for OpenCL 2.0
 API-level debugging for OpenCL 2.0
 Power Profiling
For information about CodeXL and about how to use CodeXL to gather performance data about
your OpenCL application, such as application traces and timeline views, see the CodeXL home
page.
Developer Release Notes
1 of 4
2 Important Notes
 OpenCL 2.0 runtime support is limited to 64-bit applications running on 64-bit Windows and
Linux operating systems only.
 C++ static kernel extensions supported for OpenCL 1.2 are not supported for OpenCL 2.0.
 If you are using Windows, verify that the AMDAPPSDKROOT environment variable is present. If
the variable is not present, add it and set its value to one of the following:
–
C:\Program Files\AMD APP SDK\<APP SDK Version> (for 32-bit OS)
–
C:\Program Files (x86)\AMD APP SDK\<APP SDK Version> (for 64-bit OS)
 Check the Platform Vendor string, not the Platform Name, to determine AMD hardware. For
example code that shows how to check and use the CL_PLATFORM_VENDOR string, see the
AMD APP samples.
 Driver support for 7xx generation GPUs is EOL. AMD drivers no longer support 7xx
generation GPUs; this includes support for ATI Radeon™ HD and ATI Mobility Radeon™ HD
4000 series devices, ATI FirePro™ V8750, V8700, V7750, V5700, V2750, ATI Mobility
FirePro™ M7740, and AMD FireStream™ 9270, 9250.
 To develop applications using deprecated OpenCL™ API calls, #define
CL_USE_DEPRECATED_OPENCL_1_1_APIS.
 When parsing #include directives, the OpenCL compiler resolves relative paths using the
current working directory of the application through the -I compiler option.
 Under Windows, making OpenCL runtime calls from dllMain can result in undefined behavior.
 The binary clinfo.exe is located in the \Windows\System32 directory.
 On Linux and Windows platforms, every GPU is assigned an ordinal number. To expose only
a subset of GPUs to a specific application, make the following environmental variable
definition: GPU_DEVICE_ORDINAL=0,1,2 … .
 Support for Microsoft Visual Studio 2008 is deprecated.
 HD4XXX device support is EOL. Catalyst drivers no longer include support for these devices.
See the OpenCL SDK driver and compatibility page for more details.
 See the AMD APP SDK Samples Release Notes for known issues and important notes for
the SDK samples.
 See the CodeXL release notes for known issues and important notes for the SDK samples.
3 Naming Convention
For Windows:
 The __stdcall calling convention is used for all Windows platforms.
 Function names are undecorated.
 It is not possible to use this OpenCL DLL on Windows with an application that was linked
against a library using the __cdecl calling convention.
For Linux:
 The calling convention is __cdecl.
2 of 4
Developer Release Notes
4 Resolved Issues
For the latest information about the resolved issues in AMD APP SDK v3.0 Beta, see the AMD
APP SDK documentation page.
5 Known Issues
For the latest information about the known issues in AMD APP SDK v3.0 Beta, see the AMD
APP SDK documentation page.
5.1 Compiler
 The compiler may accept illegal cast-to-union (GNU GCC Extension) cases. In such cases, a
warning is issued. This may be fixed in a future release.
 If an argument to an OpenCL kernel function is optimized away late in the compilation
process, the compiler may fail to build or produce undefined results. This occurs when either
an argument gets entirely optimized away or when part of an argument gets optimized away.
Part of an argument can get optimized away if two (for 64-bit data types) or four (for all other
types) consecutive components of an argument are not used where the first unused
component is a multiple of 2 or 4.
 The string class in the C++ Wrapper API has been deprecated and its usage is not
recommended.
5.2 Runtime
 The OpenCL runtime currently does not validate handles to OpenCL memory objects.
 On Windows, to prevent long programs from causing a dialog to be displayed indicating that
the display driver has stopped responding, disable the Timeout Detection and Recovery (TDR)
feature, which is trying to detect hangs in graphics hardware. To do this, use regedit.exe to
create the following REG_DWORD entry in the registry, and set its value to 0:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\TdrLevel
This avoids the constant polling by the driver and the kernel to prevent long work units from
monopolizing the device. (To restore default functionality, set the TdrLevel to 3.)
Note that Microsoft strongly discourages disabling this feature, and only recommends doing
so for debugging purposes. Do so at your own risk.
 On Linux platforms, if a kernel deadlocks the GPU, the system becomes unresponsive for a
few minutes, and both the X-window server and the application become defunct processes.
The system must be rebooted in order to use the GPU again.
 If the clGetPlatformIDs() failed error is issued with a properly installed ICD while running
32-bit code on a 64-bit system, ensure that all necessary 32-bit libraries are installed. The
specifics of this vary between Linux distributions; consult your OS documentation for more
information. The libGLU.so library is known to trigger this problem, but there may be others,
depending on the specific installation.
 In Linux for non-Southern_Islands platforms, the OpenCL runtime currently exposes less than
the total amount of memory physically available on the card. In Windows and on Linux or
Southern-Islands-based platforms, the OpenCL runtime reports the total amount of physical
memory for boards with up to 2 GB.
Developer Release Notes
3 of 4
Contact
4 of 4
Advanced Micro Devices, Inc.
One AMD Place
P.O. Box 3453
Sunnyvale, CA, 94088-3453
Phone: +1.408.749.4000
For AMD Accelerated Parallel Processing:
The contents of this document are provided in connection with Advanced
Micro Devices, Inc. (“AMD”) products. AMD makes no representations or
warranties with respect to the accuracy or completeness of the contents of
this publication and reserves the right to make changes to specifications and
product descriptions at any time without notice. The information contained
herein may be of a preliminary or advance nature and is subject to change
without notice. No license, whether express, implied, arising by estoppel or
otherwise, to any intellectual property rights is granted by this publication.
Except as set forth in AMD’s Standard Terms and Conditions of Sale, AMD
assumes no liability whatsoever, and disclaims any express or implied warranty, relating to its products including, but not limited to, the implied warranty of merchantability, fitness for a particular purpose, or infringement of
any intellectual property right.
AMD’s products are not designed, intended, authorized or warranted for use as
components in systems intended for surgical implant into the body, or in other
applications intended to support or sustain life, or in any other application in
which the failure of AMD’s product could create a situation where personal injury,
death, or severe property or environmental damage may occur. AMD reserves
the right to discontinue or make changes to its products at any time without
notice.
Copyright and Trademarks
© 2014 Advanced Micro Devices, Inc. All rights reserved. AMD, the AMD Arrow
logo, ATI, the ATI logo, Radeon, FireStream, and combinations thereof are trademarks of Advanced Micro Devices, Inc. OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos. Other names are for informational purposes only and may be trademarks of their respective owners.
Developer Release Notes
URL:
developer.amd.com/appsdk
Developing: developer.amd.com/
Forum:
developer.amd.com/openclforum